一、数据集成当前困境

目前数据集成基础设施建设仅一个单一数据库,无法很好支持上层应用的建设步骤,继续采用当前设施跟随产品的策略,数据产品开发受限巨大,从目前实施的几个产品看,存在以下主要问题:

  • 功能支持受限,新功能由于无 Infra 支持,大部分最终以比较畸形的形式存在。
  • 开发成本难以预估,且都存在成本超预算的现象。
  • 技术人力资源局限,使用激进的自主开发需要大量有丰厚大数据技术积累的人员,目前不具备这样的条件。

对于数据集成 “全平台数据打通,高效低代码开发” 的基本目标,迫切需要一个拥有较为完善基础设施(Infra)的“数据仓库”。

二、为什么需要数据仓库?

已经有了数据库,为什么还需要数据仓库?在宏观上,数据库通常是一种OLTP数据库,局限于单一的应用软件,构成数据库系统。虽然数据库的设计使事务型数据库运行得更有效率,但是事务型数据库不善于分析。也就是说,数据库的组织结构决定它的分析能力并不好,相对地,数据仓库的组织结构,能够让它快速简单地处理分析的请求,帮助决策者优化流程、节省成本和保障质量。

数据仓库(Data Warehouse,DW)是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合。细节对比如下:

同时数据仓库也是数据中台的基石,是必不可少的一个重要因子。

三、数据仓库基础架构

事务型数据库保存数据的瞬态信息,分析型数据仓库保存大量的历史数据。在实际业务处理中,除了事务型业务和分析型业务,还存在介于事务型和分析型之间的需求,即快速地分析短期的历史数据。这种分析需求无法在保存瞬态数据的事务型数据库中完成,也不能在保存大量历史数据的数据仓库中完成,形成 DB-ODS-DW 的三层体系结构。

四、技术选型

目前市面上关于数仓的技术已经非常成熟,类型也是五花八门。但是考虑开发人员所掌握的技术等原因,我们应当快速以成熟技术完成数据仓库的 Infra 设施部署和相关开发秩序的建立。选定成熟的大数据技术堆栈包含数据存储、数据开发、BI 服务、元数据服务,且各方面都需要有十分成熟的开源产品支持。

这样基于成熟的大数据开发栈,开发人员不需要了解各组件的部署、实现,可以以近似低代码(数据集成能力)形式接入各数据业务、完成数仓数据积累。比如七巧低代码通过预构建的连接器与多种数据源连接,拖拽组件设计ETL流程,对原始数据进行标准化处理与实时传输,将数据整合到数据仓库中。

  • 数据积累

通过整套设施,快速完成各平台事实数据、Meta 数据的集中收纳,为数据开发业务提供真实可靠基础。同时基于整套设施,即使非开发人员,内部产品也可以快速低成本进行数据价值探索,快速验证数据业务。

  • 商业 BI 产品

商业 BI 产品是体现当前数据集成的商业化价值的最有效手段之一。可以完成 MetaBase 这类开源商业化的成熟产品上靠拢。

五、设施列表

1. 基础设施

基础设施包含 3 种主要类型:统一数据存储、数据 ETL、数据 OLAP。

设施组件

作用范围

说明

Hadoop - HDFS

数据存储(ODS、DWD)

HDP 平台提供

Hadoop - Hive

HDFS 数据查询(低速)

HDP 平台提供

Hadoop - Yarn

容器编排平台

HDP 平台提供

Flink

ETL 数据物化视图计算(On Yarn)

On Yarn 部署

Kafka

流式存储(Real-Time ODS)

HDP 平台提供

TiDB(TiKV/TiFlash)

OLAP 计算(DWS)、Real-Time 存储

沿用旧设施

ClickHouse(可选)

OLAP 计算

可选,作为 TiFlash 算力不足的补充

Presto

BI Ad-Hoc 快速集成数据源

2. 应用设施

测试环境语义下,应用设施可灵活变更,用于演示数仓最终应有形态,提供快速开发辅助,鼓励灵活采用新组件。

主要围绕 3 大设施:元数据管理、ETL 调度平台、BI 服务。每个类型设施至少需要选择一种。

设施应用

作用范围

说明

StreamX

Flink SQL 实时 ETL 快速开发

https://github.com/streamxhub/streamx

DolphinScheduler

离线 ETL 调度,沿用旧设施

https://github.com/apache/dolphinscheduler

DataHub

元数据平台,提供对全领域元数据的快速集成

https://github.com/linkedin/datahub

Superset

自由 BI

https://github.com/apache/superset

MetaBase

自由 BI,相比 Superset 产品成熟度更高,但 AGPL LICENSE 存在风险,可作为BI 产品形态参考

https://github.com/metabase/metabase

3. 功能流程

  • 数据源通过数据同步将数据存储至Hive/Hbase形成数仓基石ODS层;
  • DataHub:收集数据源、ODS、DWS元数据信息,做元数据管理;
  • Streamx & Dolphinschedule:Flink SQL 实时 ETL 快速开发及调度平台;
  • 数据集成:提供图形化的操作,客户可以低门槛形成主题数据,供BI层做数据展示;

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部