gnocchi是用于多租时间序列聚合处理的数据库。可用于进行时间序列聚合,统计处理。
1目录概要介绍
gnocchi下面主要包括etc目录,gnocchi目录,setup.cfg文件,setup.py文件。
在gnocchi目录下主要包括:aggregates目录,indexer目录,rest目录,storage目录,
__init__.py,arrchive_policy.py,carbonara.py,cli.py,opts.py,service.py,statsd.py。
2gnocchi下非目录文件介绍
__init__.py:空文件
arrchive_policy.py:主要定义了low,medium.high默认归档策略,归档策略(名称,回退窗口,定义,聚集方法列表),归档策略条目(粒度,点的个数,时间跨度)
carbonara.py:包含TimeSerie类(时间序列,本质是映射,可排序,去除重复索引),BoundTimeSerie(继承TimeSerie类,设置每次处理的metric大小),AggregatedTimeSerie(继承自TimeSerie,该类重要,包含update函数外部传入近来的时间序列(映射),和当前已经存在的时间序列做运算,以及_resample函数,通过采样来分组,并应用聚集方法到点的集合中, 生成再次聚集后的时间序列),TimeSerieArchive
cli.py:重要,包含了数据库生成的入口方法upgrade(),api入口方法api(),statsd入口方法statsd(),
聚合和统计的入口方法metricd(),重要。