Versions Compared

Key

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

...

  • double TIME_INDEX_MEMORY_THRESHOLD:TimeIndex可使用的内存总量,值为allocateMemoryForRead * time_index_memory_proportion,当TimeIndex的内存使用量超过该值时触发索引降级

  • ExecutorService downgradeThreadPool:用于执行TimeIndex降级任务的线程池

  • PriorityQueue<TsFileResource> sealedTimeIndex:维护所有已封口的ITimeIndex,按照降级优先级从高到低排列Map<ITimeIndex, TsFileResource> timeIndexTsFileResourceMap:维护ITimeIndex与TsFileResource的映射关系sealedTimeIndex:维护所有已封口的TsFileResoruce,按照TimeIndex降级的优先级从高到低排序

  • long totalTimeIndexMemCost:所有TimeIndex占用的内存总量(非精确值,只计入封口文件的TimeIndex大小)totalTimeIndexMemCost:所有已封口的TimeIndex占用的内存总量(非精确值,只计入封口文件的TimeIndex大小),当该值超过TIME_INDEX_MEMORY_THRESHOLD时触发索引降级









三、详细设计