ClickHouse的特点与优势

副本特点

副本机制

ClickHouse利用ZooKeeper,通过ReplicatedMergeTree引擎(Replicated 系列引擎)实现了副本机制。副本机制是多主架构,可以将INSERT语句发送给任意一个副本,其余副本会进行数据的异步复制。

副本机制功能:

  • ClickHouse 副本机制的设计可以最大限度的减少网络数据传输,用以在不同的数据中心进行同步,可以用来建设多数据中心、异地多活的集群架构。
  • 副本机制是实现:高可用(HA)、负载均衡(Load Balance)、迁移/升级(Migration/Upgrade)功能的基础。
  • 高可用:系统会监视副本数据的同步情况,识别故障节点,并在节点恢复正常时进行故障恢复,保证服务整体高可用。
分布式查询

ClickHouse通过分片和分布式表机制提供了线性扩展的能力。

  • 分片机制:用来解决单节点的性能瓶颈,通过将数据进行水平切分,将一张表中的数据拆分到多个节点,不同节点之间的数据没有重复,这样就可以通过增加分片对ClickHouse进行线性扩展。
  • 分布式表:在查询分片的数据时,通过分布式表进行查询,分布式表引擎自身不存储任何数据,仅是一层代理,能够自动路由到集群中的各个分片节点获取数据,即分布式表需要和其他数据表一起协同工作。

如图图1所示,在查询时,我们需要查询分布式表 table_distributed,分布式表会将查询请求自动路由到各个分片节点上,并进行结果的汇聚。

图1分布式查询

MergeTree引擎

MergeTree(合并树)及其系列(*MergeTree)是ClickHouse最强大的存储引擎,被设计用于插入大量数据到一张表中。数据以数据块的形式被快速写入,数据块在后台会进行异步合并,确保高效的插入和查询性能。

主要支持的功能点有:

  • 主键排序、稀疏索引
  • 支持数据分区
  • 支持副本机制 (ReplicatedMergeTree 系列)
  • 支持数据采样
  • 并发数据访问
  • 支持TTL
  • 支持二级索引(Data Skipping Index 跳数索引)
相关推荐
狮歌~资深攻城狮1 天前
ClickHouse和Doris怎么选型
clickhouse
SelectDB技术团队1 天前
Apache Doris 2025 Roadmap:构建 GenAI 时代实时高效统一的数据底座
大数据·数据库·数据仓库·人工智能·ai·数据分析·湖仓一体
weixin_307779131 天前
使用C#实现从Hive的CREATE TABLE语句中提取分区字段名和数据类型
开发语言·数据仓库·hive·c#
墨染丶eye2 天前
数据仓库项目启动与管理
大数据·数据仓库·spark
weixin_307779132 天前
C#实现HiveQL建表语句中特殊数据类型的包裹
开发语言·数据仓库·hive·c#
一个天蝎座 白勺 程序猿3 天前
大数据(4.3)Hive基础查询完全指南:从SELECT到复杂查询的10大核心技巧
数据仓库·hive·hadoop
weixin_307779133 天前
判断HiveQL语句为建表语句的识别函数
开发语言·数据仓库·hive·c#
zhangjin12223 天前
kettle从入门到精通 第九十四课 ETL之kettle MySQL Bulk Loader大批量高性能数据写入
大数据·数据仓库·mysql·etl·kettle实战·kettlel批量插入·kettle mysql
chat2tomorrow4 天前
数据仓库是什么?数据仓库的前世今生 (数据仓库系列一)
大数据·数据库·数据仓库·低代码·华为·spark·sql2api
shouwangV64 天前
hive执行CTAS报错“Hive Runtime Error while processing row”
数据仓库·hive·hadoop