当前位置: 首页 > article >正文

什么是数据架构

       本文章对于有准备或者已进入数据治理、大数据行业的从业人员、准备考试DAMA认证的人员、准备学习大数据、数据治理的在校学生可以参考和学习,本文章是根据个人的知识能力,结合在工作中的实践经验,进行梳理总结,记录下来,文档中有不当之处,请谅解。

1、数据架构概念

        数据架构没有一个官方的定义,在这里按照DAMA、IBM和国内大厂对数据架构分别做了定义,如图所示:

1、DAMA是从企业整体角度认为,数据架构是与企业战略一致的,符合企业数据需求的数据资产蓝图,并且通过数据架构能够指导企业的战略目标。

2、IBM是从数据流转角度认为,数据架构是描述数据来源、数据采集、数据集成、数据存储、数据处理以及数据使用等全生命周期管理,能够提供一套完整的数据生命周期管理组件。

3、国内大厂对数据架构做了一个定位,它是业务架构与应用架构的桥梁,通过数据架构能够很好的固化业务流程、规则以及模式,以数据的形式给应用架构提供服务,同时也可以通过优化数据,来驱动应用架构。

       总结一句话:数据架构就是将业务需求转化为数据和系统需求,并管理数据及其在企业中的流动,并指导应用架构。

        对于快速系统化了解数据架构以及数据架构如何在企业中进行规划设计的小伙伴们,可以观看以下课程,能够帮助大家对数据架构有个清晰的认识、能够在工作中按照一定的实施方法论进行落地,请观看数据架构规划设计课程。

2、数据架构在企业中定位

       在讲4A架构关系之前,我们设想一下,如果一个企业不做架构规划,会带来什么问题?我们首先会想到系统肯定是烟囱式建设,形成信息孤岛,数据重复、数据标准不统一,系统之间无法进行集成等一系列的问题。所以企业一定要从企业战略角度出发,构建企业架构,一个清晰的企业架构,才能保证业务流程的相互运转、信息化系统合理支撑、构建步骤有条不紊。企业架构是企业进行项目决策的重要依据,同时也是支撑企业后续发展的重要基石。企业架构对企业说是非常重要的,是实现企业战略的必经之路,企业架构由4大子架构构成,分别是业务架构、数据架构、应用架构、技术架构,如下图:

        它们在关注的方面和功能上有所不同,但是它们是相互关联和相互支持的,共同构成了企业的总体架构。在企业中台建设中,业务架构包括业务战略、业务运作模式、核心业务场景、业务流程以及业务组件,它是从企业战略中梳理出业务价值链,是指明企业要做正确的事。而数据架构、技术架构、应用架构三者合一,是将企业正确的事如何去高效的完成,其中数据架构是核心,通过对企业的数据资源进行规划和设计,可以实现数据共享和数据治理,提高数据的价值和利用效率。应用架构是支持业务和数据处理需要构建哪些应用系统,完成从业务到IT的转换。而技术架构是通过业务架构、应用架构以及数据架构来选型技术,来支持应用系统所需的技术组件。比如:技术框架,PaaS平台,云原生,DevOps,微服务,容器化、部署架构等技术选型 。

3、4A架构关系

        业务架构是通过识别企业战略,分析出核心业务价值链,再梳理出三层业务框架,最后汇到业务能力上;而数据架构是上接业务领域,分数数据需求,形成主题域,最后落到业务对象,而业务架构中的业务能力,是通过数据架构的业务对象进行持久存储和分析的。

应用架构是根据企业核心业务价链中某些需求,比如:客户关系管理需求,设计对应的应用系统,而应用系统中的应用模块的数据需求、数据标准、数据来源都是由数据架构来定义的,需要通过应用模块来支持数据分析。

技术架构是根据业务架构、数据架构、应用架构汇总出来的功能性需求和非功能性需求,来选型技术,支持应用系统研发、运行、维护等工作。

从上图可知四种架构域是层层递进、相互关联的。业务架构定义了“我们需要做什么”,数据架构和应用架构描述了“我们将如何做到这一点”,而技术架构则提供了“我们需要哪些工具和技术来实现这一目标”的答案。当一个组织制定企业架构策略时,这四个域通常需要协同工作,以确保策略的完整性和连续性。那么数据架构长什么样子,下面有个案例,就是一个标准的数据架构。


http://www.kler.cn/a/161383.html

相关文章:

  • 闯关leetcode——3178. Find the Child Who Has the Ball After K Seconds
  • C语言 | Leetcode C语言题解之第556题下一个更大元素III
  • uniapp使用scroll-view下拉刷新与上滑加载
  • K8资源之endpoint资源EP资源
  • C++,STL 054(24.11.13)
  • Springboot 启动端口占用如何解决
  • uniapp 使用 flex布局 将 图片展示 循环排列两列
  • 微信小程序中生命周期钩子函数
  • Python Tornado 框架的终极指南!
  • 交易历史记录20231207 记录
  • chatgpt用到哪些算法
  • 【android开发-14】android中fragment用法详细介绍
  • 简单实现Spring容器(二)
  • linux远程桌面管理工具(xrdp)、向日葵
  • UE4 双屏分辨率设置
  • 浅聊JAVA开发下环境部署与使用工具的安装与部署
  • yml配置文件获取数值不一致
  • ASP.NET Core 使用IIS调试出现505.24错误
  • electron调用dll问题总汇
  • 插件原理与开发
  • Tap虚拟网卡
  • 如何使用 Oracle SQL Developer 连接 pgvector
  • 【蓝桥杯选拔赛真题73】Scratch烟花特效 少儿编程scratch图形化编程 蓝桥杯创意编程选拔赛真题解析
  • Linux 线程——信号量
  • c++实验多态程序设计
  • Linux下安装Docker与Docker Compose