注意 TSDB 是每批刷盘的数据会按照 sortColumns 排序。查询时,只保证单个 Level File 内的数据是有序的,Level File 之间的数据顺序不能保证。排序键设置的目的是为了去重,如果要尽量有序可以尝试通过调用 triggerTSDBCompaction 函数手动触发 level file 文件的合并。
代码如下:
为了测试sortColumns = [symbol, time]是否有效,我的time取的是now()+随机的秒数;symbol是2个symbol中随机选一个。输出结果如下。可以看到output的table中symbol是排序好的,但是时间并没有排序好。
请问这是为什么? 是tsdb的原因,还是tableInsert,还是python_api等?请麻烦告诉我如何才能正确的排序。