某跨境物流巨头借力 SelectDB Cloud on AWS 实现数据架构革新与升级

实时数据仓库资讯
2024/04/26
SelectDB 技术团队

该公司聚焦跨境仓储与物流, 为全球跨境电商商户、出口贸易企业、出海品牌商提供海外仓储、商业专线物流、定制化物流等一体化物流解决方案。

随着业务的快速发展,各产品线提出的数据需求越发严格,而早期基于多套 CDH 大数据架构的技术栈和组件繁杂,开发和运维难度高、效率低,数据质量和时效难以保障,已无法满足当下数据分析需求,严重影响相关工作的开展。因此,选择引入 SelectDB ,并基于 SelectDB 构建了新的流批一体数据架构,同时建立了以 SelectDB 为核心的数据中台,构建过程中对读写时效性、服务的稳定性及高并发读写等多方面进行了优化。在这一过程中我们也积累了诸多实践经验,在此总结分享给大家。

早期架构

早期数仓架构主要分为两套基于 CDH 的大数据集群,主要由数据应用、任务调度、计算引擎、监控报警、分布式协调、资源管理、数据存储、实时分发、数据采集和数据源等模块组成,两套架构根据不同产品线的数仓需求、数据大屏和 BI 报表等应用,选择不同的任务调度,数据存储和计算引擎,例如 MongoDB 数据源的计算引擎,选择 Hive 、Impala 、Flink、Spark 做计算,这两套架构是独立的数据管道,具有耦合度低,集群间相互独立等特点,便于精细化管理。但随着业务需求的不断变化,这样的特点也引发出许多新的问题。

遇到的问题

  1. 元数据和数据质量缺乏管控,数据质量无法得到保证
  2. 不同业务数据独立存储维护导致数据孤岛,不利于数据整合
  3. 每个集群的机房分布不一,维护成本非常高
  4. 集群间的技术栈和组件较多且存在差异性,对统一开发运维和数据整合都极具挑战性

架构设计

为了解决早期架构的痛点、更好满足日益严苛的数据需求,希望能有一款产品帮助我们快速构建流批一体的数仓架构、构建数据中台服务。

传统数仓可以支撑超 PB 级的海量数据,但是交互查询性能相对差一些,偏离线场景,不满足企业对数据实时性的要求;数据湖可以支撑超海量的数据,支持数据更新,查询性能适中,但是数据湖近两年才开始应用,成熟度较低,使用风险较大;实时数仓适用 PB 级数据存储,支持数据更新且查询性能非常好。

面对这些挑战,SelectDB Cloud 作为业界领先的云原生实时数仓解决方案脱颖而出,以其独特的核心优势,有效解决了早期架构的痛点,支撑了企业构建流批一体的数仓架构及数据中台服务。

核心优势

  1. 云原生架构:开箱即用,无需运维,可以在此快速构建数据应用服务。
  2. 外表机制:实现快速跨源联查,无缝对接多元数据源。
  3. 多样导入方式与丰富数据模型:适应不同层次、类型数据,满足复杂业务需求。
  4. MySQL 协议与全面 JOIN 支持:确保兼容性,提供高效查询体验,助力企业便捷构建实时数仓。

此外 SelectDB Cloud 可以基于 AWS 构建,对于开展出海业务或涉足跨境电商领域的企业来说,能够充分利用 AWS 的强大云基础设施,确保数据仓库服务的低延迟、高可用与合规性,无论业务拓展至何处,都能享受到一致的高性能数据分析体验。

新数据架构基于 SelectDB Cloud 作为流批数据存储,简化了数据采集、存储和计算的流程,可以更好地应对大规模数据处理场景,并提供一致的数据访问体验:

  1. 通过 Flink-SelectDB-Connector 稍加改造实现全量加增量数据的一体化采集
  2. 以 SelectDB 为核心数据底座,统一计算引擎管理、权限管控和对外服务。

基于上述几点进行了数据应用开发及对外提供数据服务,构建了数据中台。

数据平台

以 SelectDB 为核心底座创建了数据平台,核心功能包括基于物流指标中心、元数据中心、基础配置中心、即席分析和数据接口服务中心,其中指标中心和即席分析的数据来源主要来源于 SelectDB ,当前已上线几百个指标。

数仓建模

结合 SelectDB 的特性重新对数仓进行了建模,数仓分层与传统数仓类似,其中 ODS 数据为存量加增量一体的导入模式,同时为防止出现[随机查询结果问题],ODS 层最终选用 Unique 数据模型,可以实现写时合并(Merge-on-Write),有效提高数据实时性。DIM/DWD/DWS/ADS 层主要选用 Aggregate 数据模型,Aggregate 数据模型提供的四种聚合方式可以在大部分场景下达到事半功倍的效果,帮助我们快速应对不同的需求场景。

数据导入

ODS 层的数据导入目前主要以 Stream Load 为主,历史存量数据也会通过 Spark Load 导入。DW 层数据主要以 insert into 方式导入,同时为减轻内存压力,将部分 ETL 任务放到外部引擎上去计算,目前每天平稳调度 SelectDB 写入任务有上万个,其中大部分为 T+1 任务,小部分为小时级任务。

总结收益

SelectDB 的生产集群已达到数百 Core, 目前已导入集团存量和增量数据的60%。得益于 SelectDB 和 AWS 团队专家在技术和服务方面的全面支持,保障了项目顺利实施。

依赖 SelectDB 自身优异特性及其生态圈帮助我们快速构建了一套新的流批一体数据架构,平均每天实时入库的数据量达到上亿规模,同时支持上万个调度任务平稳运行,相比早期架构单表查询效率提升近 5 倍,数据导入效率提升近 2 倍,内存资源使用率显著减少。除此之外,SelectDB 以下优势也是我们快速构建数据架构的重要推动力:

  1. 扩展表:联邦查询的设计,便于集成其它的存储
  2. 数据表设计: 丰富的数据模型,可快速应对不同的数据需求。
  3. 数据查询: 不同的 Join 算子结合自身完善的优化器,让查询快而稳。
  4. 数据导入: 各种 Load 方式及 Connector 的扩展,基本涵盖大部分的数据同步场景应用。
  5. 成本优势:SelectDB Cloud 的存算分离架构、按需计费和自动扩缩容功能有助于降低硬件投资和运维成本。
  6. 技术支持及时:遇到问题可以得到快速响应并协助解决,此外 AWS 的专业运维团队负责底层基础设施的管理和维护,保证了平台的稳定性。
数据分析流批一体计算引擎实时数仓
更多热门文章