ToB企服应用市场:ToB评测及商务社交产业平台

标题: ClickHouse(15)ClickHouse合并树MergeTree家族表引擎之GraphiteMergeTree详 [打印本页]

作者: 种地    时间: 2023-9-29 16:01
标题: ClickHouse(15)ClickHouse合并树MergeTree家族表引擎之GraphiteMergeTree详
GraphiteMergeTree该引擎用来对Graphite数据(图数据)进行瘦身及汇总。对于想使用ClickHouse来存储Graphite数据的开发者来说可能有用。
如果不需要对Graphite数据做汇总,那么可以使用任意的ClickHouse表引擎;但若需要,那就采用GraphiteMergeTree引擎。它能减少存储空间,同时能提高Graphite数据的查询效率。
该引擎继承自MergeTree.
创建表
  1. CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
  2. (
  3.     Path String,
  4.     Time DateTime,
  5.     Value <Numeric_type>,
  6.     Version <Numeric_type>
  7.     ...
  8. ) ENGINE = GraphiteMergeTree(config_section)
  9. [PARTITION BY expr]
  10. [ORDER BY expr]
  11. [SAMPLE BY expr]
  12. [SETTINGS name=value, ...]
复制代码
含有Graphite数据集的表应该包含以下的数据列:
ClickHouse以最大的版本号保存行记录,若版本号相同,保留最后写入的数据。
以上列必须设置在汇总参数配置中。
GraphiteMergeTree参数
建表语句

在创建GraphiteMergeTree表时,需要采用和clauses相同的语句,就像创建MergeTree一样。
汇总配置的参数

汇总的配置参数由服务器配置的graphite_rollup参数定义。参数名称可以是任意的。允许为多个不同表创建多组配置并使用。
汇总配置的结构如下: 所需的列模式Patterns
所需的列

模式Patterns

patterns 的结构:
  1. pattern
  2.     regexp
  3.     function
  4. pattern
  5.     regexp
  6.     age + precision
  7.     ...
  8. pattern
  9.     regexp
  10.     function
  11.     age + precision
  12.     ...
  13. pattern
  14.     ...
  15. default
  16.     function
  17.     age + precision
  18.     ...
复制代码
!!! 注意 "Attention" 模式必须严格按顺序配置:
ClickHouse在处理行记录时,会检查pattern节点的规则。每个pattern(含default)节点可以包含function用于聚合操作,或retention参数,或者两者都有。如果指标名称和regexp相匹配,相应pattern的规则会生效;否则,使用default节点的规则。
pattern和default节点的字段设置:

配置示例
  1. <graphite_rollup>
  2.     <version_column_name>Version</version_column_name>
  3.     <pattern>
  4.         <regexp>click_cost</regexp>
  5.         <function>any</function>
  6.         <retention>
  7.             <age>0</age>
  8.             <precision>5</precision>
  9.         </retention>
  10.         <retention>
  11.             <age>86400</age>
  12.             <precision>60</precision>
  13.         </retention>
  14.     </pattern>
  15.     <default>
  16.         <function>max</function>
  17.         <retention>
  18.             <age>0</age>
  19.             <precision>60</precision>
  20.         </retention>
  21.         <retention>
  22.             <age>3600</age>
  23.             <precision>300</precision>
  24.         </retention>
  25.         <retention>
  26.             <age>86400</age>
  27.             <precision>3600</precision>
  28.         </retention>
  29.     </default>
  30. </graphite_rollup>
复制代码
资料分享

ClickHouse经典中文文档分享
参考文章


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4