码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ClickHouse(15)ClickHouse合并树MergeTree家族表引擎之GraphiteMergeTree详细解析


    GraphiteMergeTree该引擎用来对Graphite数据(图数据)进行瘦身及汇总。对于想使用ClickHouse来存储Graphite数据的开发者来说可能有用。

    如果不需要对Graphite数据做汇总,那么可以使用任意的ClickHouse表引擎;但若需要,那就采用GraphiteMergeTree引擎。它能减少存储空间,同时能提高Graphite数据的查询效率。

    该引擎继承自MergeTree.

    创建表

    CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
    (
        Path String,
        Time DateTime,
        Value <Numeric_type>,
        Version <Numeric_type>
        ...
    ) ENGINE = GraphiteMergeTree(config_section)
    [PARTITION BY expr]
    [ORDER BY expr]
    [SAMPLE BY expr]
    [SETTINGS name=value, ...]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    含有Graphite数据集的表应该包含以下的数据列:

    • 指标名称(Graphite sensor),数据类型:String
    • 指标的时间度量,数据类型:DateTime
    • 指标的值,数据类型:任意数值类型
    • 指标的版本号,数据类型:任意数值类型

    ClickHouse以最大的版本号保存行记录,若版本号相同,保留最后写入的数据。

    以上列必须设置在汇总参数配置中。

    GraphiteMergeTree参数

    • config_section - 配置文件中标识汇总规则的节点名称

    建表语句

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

    汇总配置的参数

    汇总的配置参数由服务器配置的graphite_rollup参数定义。参数名称可以是任意的。允许为多个不同表创建多组配置并使用。

    汇总配置的结构如下: 所需的列模式Patterns

    所需的列

    • path_column_name — 保存指标名称的列名 (Graphite sensor). 默认值: Path.
    • time_column_name — 保存指标时间度量的列名. Default value: Time.
    • value_column_name — The name of the column storing the value of the metric at the time set * in time_column_name.默认值: Value.
    • version_column_name - 保存指标的版本号列. 默认值: Timestamp.

    模式Patterns

    patterns 的结构:

    pattern
        regexp
        function
    pattern
        regexp
        age + precision
        ...
    pattern
        regexp
        function
        age + precision
        ...
    pattern
        ...
    default
        function
        age + precision
        ...
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    !!! 注意 “Attention” 模式必须严格按顺序配置:

    1. 不含’function’ or 'retention’的Patterns
    2. 同时含有’function’ and 'retention’的Patterns
    3. 'default’的Patterns.

    ClickHouse在处理行记录时,会检查pattern节点的规则。每个pattern(含default)节点可以包含function用于聚合操作,或retention参数,或者两者都有。如果指标名称和regexp相匹配,相应pattern的规则会生效;否则,使用default节点的规则。

    pattern和default节点的字段设置:

    • regexp– 指标名的pattern.
    • age – 数据的最小存活时间(按秒算).
    • precision– 按秒来衡量数据存活时间时的精确程度. 必须能被86400整除 (一天的秒数).
    • function – 对于存活时间在 [age, age + precision]之内的数据,需要使用的聚合函数

    配置示例

    <graphite_rollup>
        <version_column_name>Versionversion_column_name>
        <pattern>
            <regexp>click_costregexp>
            <function>anyfunction>
            <retention>
                <age>0age>
                <precision>5precision>
            retention>
            <retention>
                <age>86400age>
                <precision>60precision>
            retention>
        pattern>
        <default>
            <function>maxfunction>
            <retention>
                <age>0age>
                <precision>60precision>
            retention>
            <retention>
                <age>3600age>
                <precision>300precision>
            retention>
            <retention>
                <age>86400age>
                <precision>3600precision>
            retention>
        default>
    graphite_rollup>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30

    资料分享

    ClickHouse经典中文文档分享

    参考文章

    • ClickHouse(01)什么是ClickHouse,ClickHouse适用于什么场景
    • ClickHouse(02)ClickHouse架构设计介绍概述与ClickHouse数据分片设计
    • ClickHouse(03)ClickHouse怎么安装和部署
    • ClickHouse(04)如何搭建ClickHouse集群
    • ClickHouse(05)ClickHouse数据类型详解
    • ClickHouse(06)ClickHouse建表语句DDL详细解析
    • ClickHouse(07)ClickHouse数据库引擎解析
    • ClickHouse(08)ClickHouse表引擎概况
    • ClickHouse(09)ClickHouse合并树MergeTree家族表引擎之MergeTree详细解析
    • ClickHouse(10)ClickHouse合并树MergeTree家族表引擎之ReplacingMergeTree详细解析
    • ClickHouse(11)ClickHouse合并树MergeTree家族表引擎之SummingMergeTree详细解析
    • ClickHouse(12)ClickHouse合并树MergeTree家族表引擎之AggregatingMergeTree详细解析
    • ClickHouse(13)ClickHouse合并树MergeTree家族表引擎之CollapsingMergeTree详细解析
    • ClickHouse(14)ClickHouse合并树MergeTree家族表引擎之VersionedCollapsingMergeTree详细解析
  • 相关阅读:
    【文末赠书】SRE求职必会 —— 可观测性平台&可观测性工程(Observability Engineering)
    Oracle 11g+windows 环境下Ecology7系统安装
    LeetCode 第299次周赛 第4题 从树中删除边的最小分数
    GO 调用 python3 (基于ubuntu) 实现人脸识别
    啦啦啦~我是快乐的算法工程师~
    产品经理这个背锅侠
    Kafka 在分布式系统中的 7 大应用场景
    acwing1291题解(约数)
    俄罗斯postgresql公司PostgresPro新书:PG14技术内幕
    ChatGPT Plugin开发setup - Java(Spring Boot) Python(fastapi)
  • 原文地址:https://blog.csdn.net/u014470784/article/details/133144671
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号