Apache Doris 在美团外卖数仓中的应用实践Doris在美团外卖数仓中的应用实践 序言 美团外卖数据仓库技术团队负责支撑日常业务运营及分析师的日常分析,由于外卖业务特点带来 的数据生产成本较高和查询效率偏低的问题,他们通过引入Apache Doris引擎优化生产方案,实 现了低成本生产与高效查询的平衡。并以此分析不同业务场景下,基于Kylin的MOLAP模式与基于 Doris引擎的ROLAP模式的适用性问题。希望能对大家有所启发或者帮助。 本文侧重于以Dor 严重影响SLA的稳定性。 预计算的大量历史数据实际使用率低下,实际工作中对历史的回溯80%集中在近1个月左 右,但为了应对所有需求场景,业务要求计算近半年以上的历史。 不支持明细数据的查询。 解决方案:引入MPP引擎,数据现用现算 既然变化维的历史数据预计算成本巨大,最好的办法就是现用现算,但现用现算需要强大的并行 计算能力。OLAP的实现有MOLAP、ROLAP、HOLAP三种形式,MOLAP以Cube为表现形式,但计 2 / 8 Apache Doris在美团外卖数仓中的应用实践 Spark大数据博客 - https://www.iteblog.com 下图是MOLAP模式与ROLAP模式下应用方案的比较: MOLAP模式的劣势 1. 应用层模型复杂,根据业务需要以及Kylin生产需要,还要做较多模型预处理。这样在不同 的业务场景中,模型的利用率也比较低。 2. Kylin配置过程繁琐0 码力 | 8 页 | 429.42 KB | 1 年前3
SelectDB案例 从 ClickHouse 到 Apache Doris语句是非常有难度的。如果你有相关的经验,期待有机会可以一起探索交流。 优化经验 从上文已知,为更好地实现业务需求,数据架构演进到 4.0 版本,其中 Apache Doris 作为 分析加速场景的解决方案在整个系统中发挥着重要的作用。接下来将从场景需求、数据导入、 查询优化以及成本优化四个方面出发,分享基于 Doris 的读写优化经验,希望给读者带来 一些参考。 场景需求 6 目前我们有 性能高效:具备高效的写入能力,且在圈选、洞察、报表等场景可以实现秒级响应。 控制成本:在满足业务需求的前提下,最大程度地降低成本;支持冷热数据精细化 管理,支持标签灵活上下架。 数据导入方案 为了减轻 Doris 写入压力,我们考虑在数据写入 Doris 之前,尽量将数据生成宽表,再写 入到 Doris 中。针对宽表的生成,我们有两个实现思路:第一个是在 TDW 数仓中生成宽 宽表、2 份冗余的数据。 实时性比较差,由于每个 Source 表产出的时间不一样,往往会因为某些延迟比较 大的 Source 表导致整个数据链路延迟增大。 开发成本较高,该方案只能作为离线方式,若想实现实时方式则需要投入开发资源 进行额外的开发。 而在 Flink 中生成宽表,链路简单、成本低也容易实现,主要流程是:首先用 Spark 将相 关 Source 表最新数据离线导入到0 码力 | 12 页 | 1.55 MB | 1 年前3
百度智能云 Apache Doris 文档公有云用户必须使用 Compute Node(BE)的 HTTP 协议端口,默认为 8040。 私有化部署用户可以使用 Leader Node(FE)的 HTTP 协议端口,默认为 8030。但须保证客户端所在机器网络能够联通 Compute Node 所在机器。 本文档主要通过 cURL 命令来介绍 Stream Load 的使用方式 HTTP 的请求方式为 扫描-导出 扫描-导出 exec_mem_limit 有两种方式: 1. 指向 FE 的 HTTP 协议端口。这种方式,FE 会直接将请求做 307 转发到随机的一个 BE 节点。最终请求和数据直接和 这个 BE 节点通讯。这种方式需要客户端和 BE 节点的网络能够正常通讯。 2. 指向 BE 的 HTTP 协议端口。则请求直接和 BE 节点交互。 注:百度云 Doris 用户请直接连接 Compute Node 的 HTTP 协议端口即可。 在 URL 语句进行查询即可。 Doris 对于外部表的查询,本质上是通过某一个 Compute Node 节点上的 ODBC Client 对外部数据源进行连接和查询。所以 要求外部数据源和 Compute Node 节点网络是双向连通的。 同时,Doris 查询外部表并不是分布式查询,而是单 Client 方式连接查询。所以性能效率上要远低于查询 Doris 自身存储的 表。外部表比较适用的场景式一些频繁更新的维度表和0 码力 | 203 页 | 1.75 MB | 1 年前3
共 3 条
- 1













