1. 背景介绍
目前由于数据分散在不同的存储环境或数据库中,对于新业务需求的开发需要从不同的数据库中同步、集中、合并等处理,造成资源和人力的浪费。同时,现有的系统架构,无法为未来数据驱动业务创新的理念提供友好的支撑。需要建设新一代数据管理平台,来解决数据利用率效率跟不上,以及不能支撑业务发展的问题。
以此背景,建设数据平台需要能够支持数据汇集、数据分析、数据应用、数据计算、数据管理、数据协同等,实现高效的数据管理、分析和应用,从而提升企业的竞争力和业务水平,并且将数据资产打造为新一代企业发展的重要资产之一。
2. 目标与价值
数据仓库是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合。
数据仓库构建主要指的是把企业的业务数据库如ERP、CRM、SCM等数据按照决策分析的要求建模并汇总到数据仓库引擎中,其应用以报表为主,目的是支持管理层和业务人员决策(中长期策略型决策),支持数据的即时展现。
2.1 目标
数仓建设的目标是通过建立健全的数据管理和分析体系,实现数据的价值最大化,促进业务的持续增长和发展。可以从多个方面来考虑,主要包括以下几个方面:
- 数据一致性: 确保各个部门和业务系统的数据是一致的,避免数据冲突和混乱。
- 数据质量: 提高数据的准确性、完整性和时效性,确保数据的质量达到业务需求的标准。
- 数据集成和整合: 将内部和外部的各种数据源进行集成和整合,构建统一的数据视图和数据模型。
- 数据可用性: 提高数据的可用性和可访问性,确保用户能够随时随地获取到所需的数据。
- 数据安全: 保护数据安全和隐私,防止数据泄露和非法访问。
2.2 价值
数仓建设的价值体现在提高决策效率、优化业务流程、创新产品和服务、提升客户体验等多个方面,对企业的长期发展具有重要意义。建设的价值体现在多个方面,包括但不限于以下几个方面:
- 数据驱动决策: 数仓能够提供高质量、准确、实时的数据支持,帮助管理层和决策者基于数据做出更明智的决策,降低决策风险,提高决策效率。
- 精准营销: 借助数仓,可以对客户数据进行深度分析,实现个性化营销,精准定位目标客户,提高营销效果和ROI。
- 业务优化: 数仓能够对业务流程和运营情况进行全面分析,帮助发现业务瓶颈和优化空间,提升业务效率和运营水平。
- 产品创新: 通过对市场和用户行为数据的分析,可以及时了解市场需求和趋势,为产品创新提供参考和支持,提高产品竞争力。
- 客户体验提升: 借助数仓可以全面了解客户的行为和需求,提供个性化、精准的产品和服务,提升客户满意度和忠诚度。
- 成本降低: 数仓能够提高数据的利用率和效率,减少数据重复采集和整理的工作量,降低数据管理和分析的成本。
- 风险管控: 数仓能够对风险进行全面监控和预警,帮助及时发现和应对潜在风险,保障安全和稳定发展。
- 品牌价值提升: 借助数仓,可以提供更智能、更个性化的产品和服务,提升品牌的知名度和影响力,增强市场竞争力。
3. 技术架构与关键组件选型
数据仓库平台整体依托阿里云的各项功能进行部署,充分利用阿里云提供的强大技术和服务,实现离线实时一体化数仓架构设计。
3.1 数据采集与集成
数据采集和集成阶段,是对业务数据源进行抽取、转换、导入等作业。依据目前阶段发展以及各个工具组件的优缺点,这里主要推荐使用阿里云数据集成(Data Integration)作为数据采集和集成的主要工具。下面列出目前其他主流数据 ETL 工具,可供参考。
- *数据集成(Data Integration): 阿里云数据集成服务实现对多种数据源的实时、批量数据采集和同步。整合了离线和实时数据抽取能力,适合目前离线实时一体数仓建设方案,因此比较推荐。官方链接:https://www.aliyun.com/product/cdp
- 日志服务(SLS):云原生观测分析平台,为 Log/Metric/Trace 等数据提供大规模、低成本、实时平台化服务。一站式提供数据采集、加工、分析、告警可视化与投递功能。适用于埋点丰富,且实时需求较高的场景。官方链接:https://www.aliyun.com/product/sls
- DataHub / Kafka :专精于流式数据(Streaming Data)的处理平台,提供对流式数据的发布、订阅和分发功能,可以轻松构建基于流式数据的分析和应用。适合用于实时计算数据平台,对离线数据能力支持较弱。官方链接:DataHubhttps://www.aliyun.com/product/datahub,Kafka https://www.aliyun.com/product/kafka
- 数据导入导出服务(DTS): DTS服务实现异构数据源之间的数据迁移和同步。 只支持选的单一数据源同步,适合大批量数据进行迁移使用。官方链接:https://www.aliyun.com/product/dts
3.2 数据存储与管理
离线数据的存储,可以依赖MaxCompute中自带空间进行存储。实时数据存储使用阿里云原生数据仓库AnalyticDB MySQL版,能够提供高效的数据处理速度,支持看板报表秒级展现。数据管理则使用DataWorks,集成了开发运维等常用开发功能,拥有良好的 IDE 界面,能够快快速进行开发运维发布等操作。
- *云原生数据仓库AnalyticDB MySQL版:支持高并发低延时査询的新一代云原生数据仓库,可以对海量数据进行即时的多维分析透视和业务探索。官方链接:https://www.aliyun.com/product/ApsaraDB/ads
- *大数据开发治理平台DataWorks:DataWorks基于阿里云ODPS/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。官方链接:https://www.aliyun.com/product/bigdata/ide
- 对象存储 OSS: 将原始数据存储于阿里云对象存储(OSS)中,构建灵活可扩展的离线数据存储层。离线数据可以通过建立外部表的方式,使用 oss 文件存储数据。但基于此文件外部表,数据管理较难,存在删除表但数据仍然存在的情况。
- 表格存储 OTS: 用于存储结构化数据,提供高并发、低延迟的数据访问能力。场景比较单一,适合明细类数据快速检索展示。
3.3 数据处理与分析
数据处理阶段,离线数据和实时数据是完全不同的处理场景,需要分别使用不同的服务进行。离线数据处理使用MaxCompute的集成功能进行处理,实时数据则依托实时计算Flink版进行处理。
- *大数据计算服务(MaxCompute): 基于MaxCompute实现数据的大规模计算和分析,支持SQL、MapReduce、Spark等计算模型。 官方链接:https://www.aliyun.com/product/odps
- *实时计算Flink版:实时计算Flink版提供实时流数据处理和分析能力,支持低延迟的数据处理和决策。具备实时应用的作业开发、数据调试、运行与监控、自动调优、智能诊断等全生命周期能力。官方链接:https://www.aliyun.com/product/bigdata/sc
3.4 数据应用与服务
数据应用主要为数据结果输出可视化内容,包括报表看板、大屏展示等。
- *Quick BI:阿里云原生数据可视化分析工具,支持0代码拖拽式的极简操作交互,高级版本支持页面嵌入。且支持部分类似DataV的大屏建设功能,可与阿里云MaxCompute深度整合。场景官方示例https://bi.aliyun.com/template/nl/public,官方链接:https://www.aliyun.com/product/quick-bi
- DataV:阿里云原生大屏展示工具,专注于大屏可视化视觉层面建设。适用于会议展览、业务监控、风险预警、地理信息分析等固定模板的展示需求。官方链接:https://www.aliyun.com/product/bigdata/datav
- Tableau:强大的可视化功能,用户友好的界面,支持多种数据源的连接和整合,可实现高度定制化的报表和看板设计。适用于需要高度定制化和专业可视化的数据分析和报表展示场景。
- Microsoft Power BI: 与Microsoft Office和Azure等产品的无缝集成,功能强大且易于学习使用,支持多种数据源连接和数据分析功能。适用于微软生态系统用户,需要与其他Microsoft产品集成的场景。
- 帆软BI:提供丰富的数据分析和可视化功能,支持复杂的数据报表和仪表板设计,适合中大型企业和数据团队,对于数据报表和可视化有较高的定制化需求,支持与其他系统(如ERP、CRM等)深度集成的场景。类似工具包括观远BI、网易有数BI 等。
- Apache Superset:Superset 是Apache旗下的一个开源项目,具有较强的可扩展性,可以根据需要自行定制和扩展功能,支持本地部署,适合需要灵活的数据连接和多样化的可视化需求的场景。
3.5核心服务应用架构
基于阿里云的核心服务应用,在数据平台中的相互协作关系如下图:
4. 结语
基于阿里云平台的数据仓库建设方案能够充分发挥阿里云在云计算和大数据领域的优势,提供高效可靠的数据管理和分析服务。通过本方案的实施,可以快速进行大数据平台建设,更好地利用数据驱动业务发展,提升竞争力和核心竞争力。