一 压缩方式
IoTDB允许在创建一个时间序列的时候指定该列的压缩方式。
- UNCOMPRESSED(不压缩)
- SNAPPY压缩
- LZ4压缩
- GZIP压
压缩方式(SNAPPY)针对二进制流进行压缩,因此压缩方式的使用不再受数据类型的限制。
二 编码方式
为了提高数据的存储效率,需要在数据写入的过程中对数据进行编码,从而减少磁盘空间的使用量。在写数据以及读数据的过程中都能够减少I/O操作的数据量从而提高性能。IoTDB支持多种针对不同类型的数据的编码方法:
1.PLAIN编码(PLAIN)
PLAIN编码,默认的编码方式,即不编码,支持多种数据类型,压缩和解压缩的时间效率较高,但空间存储效率较低。
2.二阶差分编码(TS_2DIFF)
二阶差分编码,比较适合编码单调递增或者递减的序列数据,不适合编码波动较大的数据。
3.游程编码(RLE)
游程编码,比较适合存储某些整数值连续出现的序列,不适合编码大部分情况下前后值不一样的序列数据。
游程编码也可用于对浮点数进行编码,但在创建时间序列的时候需指定保留小数位数(MAX_POINT_NUMBER,具体指定方式参见本文

IoTDB数据库支持多种数据压缩方式,如SNAPPY、LZ4和GZIP,以及针对不同数据类型的编码策略,如PLAIN、TS_2DIFF、RLE和GORILLA。RLE和TS_2DIFF编码对浮点数有精度限制,推荐使用GORILLA编码以保持高精度。数据类型包括BOOLEAN、INT32、INT64、FLOAT、DOUBLE和TEXT,编码方式的选择需考虑数据特性和效率。对于不匹配的数据类型,系统会提示错误。
最低0.47元/天 解锁文章
2020





