SelectDB案例 从 ClickHouse 到 Apache Doris的局限性,我们尝试对架构进行优化升级,将分析 引擎 ClickHouse 切换为 Doris,Doris 具有以下的优势: Apache Doris 的优势: Doris 架构极简易用,部署只需两个进程,不依赖其他系统,运维简单;兼容 MySQL 协议,并且使用标准 SQL。 支持丰富的数据模型,可满足多种数据更新方式,支持部分列更新。 支持对 Hive、Iceberg、Hudi , 主要的耗时包括两方面: BE 从 ES 中拉取数据(默认一次拉取 1024 行),对于 100 万以上的群体,网络 IO 开销会很大。 BE 数据拉取完成以后,需要和本地的指标表做 Join,一般以 SHUFFLE/BROADCAST 的方式,成本较高。 针对这两点,我们进行了以下优化: 11 增加了查询会话变量 es_optimize,以开启优化开关; 节点,并下推到 ES; ES 对查询出的数据进行 Bitmap 压缩,并将数据的多批次获取优化为一次获取,减 少网络 IO 开销; Doris BE 只拉取和本地 Doris 指标表相关 Bucket 的数据,直接进行本地 Join,避 免 Doris BE 间数据再 Shuffle 的过程。 通过以上优化措施,百万分群圈选洞察查询时间从最初的 60 秒缩短到 3.7 秒,性能显著 提升!0 码力 | 12 页 | 1.55 MB | 1 年前3
百度智能云 Apache Doris 文档SELECT-INTO-OUTFILE SELECT INTO OUTFILE SELECT INTO OUTFILE Description Description 该命令用于将 SQL 产出的结果集导出到本地磁盘,或通过 Broker 导出到远端存储上。 任意查询语句。 RESTORE RESTORE SNAPSHOT SNAPSHOT example_db1 example_db1..``snapshot_1 query_stmt Baidu 百度智能云文档 SQL手册 24 指向文件存储的路径以及文件前缀。如: 最终的文件名将由 组成。 其中文件序号由0开始,数量为文件被分割的数量。如: 如果使用本地文件方式,则导出的文件会存储在集群内随机一台 Compute Node 节点上。具体节点信息在返回结果的 URL 中获知。 导出文件格式。目前仅支持 CSV。 相关属性。其中 broker 所需属性必须以 bos://my_bucket/my_file_ # 远端目录 file:///to/loca/path/my_file_ # 本地目录 file:///to/loca/path/my_file_ # 本地目录 my_file_ + 文件序号 + 文件格式后缀 my_file_ + 文件序号 + 文件格式后缀 my_file_0.csv my_file_00 码力 | 203 页 | 1.75 MB | 1 年前3
Apache Doris 在美团外卖数仓中的应用实践Join相对的概念,即将两表的数据提前按照Join Key Shard,这样在Join执行时就没有数据网络传输的开销,两表可以直接在本地进行Join。 整个Colocate Join在Doris中实现的关键点如下: 数据导入时保证数据本地性。 查询调度时保证数据本地性。 数据Balance后保证数据本地性。 查询Plan的修改。 Colocate Table元数据的持久化和一致性。 Hash Join的粒度从Server粒度变为Bucket粒度。0 码力 | 8 页 | 429.42 KB | 1 年前3
Doris的数据导入机制以及原子性保证• 任何节点都可线性扩展 01 Doris 简介 导入的问题 02 典型应用场景——OLAP分析 数据源 数据应用 数据存储 对象存储BOS OLTP WEB端日志 移动端日志 本地文件 数据分析 业务应用 实时大屏 多维报表 自助查询 用户画像 Doris 02 导入的问题 Vn Vn Vn Vn V1-Vn-1 02 导入的问题 • 部分数据丢失,产生脏数据 (多版本机制) (两阶段导入) 事务能力保证 使用案例 04 BI Application 数据加载 数据输出 数据查询 数据导入总览 • 多源数据加载:HDFS、Kafka、本地数据 • 联邦数据查询:Spark • 多源数据访问:ES、MySQL • 通用协议输出:JDBC、ANSI SQL • 多种数据格式支持: 文本、PARQUET、ORC 04 使用案例 使用案例 导入方式 同步/异步 场景 接口 Broker Load 异步 HDFS、BOS对象存储 MySQL Routine Load 异步 Kafka MySQL Stream load 同步 本地文件,数据流 HTTP Insert into 同步 命令行 MySQL Spark Load 异步 Spark MySQL 最佳实践 04 使用案例 • 根据数据源所在位置选择导入方式。0 码力 | 33 页 | 21.95 MB | 1 年前3
共 4 条
- 1













