我有一个SQL表,其中有773,705,261行的SQL表。我想创建一个归档表来存档数据,但是我想减少这些数据所需的空间。访问归档数据的速度并不是主要关心的问题,但总是需要。在SQL Server中为归档表节省空间
当前表的定义是这样的:
TableID (PK) BIGINT NOT NULL
DocumentID (FK) BIGINT NOT NULL
StatusID (FK) INT NOT NULL
RowCreateDate DATETIME NOT NULL
随着我的计算,当前的表使用每行28个字节的表格。问题在于,对于每个DocumentID,它可能在此表中有6-10行(每个DocumentID的行数可能会增长),具体取决于系统处理的状态数量。
我首先想到的减少存储这些数据所需的空间量是每个DocumentID有1行,并且有一个XML字段包含它们发生的所有StatusID和时间。这样的事情:
TableID (PK) BIGINT NOT NULL
DocumentID (FK) BIGINT NOT NULL
Statuses XML NOT NULL
有没有人对我有任何建议?我可以研究的任何方法?