Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
boolean serializeStatistic = (chunkMetadataList.size() > 1);


(3)chunk header中保存的header信息如下:(3)Timeseries metadata中保存的信息如下:

Code Block
byte markertimeSeriesMetadataType;
String sensor_namemeasurementID; // can remove
varInt chunkMetaDataListDataSize;


chunk header中保存的header信息如下:

Code Block
byte marker;
varInt data_size;
byte datatype;
byte compressionType;
byte encoding type

...

Code Block
varInt uncompressed_size;
varInt compressed_size;

观察可知两者的header并不冲突,合并并不能节省空间

观察可知三者的header并不冲突,合并并不能节省空间


综上所述,目前的tsfile对于单chunk单page已经做了元数据去冗余的优化,本设计没必要合并Page和Chunk,但Timeseries metadata中保存了一份额外的measurement ID信息,这个信息完全可以从Timeseries index tree中读到,所以可以删除综上所述,目前的tsfile对于单chunk单page已经做了元数据去冗余的优化,本设计没必要合并Page和Chunk


去除统计信息



实验

实验场景

模拟海量时间序列一次刷盘1%的数据量,即100万时间序列,其中有1万个设备,每个设备下有100个工况,每条时间序列写10个点,生成tsfile

...