ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ......

45
ClickHouse 如何玩转时序数据 张健

Transcript of ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ......

Page 1: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

ClickHouse 如何玩转时序数据

张 健

Page 2: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

关于我

业务层CURD 中间件 数据库

(数据库研发组)

https://www.github.com/zhang2014

Page 3: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

► 青云QingCloud 总览

► 为什么选择ClickHouse

► 如何利用ClickHouse进行时序场景分析

► ClickHouse原理揭秘

► 未来展望

目录

Page 4: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

s

13 个自营数据中心

17 个合作数据中心

30云服务数据中心

(自营+合营)全栈云 ICT 产品品牌

9W+企业级客户

9

10.8亿D 轮融资

5

1

上海1区

广东1区

广东2区2

亚太1区

北京1区

北京2区

北京3区

2

亚太2区

技术领先且中立的

企业级全栈云 ICT 服务商

Page 5: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

青云QingCloud 之最QINGCLOUD HIGHLIGHTS

01

04

07

敏捷

全球首家实现资源秒级响应和按

秒计费的云服务商

智能

全球首家通过 P2P 机器人社区

实现智能资源调度、高度自动化

运维、故障无害的云计算服务商

高效

单一服务器上的虚拟机数量国内

最大

02

05

安全

国内首家提供 VPC (虚拟私有

云)服务、强调公有云租户间

100% 二层网络隔离的云服务商

全面

国内唯一一家在公有云和私有云

市场均具有领先优势和快速增长

势头的中立的云计算服务商

08盈利

全球最快实现盈利的云计算服务

03

06

网络

全球首家将 SDN(软件定义网

络)技术应用于云平台业务的云

服务商

规模

通过同一套软件系统管理的跨地

理区域数据中心数量国内最大

09融资

D 轮融资金额创国内云计算领

域单笔财务性融资金额记录

Page 6: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

9 大品牌全面覆盖全栈云 ICT 业务

PRODUCT BRANDS

Page 7: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

云服务租用

云平台建设

云架构咨询

公有云

QingCloud.com

1

QingCloud OS

混合云私有云

一致的平台

2 3

托管云4

“公、私、混、托” 全业务形态OMNI-TYPE SERVICES DELIVERY

一朵云、一套核心架构、完全一致的代码交付「」

Page 8: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

一站式混合云接入基础设施与

骨干网

计算 存储 网络与CDN

QingCloud基础资源平台

虚拟主机

映像

物理主机

GPU 主机 专属宿主机

块存储

对象存储

备份

企业级分布式 SAN

文件存储 内网域名网络流量镜像

QingCloud AppCenter

应用平台

数据库与中间件

关系型数据库MySQL Plus &

PostgreSQL

非关系型数据库Mongo DB

缓存服务Redis & Memcached

分布式关系型数据库RadonDB

其他应用

DevOps

安全管理

企业管理

区块链 Blockchain

行业增值

SD-WAN

运维与监控安全与权限

定时器

自动伸缩

标签

操作日志

回收站

移动控制台

监控告警

服务健康状态监控

资源编排

API

子账户管理

资源协作

账户安全

防火墙

DDoS攻击防护

WAF

服务编排

SSH 密钥

Note: 即将推出

大数据平台

Spark

Hadoop

Storm

HBase

ELK

ZooKeeper

QingMR

Kafka

数据仓库HashData

AppCenter 合作伙伴应用

人工智能 AI

深度学习框架

智能问答机器人

商业机器学习框架

人脸识别

语音识别

证件识别

主机防护

堡垒机

数据库审计

安全扫描

托管云

容器平台

Kubernetes

Harbor

etcd

公有镜像仓库

Rancher

Tomcat

队列服务RabbitMQ

物联网 IoT

物联网硬件开发平台

物联网消息平台

物联网场景化开发平台

专属私有网络 VPC

弹性公网 IP

负载均衡

SDN 网络直通

P2P CDNCDN

容器

QingCloud Container Service (QCS)

Powered by KubeSphere

QingCloud Kubernetes Service (QKS)

Powered by KubeSphere

完善的产品和服务架构 – 公有云PUBLIC CLOUD PORTFOLIO

Page 9: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

一站式混合云接入基础设施及骨干网

AppCenter应用中心

解决方案软件定义数据中心 企业数字化转型 大数据 数据灾备 物联网 区块链 数据处理计算

证券银行 保险 政府 医疗 教育

通用解决方案

行业解决方案

QingCloud 原生应用

(数据库、大数据、容器服务及中间件)

云平台

多云平台支持,资源层中立 多应用类型支持

容器云

软件定义存储

托管云

第三方应用接入(行业增值、人工智能、物联网……)

容器管理平台超融合系统

QingCloud 云平台(易捷版 Express、标准版

、高级版、企业版)

青立方Qing3 超融合系统(易捷版 Express、标准版

、高级版、企业版)

QingStorTM 对象存储

QingStorTM 对象存储一体机

QingStorTM

NeonSAN

QingStorTM

NeonSAN一体机

QingStorTM 文件存储

QingStorTM 文件存储一体机

KubeSphere(社区版、易捷版、高级版)

KubeSphere 一体机

多云应用管理平台应用打包

IaaS

应用部署 全生命周期管理

企业云盘

SD-WAN

统一多云管理平台

VMware 纳管

多云管理

服务目录

资产管理

审批管理

权限及账户管理

完善的产品和服务架构 – 企业云PUBLIC CLOUD PORTFOLIO

Page 10: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

POWERING INNOVATION OF MORE THAN 90,000 ENTERPRISES

帮助逾 90,000家企业实现数字化创新与转型

Page 11: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

为什么选择ClickHouse——从需求出发

Page 12: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

► 基础运营情况分析监控(计费/计量情况)

► 大量的IOT设备接入数据分析监控(物联网的爆发)

► 大量设备的监控信息实时处理(应对与应用开发者, 查询模式不定

)

项目需求

Page 13: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

► 基础运营情况分析监控(计费/计量情况)

► 大量的IOT设备接入数据分析监控(物联网的爆发)

► 大量设备的监控信息实时处理(应对与应用开发者, 查询模式不定

)

项目需求

能够处理海量时间序列数据的数据库产品

Page 14: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

现有的一些时序数据库

Page 15: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

为什么不选择它们

Page 16: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

生态环境

时间序列数据库

Hadoop生态 自有生态

Druid OpenTSDB InfluxDB Prometheus TimescaleDB

Page 17: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

存储结构

时间序列数据库

时间线存储 其他类存储

DruidOpenTSDBInfluxDB Prometheus TimescaleDB

Page 18: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

时间线存储

tag_user_name tag_user_age… tag_user_height metric_name 0 1 2 … 3600

ZhangSan 27 … 175 heart ratevalue

0

value

1value2…

value

3600

ZhangSan 27 … 175 blood pressurevalue

0

value

1value2…

value

3600

Li Si 25 … 180 heart ratevalue

0

value

1value2…

value

3600

Li Si 25 … 180 blood pressurevalue

0

value

1value2…

value

3600

Page 19: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

► 提升了值的聚合计算的并行度

► 查询指定时间线能够达到最高效率

► 可以使用更佳符号时序特征的压缩(Gorilla)

► 可以有效的降低Tag数据的体积(Tag的体积通常最大)

时间线存储的优势

Page 20: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

► 存在高基问题

► 提高了数据的维度

► 多维度多值支持困难

► 提升值计算的并行度不等于高效

► 值的存储方式注定无法高效完成复杂计算

► 应对RollUp操作时会带来时间线对齐问题

► 时间线写入需要进行预处理, 等待其他时间点的到来, 如果数据乱序则处理成本巨大

时间线存储的略势

Page 21: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

其他类存储—Druid

Page 22: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

其他类存储—Druid

Page 23: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

► 支持多维多值

► 更适合数据的冷热处理

► 列式处理, 有效的提升了聚合的性能

Druid存储的优势

Page 24: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

► 需要明确的Schema定义

► 无法使用更加高效符合时序的压缩

► Tag数据的冗余存储, 提高了存储成本

► 但使用局部字典编码有效的缓解了该问题

► 针对时间线查找不如时间线存储的方式

► 但使用bitmap索引有效的缓解了该问题

Druid存储的略势

Page 25: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

为什么不选择Druid

Page 26: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

生态环境

时间序列数据库

Hadoop生态 自有生态

Druid OpenTSDB InfluxDB Prometheus TimescaleDB

Page 27: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领
Page 28: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

如何利用ClickHouse进行时序分析

Page 29: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

俄罗斯巨头Yandex开源

OLAPSQL

异步复制

列式存储PB级别

最终一致丰富的统计函数

高效的压缩

支持集群

超高性能 线性扩展

跨数据中心

部署简单

无其他依赖

Page 30: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

哪些人在使用它

Page 31: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领
Page 32: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

同程艺龙

► 用户行为跟踪

► 百亿数据规模量级

► 各类复杂用户画像

► 漏斗、留存等复杂分析需求

Page 33: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

新浪

► 应用性能监控

► 实时告警检测

► 千亿数据规模量级

► 全链路监控追踪分析

Page 34: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

虎牙直播

► 应用性能监控

► 实时告警检测

► 万亿数据规模量级

► 高速的实时写入(2000W/S)

Page 35: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

Live Code

Page 36: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

ClickHouse原理揭秘

Page 37: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

数据的写入

Part 1

Part 1

Part 1

Part 2

Part 2

Part 2

Part 3

Part 3

Part 3

Page 38: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

数据的写入

Part

Block 1 (0~8192 Row)

Block 2 (8192~16384 Row)

Block 3 (16384~24576 Row)

Block 4(16384~32768 Row)

Row 0 Primary

Columns Value

Row 8192 Primary

Columns Value

Row 16384 Primary

Columns Value

Page 39: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

数据的写入

Block

Column 1

0 ~ 8192 Rows Data

Column 2

0~8192 Row Data

Column 3

0~8192 Row Data

Column 4

0~8192 Row Data

Page 40: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

数据的读取

Join Table

Group By

Order By

Projection

Return

RowsArray

Return

RowsArray

Return

RowsArray

Get RowsArray

Get RowsArray

Get RowsArray

SELECT

column_a, column_b

FROM table_a

LEFT JOIN table_b

ON table_a.column_c = table_b.column_c

GROUP BY column_d

ORDER BY column_e DESC LIMIT 10

Page 41: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

未来展望

Page 42: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

未来展望

► 支持Json数据类型

► 支持基于Roaring Bitmap的Bitmap索引

► 兼容各类开源时序数据库协议(如 OpenTSDB、Druid)

Page 43: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

填小问卷 免费领 多重豪礼

本次调查您将获得:

⚫QingCloud 现场派发的精美小礼品一份(凭提交成功序号到展台

领取)

⚫总额为 320-650元 QingCloud 产品体验券(新注册用户需完成认

证,系统自动下发)

⚫QingCloud 数据库专家 活动演讲PPT分享(会后下发至您邮箱)

⚫QingCloud 数据库相关技术文章分享(邮件形式)

礼品数量有限,先到先得!

Page 44: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

Q & A

Page 45: ClickHouse 如何玩转时序数据 › assets › uploads...SSH 密钥 Note: 即将推出 ... 兼容各类开源时序数据库协议(如 OpenTSDB、Druid) 填小问卷 免费领

Thank you.