Apache Doris 在美团外卖数仓中的应用实践的数据生产成本较高和查询效率偏低的问题,他们通过引入Apache Doris引擎优化生产方案,实 现了低成本生产与高效查询的平衡。并以此分析不同业务场景下,基于Kylin的MOLAP模式与基于 Doris引擎的ROLAP模式的适用性问题。希望能对大家有所启发或者帮助。 本文侧重于以Doris引擎为“发动机”的数仓生产架构的改进与思考。在开源的大环境下,各种数据 引擎百花齐放,但由于业务的复杂性与多样 织机构的变化是一个绕不开的技术问题。此外,商家品类、类型等其它维度也存在变化维的问题 。如下图所示: 数据生产面临的挑战 数据爆炸,每日使用最新维度对历史数据进行回溯计算。在Kylin的MOLAP模式下存在如下问题: 历史数据每日刷新,失去了增量的意义。 每日回溯历史数据量大,10亿+的历史数据回溯。 数据计算耗时3小时+,存储1TB+,消耗大量计算存储资源,同时严重影响SLA的稳定性。 预计 算与管理成本较高。ROLAP需要强大的关系型DB引擎支撑。长期以来,由于传统关系型DBMS的 数据处理能力有限,所以ROLAP模式受到很大的局限性。随着分布式、并行化技术成熟应用,MP P引擎逐渐表现出强大的高吞吐、低时延计算能力,号称“亿级秒开”的引擎不在少数,ROLAP模式 可以得到更好的延伸。单从业务实际应用考虑,性能在千万量级关联查询现场计算秒开的情况下 ,已经可以覆盖到很多应用场景,具备应0 码力 | 8 页 | 429.42 KB | 1 年前3
百度智能云 Apache Doris 文档partitions partitions PARTITION(p1, p2, p3) PARTITION(p1, p2, p3) Baidu 百度智能云文档 SQL手册 15 需配合 MEREGE 导入模式一起使用,仅针对 Unique Key 模型的表。用于指定导入数据中表示 Delete Flag 的列和计算 关系。 仅针对 Unique Key 模型的表。用于指定导入数据中表示 Sequence 0,即不允许有错误行。 采样窗口为 。即如果在采样窗口内,错误行数大于 ,则会导致例行作业被 暂停,需要人工介入检查数据质量问题。 被 where 条件过滤掉的行不算错误行。 4. 是否开启严格模式,默认为关闭。如果开启后,非空原始数据的列类型变换如果结果为 NULL,则会被过滤。指定方 式为: 5. 指定导入作业所使用的时区。默认为使用 Session 的 timezone 参数。该参数会影响所有导入涉及的和时区有关的函 18 2. 为 example_db 的 example_tbl 创建一个名为 test1 的 Kafka 例行导入任务。导入任务为严格模式。 3. 通过 SSL 认证方式,从 Kafka 集群导入数据。同时设置 client.id 参数。导入任务为非严格模式,时区为 Africa/Abidjan CREATE CREATE ROUTINE ROUTINE LOAD LOAD example_db0 码力 | 203 页 | 1.75 MB | 1 年前3
SelectDB案例 从 ClickHouse 到 Apache DorisDuplicate 明细模型进行了对比 ,相较于 Unique 模型和 Duplicate 模型,Aggregate 聚合模型满足我们部分列更新的场景需求: Aggregate 聚合模型可以支持多种预聚合模式,可以通过 REPLACE_IF_NOT_NULL 的方式实 现部分列更新。数据写入过程中,Doris 会将多次写入的数据进行聚合,最终用户查询时, 返回一份聚合后的完整且正确的数据。 另外两种数 基于圈选结果,需要支持标签和指标的明细查询。 经过调研,我们最终采用了 Doris on ES 的解决方案来实现以上要求,将 Doris 的分布式 查询规划能力和 ES 的全文检索能力相结合。Doris on ES 主要查询模式如下所示: SELECT tag, agg(metric) FROM Doris 10 WHERE id in (select id from Es where tagFilter)0 码力 | 12 页 | 1.55 MB | 1 年前3
共 3 条
- 1













