导读:在 IoT 物联网场景,随着传感器和物联网技术的大量应用,海量 IoT 设备生产了大量的数据,比如制造业工厂生产线、新能源汽车、城市安防监控摄像头和各类机器人应用场景等。这类场景的共同特点是数据生成频繁,数据规模大,可能轻易能达到数百 TB 甚至 PB 级别。
当前大部分企业内对于大数据的解决方案都是基于 Hadoop 体系,但是 Hadoop 组件极为复杂,有较高的开发和运维门槛,对于很多企业来说成本太高。ProtonBase 在一个系统内实现了事务处理、实时数仓、数据湖分析、全文检索以及向量检索等企业级核心数据存储和查询的需求。能够支持高吞吐低延迟的实时写入,并且保证数据的一致性,在数仓场景是一个更好的数仓。因此可以用来替换 Hadoop 体系,降低系统复杂度,同时降低开发和运维等方面的成本。
01/业务背景
客户是国内机器人领域某头部公司,由于业务场景复杂和一些历史原因,当前线上的数据库产品种类较多。各个业务部门分别使用一款或者多款不同的数据库产品,经过 Sqoop 数据同步工具将数据同步到自建的 Hadoop(Hive)系统中。Hadoop 内使用传统的数仓分层设计来对数据进行分层建模、数据处理和汇总。最终的数据通过 BI 报表工具,来进行数据同步、抽取和报表展示,在公司内部提供报表展示与大盘系统,供关键的决策人员和运营人员进行一些数据分析,根据业务的发展情况来决定是否要及时做出一些业务调整。
我们通过这个客户案例来展示 ProtonBase 在替换以 Hadoop 为代表的离线数仓过程中能为客户带来的价值。
企业原大数据系统架构
上图是客户之前的大数据系统的架构图。客户的业务系统使用了 RDS MySQL、RDS PostgreSQL、MongoDB 和 Kafka 等数据产品。同时基于自购的云主机搭建了离线 Hadoop 系统。各业务系统的数据经由不同的接入服务汇聚到 Hive 中,以提供具体的数据应用,比如报表分析、即席查询和大屏展示等。
02/原有数据系统成本高、延迟高、数据处理链路长
业务数据到数仓的流转过程分批量与实时同步两条链路。批量数据同步由 Sqoop、ETL 等同步工具定时完成,实时同步由客户自建服务消费 Kafka 数据并且进行一定处理流入离线数仓。业务初期,各个数据库数据量不大,这种方式能比较好的满足业务需求。同时经由数仓 ODS、DWD、DWS 和 ADS 各层的处理,报表系统也能正常运转。但是伴随业务的飞速发展和数据量的快速增长,各种问题开始暴露出来:
1. 自建 Hadoop 成本偏高:为支持各种离线数据处理,客户自己购买多台云主机部署 Hadoop 系统和一些中间层服务组件,从最近两年的费用统计来看该部分在整体云产品中消费占比较高。
2. 数据处理链路长,问题排查不便:为定位或修正 BI 报表中的数据错误,往往需要在 Hive 数仓中层层排查,耗时耗力,效率不高。排查完 Hive 数仓后,可能发现应用在写业务库时已经出错。
3. 数据同步耗时长,时效性差:随着业务的快速发展,现有的数据同步流程逐渐暴露出以下制约因素:
- 由于当前使用的 Sqoop 工具只能进行全量同步,随着数据源的持续增加和数据量的快速增长,导致每天的所需的同步时间不断增加。
- 传统的 T+1 数据同步时效性已经无法满足业务决策需求,然而数据量的增加进一步延长了同步和建模流程的时间,这与提升报表时效性的目标背道而驰。
- 一些新业务的数据库由于数据量较大,使用 Sqoop 全量同步至 Hadoop 耗时过长。而如果直接同步至 BI 系统,则无法满足复杂数据分析的需求。
- 目前,BI 报表系统与 Hadoop 部署在阿里云,各个数据库数据源则部署在腾讯云。出于采购折扣和简化运维的需求,客户期望将所有系统统一至腾讯云。
基于以上问题,客户决定对现有的离线大数据系统进行升级。希望在支持异构、多源的云端数据库产品同步的基础上,降低成本,简化业务建模流程,并提升报表数据的实时性、准确性。
03/ProtonBase 实践:从离线向实时数据仓库升级转型
从前述分析中可以看出,客户当前面临的主要问题是现有的离线数据仓库解决方案架构复杂,并且随着业务的迅速扩展,已无法有效支持其决策分析的需求。这实际上是一个从离线数据仓库向实时数据仓库(Real-Time Data Warehouse,RTDW)升级转型的典型场景。
实时数据仓库是一种融合了实时数据处理技术和数据仓库理念的先进大数据解决方案。相较于传统的离线数据仓库,RTDW 能够在极短的时间框架内完成数据的处理、存储及分析工作,从而赋能企业基于最新数据快速作出决策。
在当今这个数据驱动的时代背景下,拥有实时数据仓库意味着企业能够具备即时的数据处理能力,充分发掘数据的潜在价值。通过实时数据,企业可以迅速捕捉市场动态,及时调整策略以应对竞争压力。构建实时数据仓库的核心目标在于让企业能够即时获得信息并作出响应,这一响应时间范围可缩短至几小时、几分钟乃至秒级。因此,为了适应实时数据仓库的需求,企业必须超越传统的 ETL 工具和离线数据仓库架构,采用更为先进的技术手段。
ProtonBase 结合了实时数仓和数据库的能力,提供了云原生的数据解决方案。具备高性能分布式架构,确保超低延迟和海量数据吞吐能力。提供极致弹性和按量付费选项,简化运维工作。同时,ProtonBase 自带数据同步服务,能支持多源异构数据产品导入到 ProtonBase,如 MySQL、PostgreSQL、SQL Server、Oracle 和 MongoDB 等。在全量导入模式下,可以一次性将全量数据导入 ProtonBase。在增量导入模式下,数据同步服务既可以同步上游的增量数据信息,又可以识别 DDL 变更及时应用到 ProtonBase 端以保证后续新 Schema 格式下的增量消息同步。从而使整个增量数据同步流程做到纯实时。