《专场17.4-Databend 基于对象存储构建实时云原生数仓-张雁飞.pdf》由会员分享,可在线阅读,更多相关《专场17.4-Databend 基于对象存储构建实时云原生数仓-张雁飞.pdf(42页珍藏版)》请在三个皮匠报告上搜索。
1、DatabendA modern warehouse with Rust for your massive-scale analyticshttps:/ and Data Warehouse OLTPHigh concurrencyLow latencyRow-orientedResource isolation?Duplicate data?Row+Column-orientedComplex queryQuery speedColumn-orientedMySQL etc.ClickHouse etc.HTAPOLAP大数据分析遇到了什么”新”问题?传统数仓为什么无法解决这些“新”问题?新
2、一代实时弹性数仓如何设计?使用 Rust 从 0 到 1 研发一款数仓是种什么体验?大大纲纲Bohu TANG(张雁飞)Co-Creator of Databend:https:/ and MySQL(TokuDB)重度贡献者Database Kernel|Distributed Database|Data Warehousehttps:/bohutang.me/当今当今(2022)大数据新大数据新问题问题 01 全球数据指数全球数据指数级级增增长长1024PB=1EB,1024EB=1ZB大数据量下的资源利用率问题,50%物理资源常驻问题大数据分析,波峰、波谷问题当今大数据新当今大数据新问题
3、问题 1大数据量下的存储成本问题PB 级数据,每月存储成本百万美金!当今大数据新当今大数据新问题问题 2大数据量下的计算成本问题对扫描数据量要求非常高,容易破产当今大数据新当今大数据新问题问题 3大数据量下的数据平台复杂度越来越高当今大数据新当今大数据新问题问题 4(From a16z)传统传统数数仓仓架构架构 vs.弹弹性数性数仓仓架构架构 02Shared-Nothing 存储、计算一体资源控制粒度粗8CPU*16G8CPU*16G8CPU*16GStorage 1TBStorage 1TBStorage 1TB传统传统数数仓仓架构架构Shared-Nothing 存储、计算一体资源控制粒
4、度粗传统传统数数仓仓架构架构8CPU*16G8CPU*16G8CPU*16G8CPU*16GStorage 1TBStorage 1TBStorage 1TBStorage 1TB传统传统数数仓仓架构架构Shared-Nothing-弱弹性 存储、计算一体-弱弹性资源控制粒度粗-成本高成本(高)=Resource*TimeShared-Storage(Amazon S3,Azure Blob)真正存储、计算分离 实时弹性扩容和缩容资源控制粒度细8CPU*16GReporting4CPU*8GLoading2CPU*4GDashboard 新一代新一代弹弹性数性数仓仓架构架构AWS S3,Azu
5、re Blob,Google GCS,阿里云 OSS,腾讯云 COS,华为云 OBS,IPFS Shared-Storage(Amazon S3,Azure Blob)真正存储、计算分离 实时弹性扩容和缩容资源控制粒度细8CPU*16GReporting4CPU*8GLoading2CPU*4GDashboard 2CPU*4GDev Scale(in seconds)AWS S3,Azure Blob,Google GCS,阿里云 OSS,腾讯云 COS,华为云 OBS,IPFS 新一代新一代弹弹性数性数仓仓架构架构Shared-Storage(Amazon S3,Azure Blob)真正
6、存储、计算分离 实时弹性扩容和缩容资源控制粒度细8CPU*16GReporting2CPU*4GDashboard 2CPU*4GDev 4CPU*8GLoadingAuto suspend(in seconds)Scale(in seconds)AWS S3,Azure Blob,Google GCS,阿里云 OSS,腾讯云 COS,华为云 OBS,IPFS 新一代新一代弹弹性数性数仓仓架构架构Shared-Storage(Amazon S3,Azure Blob)-高弹性真正存储、计算分离-高弹性实时弹性扩容和缩容-高弹性资源控制粒度细-成本低成本(低)=Resource*Time新一代新
7、一代弹弹性数性数仓仓架构架构Databend 新一代新一代实时弹实时弹性架构性架构设计设计 03OS Warehouse向量化计算,细节优化到位Pipeline 处理器和调度器MergeTree 列式存储引擎单机性能非常强悍缺点:分布式能力较弱,运维复杂度高ClickHouse Group By 为什么这么快:https:/bohutang.me/2021/01/21/clickhouse-and-friends-groupby/ClickHouse Pipeline 处理器和调度器:https:/bohutang.me/2020/06/11/clickhouse-and-friends-pr
8、ocessor/ClickHouse 存储引擎技术进化与MergeTree:https:/bohutang.me/2020/06/20/clickhouse-and-friends-merge-tree-algo/ClickHouseCloud Warehouse多租户,存储、计算分离基于对象存储便宜介质弹性能力非常强悍缺点:单机性能一般,重度依赖分布式Snowflake借鉴 ClickHouse 向量化计算,提升单机计算性能借鉴 Snowflake 存储、计算分离思想,提升分布式计算能力借鉴 Git,MVCC 列式存储引擎,Insert/Read/Delete/Update(WIP)高弹性+
9、强分布式,致力于解决大数据分析成本成本和复复杂杂度度问题基于便宜的对象存储也能方便的做实时性分析完全使用 Rust 研发(30w+loc),Day1 在 Github 开源Databend=ClickHouse+Snowflake+Rust计算层做到高弹性,计算的状态如何管理?对象存储不是为数据库而设计,高延迟和高性能如何平衡?如何让系统更加智能,根据查询模式自动创建索引?如何面向 Warehouse+Datalake 需求设计?挑挑战战 ParserSQL Query Optimizer Executor Storage Catalog单单机功能模机功能模块块Meta Services(Us
10、er/Schema)Metadata Security TransactionCompute Services(Query Engine+Table Format)Executor Executor ExecutorStorage Services(AWS S3)Data Data DataSQL Query模模块块微服微服务务化化 Databend 架构架构 Databend 架构架构 Databend 架构架构 Databend 架构架构 Cluster Key(age)Age=20Age=35Age=80min:5max:100min:15max:40min:20max:60file2f
11、ile3file1Automatic Tuning Cluster Key(age)Age=20Depth:2Age=35Depth:3Age=80Depth:1min:5max:100min:15max:40min:20max:60file2file3file1select from table where age=20 Automatic Tuning Cluster Key(age)Age=20Depth:2Age=35Depth:3Age=80Depth:1min:5max:100min:15max:40min:20max:60file2file3file1select from ta
12、ble where age=80 Automatic Tuning Cluster Key(age)Age=20Depth:2Age=35Depth:3Age=80Depth:1min:5max:100min:15max:40min:20max:60file2file3file1select from table where age=35 Automatic Tuning Cluster Key(age)Age=20Depth:2Age=35Depth:2Age=80Depth:1min:5max:100min:15max:60file2file1select from table where
13、 age=35 Automatic TuningCREATE CATALOG my_hive TYPE=HIVE CONNECTION=(URL=THRIFT_PROTOCOL=BINARY);SELECT*FROM my_hive.db1.table;Multiple Catalog RFC:https:/databend.rs/doc/contributing/rfcs/multiple-catalog Databend+HiveCREATE CATALOG my_iceberg TYPE=ICEBERG CONNECTION=(URL=s3:/my_bucket/path/to/iceb
14、erg);SELECT*FROM my_iceberg.db1.table;Multiple Catalog RFC:https:/databend.rs/doc/contributing/rfcs/multiple-catalogDatabend+IcebergDatabend 开源社区开源社区 04 140+Contributors 4.9K Stars 迭代非常快https:/ 开源社区开源社区 40 月度活跃开发者:SAP Yahoo Fortinet Shopee PingCAP Alibaba Tencent ByteDance EMQ 快手快手(湖湖仓仓一体共建一体共建)Databend 开源社区开源社区On-Premises社区版:https:/databend.rsServerless Cloud海外(AWS)https:/国内(阿里云)https:/Databend 体体验验:On-Premises,ServerlessDatabend 用用户户More Thanks