当前位置:首页 > 报告详情

ClickHouse 在头条的技术演进.pdf

上传人: li 编号:29774 2021-02-07 36页 3.36MB

1、ClickHouse 在头条内部技术演化 陈星 自我介绍 自我介绍 - 10 year in database kernel(OLAP, warehouse) RD - Worked on DB2 LUW, DB2 BLU(dashDB), BigSQL(SQL on Hadoop) - 1+ years in Bytedance, and incubate ClickHouse development and deployment there 目录 1. ClickHouse 简介 2. Bytedance 如何使用ClickHouse 3. 问题与解决方案 4. Q&A 1. Develo

2、ped by Yandex, and open source since 2016 2. 查询性能优越的分析型引擎 3. 主要特点(not new) - Column oriented + vector execution - Local attached storage (not Hadoop ecosystem) - Linear scalable & Reliable(shard + replication) - SQL interface - Fast ClickHouse 简介 1. Data Skipping - 分区以及分区剪枝 - 数据局部有序(LSM-like engine,

3、 zone map) 2. 资源的垂直整合 - 并发 MPP+ SMP(plan level) - Tuned执行层实现 (multi-variant agg implementation, SIMD) 3. C+ Template Code ClickHouse 简介 - 性能优越的因素 1. 适用场景 - 单表分析 或 colocate join case - distributed join 性能并不出色 2. 不足 - no transaction - batch data ingest - weak update/delete support - weak optimizer & query rewrite ClickHouse 简介 - 适用场景与不足 1. 选择ClickHouse的原因 产品需求 - 交互式分析能力 (in seconds) - 查询模式多变 - 以大宽表为

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
ClickHouse是一种由Yandex开发并于2016年开源的分析型数据库引擎,特别适用于在线分析处理(OLAP)和数据仓库场景。它的核心特性包括列式存储、向量执行、本地附加存储、线性可扩展性和可靠性(通过分区和副本实现)。ClickHouse以其优越的查询性能和SQL接口而闻名,适用于需要快速交互式分析的大宽表场景。 字节跳动(ByteDance)在使用ClickHouse方面取得了显著成就,运行着拥有数千个节点的集群,最大集群达到1200个节点,数据总量约几十PB,日增数据约100TB。其查询响应时间大多数在毫秒到30秒之间,服务于产品运营、分析师、开发人员以及广告类用户等多个部门。 字节跳动面临的问题和解决方案包括:提高HDFS数据访问能力、维护ETL服务的外部事务以保证数据一致性、优化数据构建与查询分离、处理动态Schema的Map类型数据、以及改进高数据量下的高可用性。特别是,他们开发了不依赖ZooKeeper的High Availability方案,并优化了String类型和Array类型的数据处理效率。 针对特定场景,字节跳动实施了步骤化聚合(Step-ed Aggregation)来降低内存使用和避免OutOfMemory(OOM)问题,并利用布隆过滤器(BloomFilter)和位图索引(BitMap index)来优化Array类型的查询。此外,他们还在开发中的Kafka引擎中支持轻量级的更新/删除操作,并探索多尺度分区以解决小文件读取问题。 总结来说,字节跳动在ClickHouse的内部技术演化方面取得了显著进展,不断优化性能和扩展性,同时简化运维并支持复杂的数据处理需求。
"ClickHouse如何优化大数据查询性能?" "Bytedance如何利用ClickHouse进行数据分析?" "ClickHouse在高可用性方面有哪些解决方案?"
客服
商务合作
小程序
服务号
折叠