为了节省硬盘空间,我们可以把表压缩保存。DolphinDB使用LZ4算法进行数据压缩。LZ4具有极快的压缩/解压速度和合理的压缩比率。
在以下例子中,把表t保存为未压缩表t1和压缩表t3:
db=database("C:/DolphinDB/Data/db1")
n=10000000
t=table(take(1..10000, n).sort() as id, take(2000.12.31+1..1000, n) as date, rand(10, n) as x, rand(10.0, n) as y)
saveTable(db, t, `t1)
saveTable(db, t, `t3, 0, 1); // appending mode is off; compression mode is on.
比较压缩前后每列的大小:
如果我们压缩保存文件“USstocks”,文件的大小从3.56G减少到897MB。
USstocks = ploadText("c:/DolphinDB/Data/USstocks.csv")
saveTable(db, USstocks, `USstocks1)
saveTable(db, USstocks, `USstocks2, 0, 1); // appending mode is off; compression mode is on.