前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Apache Doris取代ClickHouse、MySQL、Presto和HBase

Apache Doris取代ClickHouse、MySQL、Presto和HBase

作者头像
大数据学习与分享
发布2024-01-26 14:31:03
5500
发布2024-01-26 14:31:03
举报

组件密集型数据架构

用户从 Lambda 架构入手,将数据管道拆分为批处理链路和流处理链路。对于实时数据流,他们应用 Flink CDC ;对于批量导入,他们结合了 Sqoop、Python 和 DataX 来构建自己的数据集成工具,名为 Hisen。

然后,实时数据和离线数据在数据仓库层会合,该层由五个组件组成。

ClickHouse

数据仓库采用扁平表设计,ClickHouse 在扁平表读取方面表现出色。但随着业务的发展,面临两个方面的挑战:

  • 为了支持跨表连接和点查询,用户需要星型模式,这在 ClickHouse 中很难实现。
  • 保险合同的变更需要在数据仓库中实时更新。在 ClickHouse 中,通过重新创建一个平面表来覆盖旧表来完成,但速度不够快。

MySQL

计算完成后,数据指标存储在 MySQL 中。随着数据规模的增长,MySQL 开始陷入困境,出现执行时间延长、抛出错误等问题。

Apache Hive + Presto

Hive是批处理环节中的主要执行者。可以转换、聚合、查询离线数据。Presto 是 Hive 的补充,用于交互式分析。

Apache HBase

HBase 承担主键查询。它从 MySQL 和 Hive 读取客户状态,包括客户信用、承保期限和保险金额。由于 HBase 本身不支持二级索引,因此读取非主键列的能力有限,但可以通过开源Phoenix组件或“通过hbase协处理器把二级索引自动同步至elasticsearch”来实现二级索引的功能。另外,作为 NoSQL 数据库,HBase 不支持 SQL 语句,对SQL语句的支持可以通过开源Phoenix组件或“HBase SDK 3.0.0发布,让HBase的使用变得更简捷”:https://github.com/CCweixiao/hbase-sdk或https://gitee.com/weixiaotome/hbase-sdk。

这些组件必须协同工作才能满足所有需求,使得数据仓库变得难以处理,不容易上手。因为工程师必须接受所有这些组件的培训。此外,架构的复杂性也增加了延迟的风险。

因此,用户试图寻找一种能够满足更多要求的工具。他们首先需要的是实时能力,包括实时写入、实时更新、实时响应数据查询。其次,需要在数据分析方面更加灵活,以支持面向客户的自助查询,如多维分析、大表连接查询、主键索引、上滚和下钻等。然后,对于批处理,还希望数据写入具有高吞吐量。

用户最终决定选择 Apache Doris。

用 Apache Doris 替换四个组件

Apache Doris 能够进行实时和离线数据分析,同时支持高吞吐量的交互式分析和高并发的点查询。这就是为什么它可以取代 ClickHouse、MySQL、Presto 和 Apache HBase,作为整个数据系统的统一查询网关。

改进后的数据管道是一个更加干净的 Lambda 架构。

Apache Doris 提供了多种数据摄取方法。数据写入速度很快。除此之外,它还实现了 Merge-on-Write 以提高并发点查询的性能。

降低成本

新的架构降低了用户的人力成本。一方面,更简单的数据架构使得维护更容易;另一方面,开发者不再需要在数据服务 API 中加入实时和离线数据。

用户还可以使用 Doris 省钱,因为它支持分层存储。它允许用户将大量很少访问的历史数据放入对象存储中,这样囤积数据的成本要低得多。

更高效率

Apache Doris 的 QPS 可以达到万级,毫秒级响应数十亿点查询,面对客户的查询也能轻松应对。将热数据与冷数据分开的分层存储也提高了查询效率。

服务可用性

作为存储、计算和数据服务的统一数据仓库,Apache Doris 可以轻松实现灾难恢复。由于组件较少,他们不必担心数据丢失或重复。

Apache Doris 的跨集群复制(CCR)能力是用户服务可用性的重要保障。可以在几分钟甚至几秒钟内实现集群之间的数据同步,并且实现了两种机制来保证数据的可靠性:

  • Binlog:该机制可以自动记录数据的变化,并为每个数据修改操作生成一个LogID。增量 LogID 确保数据更改可追溯且有序。
  • 数据持久化:在系统崩溃或紧急情况下,数据将被存入磁盘。

深入了解 Apache Doris

Apache Doris 可以取代 ClickHouse、MySQL、Presto 和 HBase,因为它在数据处理管道上拥有全面的功能集合。在数据摄取方面,基于对 Flink CDC 和 Merge-on-Write 的支持,实现了低延迟实时写入。通过其标签机制和事务加载来保证 Exactly-Once 写入。在数据查询方面,它同时支持星型模式和平面表聚合,因此在麻烦的多表连接和大型单表查询中都可以提供高性能。它还提供了多种方法来加速不同的查询,例如用于全文搜索和范围查询的倒排索引、用于点查询的短路计划和预备语句。


免责声明:本公众号所发布的文章为本公众号原创,或者是在网络搜索到的优秀文章进行的编辑整理,文章版权归原作者所有,仅供读者朋友们学习、参考。对于分享的非原创文章,有些因为无法找到真正来源,如果标错来源或者对于文章中所使用的图片、连接等所包含但不限于软件、资料等,如有侵权,请直接联系后台,说明具体的文章,后台会尽快删除。给您带来的不便,深表歉意。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-01-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据学习与分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 组件密集型数据架构
  • 用 Apache Doris 替换四个组件
  • 深入了解 Apache Doris
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档