小红花·文摘
  • 首页
  • 广场
  • 排行榜🏆
  • 直播
  • FAQ
Dify.AI

TiFlash通过Raft Learner角色接收TiKV日志,实现行存到列存的转换,保持物理隔离和强一致性。其存储引擎DeltaTree分为Delta和Stable两层,优化写入和读取性能。TiFlash的读路径通过ReadIndex确认复制进度,确保数据一致性。存算分离架构允许独立扩展存储和计算资源,提升查询效率。

【TiKV / HTAP 内核】TiFlash Learner:Raft 日志到列存

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-07-16T00:00:00Z

本文讨论了列存引擎的核心内容,重点分析了ClickHouse和DuckDB的源码,包括列存文件布局、向量化执行、MergeTree机制及分布式协调,旨在帮助数据平台工程师和DBA理解列存的优化与应用。

列存引擎内核 — 系列规划

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-07-11T16:21:07Z

本文探讨了ClickHouse的列存储引擎MergeTree的架构与优势,强调其在OLAP场景下的高效性。列存储通过减少IO、优化压缩和向量化计算,显著提升查询性能。与行存和LSM存储相比,ClickHouse在处理分析负载时表现优越,适合高并发和大数据量的场景。文章还介绍了MergeTree的不同变种及其应用场景,强调了其在数据分析中的重要性。

【列存引擎内核】列存基础与 ClickHouse 架构

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文介绍了ClickHouse的MergeTree引擎及其数据单元Part的结构和功能。Part是不可变的目录,包含列文件和元数据,支持查询、合并和副本同步。文章详细阐述了Part的生命周期、目录结构、Granule和Mark的作用,以及如何通过设置优化性能。同时讨论了Wide与Compact格式的区别,以及Part的管理与维护。

【列存引擎内核】MergeTree Part 文件格式

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文讨论了ClickHouse的列存储压缩技术,包括专用编码(如Delta和Gorilla)与通用压缩(如LZ4和ZSTD)。不同数据类型适用不同的编码策略,压缩效果需通过实测来验证。建议根据数据特征选择合适的CODEC,以优化存储和查询性能。文章还提到与PostgreSQL的对比,以及在高并发环境下的插入策略和性能监控。

【列存引擎内核】压缩与编码

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文探讨了ClickHouse的列存储架构及其向量化执行机制,强调了批量处理的优势。介绍了Block和IProcessor的结构,分析了数据读取、过滤和聚合的过程,并与PostgreSQL的执行器进行了对比,指出ClickHouse在OLAP场景中的高效性和优化设置。

【列存引擎内核】向量化执行引擎

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文讨论了ClickHouse的MergeTree引擎的读路径,重点介绍了如何通过primary.idx和跳数索引来优化查询性能。强调了PREWHERE的使用及其在存储层优先执行的优势,以及并行读取策略。最后,提供了索引类型和优化建议,以提高查询效率。

【列存引擎内核】查询读取路径

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文讨论了ClickHouse中的MergeTree引擎,重点介绍了Part的合并和变更机制。合并通过将小Part归并为大Part来控制读放大,提升查询效率;变更则用于异步更新数据,但需谨慎使用以避免性能问题。文章还提到不同类型的MergeTree(如ReplacingMergeTree和CollapsingMergeTree)及其适用场景,强调了合并和变更的调度与管理。

【列存引擎内核】Merge 与 Mutation

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

ClickHouse 的主键是稀疏排序索引,结合二级跳数索引实现 granule 剪枝。主键需为 ORDER BY 前缀,合理选择排序键可优化索引体积和查询性能。跳数索引类型包括 minmax、set 和 bloom_filter,适用于不同查询场景。设计时应考虑高基数列的索引策略,以提升查询效率。

【列存引擎内核】索引与跳数索引

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文介绍了 ClickHouse 的 ReplicatedMergeTree 引擎及其与协调服务(如 ZooKeeper 和 ClickHouse Keeper)的关系。该引擎通过日志和副本机制实现数据一致性,支持多副本写入和同步。文章详细描述了副本架构、写入与同步过程、恢复机制及其与 Distributed 引擎的关系,强调了系统监控和运维的重要性。

【列存引擎内核】ReplicatedMergeTree

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文讨论了ClickHouse的分布式表引擎,重点介绍了水平分片和跨节点查询的实现。内容包括分片键的选择、INSERT和SELECT的路由机制,以及与PostgreSQL Citus的区别。强调分布式表的主要作用是路由而非存储,并提供了DDL示例和集群配置细节,最后总结了最佳实践和常见反模式。

【列存引擎内核】Distributed 引擎与分布式查询路由

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

ClickHouse 的物化视图(MV)通过每次插入源表的块自动将变换后的数据写入目标表。MV 不存储数据,数据存储在指定的目标表中。创建 MV 时可以选择显式目标表或隐式内表,并支持历史数据回填。MV 的执行路径与资源隔离设计确保高效的数据流处理。选择合适的目标表引擎(如 MergeTree、SummingMergeTree 和 AggregatingMergeTree)至关重要,MV 适合与 Kafka 等流式数据源结合使用,支持高并发数据处理。

【列存引擎内核】物化视图与增量管道

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

DuckDB 是一种嵌入式列向量化分析引擎,适用于单机分析和数据科学。其架构包括 Catalog、Optimizer、Execution 和 Storage,支持 SQL 查询,并能直接处理 Parquet 和 CSV 文件。DuckDB 更适合零运维的嵌入式分析场景,支持 ACID 事务,适合小规模数据分析。

【列存引擎内核】DuckDB 架构与嵌入式 OLAP

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

DuckDB 采用向量批处理和 morsel-driven 并行执行模型,显著提升数据处理效率。在 OLAP 任务中,DuckDB 的表现优于 PostgreSQL 和 ClickHouse,支持动态任务调度和负载均衡。其物理算子通过管道化处理数据,优化哈希连接和聚合操作,优化器通过下推谓词和动态规划提升查询性能。

【列存引擎内核】DuckDB 向量化与 Morsel-Driven Pipeline

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文比较了DuckDB与ClickHouse在OLAP场景中的应用,指出两者适用场景不同。DuckDB适合嵌入式分析和小规模数据,而ClickHouse更适合大规模数据处理和多用户访问。通过决策树,用户可以根据需求选择合适的工具,结合使用可提高效率。

【列存引擎内核】ClickHouse 与 DuckDB 选型决策

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文讨论了ClickHouse的监控与健康检查,强调了system表的重要性。建议监控system.parts、system.merges和system.replicas,以确保数据存储和查询的健康。提供了监控分层结构和常用查询示例,帮助识别潜在问题,如parts过多、merge堵塞和副本延迟,并提到与Prometheus集成的监控方法,以确保系统性能符合SLA要求。

【列存引擎内核】监控与系统表

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文探讨了ClickHouse中常见的列存生产事故,包括“Too many parts”、“Merge跟不上”、“Mutation堆积”、“副本延迟”和“OOM”等问题。针对每个问题,提供了触发条件、系统信号、缓解措施和预防建议,强调了配置和监控的重要性,以确保系统稳定运行。

【列存引擎内核】经典故障模式

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文讨论了ClickHouse的默认设置及其在中等批量OLAP中的应用,特别是与Kafka和ORM的插入方式。重点分析了MergeTree配置、内存与磁盘容量估算、监控及故障模式,并提供了配置层级、插入阈值、合并线程池等设置的详细说明,强调了SSD与HDD的策略差异。最后,提出了容量规划的工作流和配置审查清单,以优化性能和资源使用。

【列存引擎内核】配置陷阱与容量规划

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

本文探讨了ClickHouse与DuckDB的列存引擎,分析了列存文件格式、查询读取路径、MergeTree合并机制及索引特性,旨在帮助数据平台工程师、DBA及嵌入式分析开发者理解列存技术及其在生产环境中的应用与挑战。

【列存引擎内核】ClickHouse 与 DuckDB 源码级拆解

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-18T00:00:00Z

OpenGaussDB的Cstore列存引擎适合OLAP分析和AI训练数据存储,用户可通过实践学习开发AI服务Dify,掌握列式存储表的使用。该引擎在数据压缩和查询性能上优于行存储,适合大数据分析。DataVec向量数据库则提供高效的向量数据存储与检索,支持智能应用场景。

基于开发者空间OpenGauss数据库列存引擎的分析与使用

华为云官方博客
华为云官方博客 · 2025-08-14T07:07:52Z
  • <<
  • <
  • 1 (current)
  • 2
  • >
  • >>
👤 个人中心
在公众号发送验证码完成验证
登录验证
在本设备完成一次验证即可继续使用

完成下面两步后,将自动完成登录并继续当前操作。

1 关注公众号
小红花技术领袖公众号二维码
小红花技术领袖
如果当前 App 无法识别二维码,请在微信搜索并关注该公众号
2 发送验证码
在公众号对话中发送下面 4 位验证码
小红花技术领袖俱乐部
小红花·文摘:汇聚分发优质内容
小红花技术领袖俱乐部
Copyright © 2021-
粤ICP备2022094092号-1
公众号 小红花技术领袖俱乐部公众号二维码
视频号 小红花技术领袖俱乐部视频号二维码