4.0 语境关系图
4.1 F1 数据架构到底包括哪些内容?输出物有哪些?
数据架构三部分内容:组件、组件间关系、设计原则。
输出物:书上与实际有些不一致,书:数据架构设计、数据流、数据价值链、企业数据模型(只包含概念和逻辑模型,不包括物理模型)、实施路线图。
Q:企业数据模型包含概念、逻辑、物理模型?
A:错,物理模型不属于数据架构产物,物理模型属于数据建模产物
TOGAF=The Open Group Architecture Framework 的缩写
Q:有哪些架构?
4 个架构A:业务架构、数据架构、技术架构、应用架构。
Q:十四五规划属于哪个架构?
A:业务架构。
4.2.1 建立企业数据架构
建立企业数据架构通常包括以下工作,这些工作可以串行或并行执行。
1)战略。选择框架,制定方法,开发路线图。
2)沟通与文化。建立沟通机制,并激励积极参与者。
3)组织:通过明确责任和职责来组织数据框架工作。
4)工作方法。与企业架构保持一致,在开发项目中定义最佳实践并执行数据架构工作。
5)结果。在总体路线图中产出数据架构产品。
企业数据架构也会影响项目和系统开发的范围边界。如:
1)定义项目数据需求。通过数据架构为企业提供每个项目的数据
需求。
2)审评项目数据设计。通过设计审评来确保概念、逻辑和物理数
据模型与架构一致,与组织的长期策略一致。
3)确定数据溯源影响。确保数据流在应用中的业务规则一致并且
可追溯。
4)数据复制控制。复制是一种常见的,能够提供改善应用性能和
便于获取数据的方法,但是也有可能导致数据的不一致。数据架构治
理能保证充分的复制控制(方法和机制)来达到所需的一致性(并不
是所有应用要求的严格程度都一致)。
5)实施数据架构标准。为企业数据架构生命周期制定和实施标
准。标准可以表示为原则、流程、指南和规划蓝图。
6)指导数据技术和更新决策。数据架构与企业架构一起管理每个
应用的数据技术版本、补丁和数据技术路线图策略。
重要的是,数据架构师必须能够理解需求与其他整体架构的关
系。当项目范围完成时,数据架构师应该决定:
1)规范中所描述实体是否符合标准。
2)在需求中,哪些实体应该被包括在整体企业数据架构中。
3)规范中的实体和定义是否需要扩大或加深以满足将来的趋势。
4)是否更新了数据架构或者是否向开发人员指出了哪些可以重
用。
企业数据架构项目相关的活动包括:
**1)定义范围。**保证范围和接口与企业数据模型一致。理解项目对整体企业数据架构的潜在贡献、项目的建模和设计、哪些现有组件应该或能够被重用。在需要设计的部分,对项目应该确定项目范围外的利益相关方的依赖性,如下游流程。确定项目共享或重要的数据构件,把它们整合到企业逻辑数据模型和指定的存储库中。
**2)理解业务需求。**获取数据相关的需求,如实体、资源、可用性、质量和痛点,以及评估满足这些需求的业务价值。
**3)设计。**形成详细的目标规范,包括:数据生命周期内的业务规则、验证结果的有效性、需要提供的时间、提升模型的扩展性和改进标准模型等。企业逻辑数据模型和企业架构知识库可用于项目数据架构师查询,为企业内可重用数据结构共享提供很好的支撑。同时,审核和使用数据技术标准。
4)实施。
4.3 Lambda 架构&F3 批流一体架构【DMBOK2 P393 阿里巴巴ODS画错参考第十一章】
基于服务的体系结构(Services-Based Architecture,SBA)正在成为一种立即提供(如果不是完全准确或完整)数据的方法,并使用相同的数据源(Abate,Aiken,Burke,1997)来更新完整、准确的历史数据集。SBA 架构与数据仓库架构有些类似,它会把数据发送到操作型数据存储(ODS)中以实现即时存取,同时也会将数据发送到数据。
仓库中以实现历史积累。SBA 架构包括三个主要的组件,分别是批处理层、加速层和服务层,如图 14-6 所示。
1)批处理层(Batch Layer)。数据湖作为批处理层提供服务,包括近期的和历史的数据。
2)加速层(Speed Layer)。只包括实时数据。【及时存取】。
3)服务层(Serving Layer)。提供连接批处理和加速层数据的接口。
疫情健康码,批量处理上午 10 点完成,晚上 10 点批量对外发布。【不能接受】实时,立刻加载立刻发布,不超过 15 分钟(加速层,发布后数据在ODS层,数据可进一步进数仓或直接销毁),晚上同样的数据走两遍,会加载到数据仓库/数据中台。
ODS 层(完整数据,快速提供数据)不是进入数仓的前提,与数仓是并级(阿里巴巴把 ODS 层作为进入数仓的必须)。
Q:SBA 包含了哪几层?【3 层】
A:批处理层、加速层和服务层。
4.4 Kappa 架构
核心观点:没有必要分为 2 层,所有数据实时处理(带宽足够宽)。
4.5 Zachman 企业架构框架【一般不考,方法论】
6*6 图表,可以帮助我们从多维度来考虑架构,从而避免单一的视图;作为一个模板,可以帮我们快捷的找到各个干系人和触点。
4.6 数据模型复杂的原因
###1.设计本身存在问题。
2.权限未做好,控制权限,并非所有人可以建立表结构。
3.企业兼并(两家企业客户表不一样,目前证券行业有标准模型)。
4.管理架构问题。
(上线之前一定要经过评审,内部专家了解业务,外部专家帮助做横向比较)
1000 个表中有 150 个包含成为行为主体“当事人”实体的信息;无法使用整合顾客概念。
数据重复,一致性,完整性等问题严重。
4.7 数据架构活动-建立企业数据架构
顺序:一般来说,业务架构先做,基于业务做数据架构→应用架构→落实技术架构。
步骤:定义项目数据需求→评审项目数据设计→确定数据溯源影响→控制数据复制→实施数据架构标准→指导数据技术和更新决策。
1. 评估现有架构规范【从文档中获取信息,参考阿里巴巴数据流文档】
ODS(运营数据仓储)EDW(企业数据仓储)。
2. 制定路线图【一般 3-5 年,不要搞 10 年,不现实】
首先了解流程。3
3. 管理项目中的需求实施过程中,企业需求会有变动,但上线后最好不要换需求。
4.8 数据架构开发方式【3 种:瀑布、增量、敏捷】
瀑布:便于数据架构管理活动开展【用的较多】。
增量:确保在早期阶段完成数据模型设计【小瀑布,迭代】。
敏捷:与数据架构师保持紧密联系和沟通【不是数据架构敏捷,而是数据应用敏捷】。
4.9 数据管理组织【理解实际中岗位,仅供参考,考试不考】
4.10 数据架构部门的角色及工作【非常重要】
从企业全局出发,让标准化的数据处理贯穿于整个开发过程:数据架构→数据模型→程序开发→DB 迁移→测试及优化。
4.11 F2 数据湖、数据中台、和湖仓一体
1.数据湖(Data Lake)(参考第 11 章)
数据湖是一种可以提取、存储、评估和分析不同类型和结构海量数据的环境,可供多种场景使用。例如,它可以提供:
1)数据科学家可以挖掘和分析数据的环境。
2)原始数据的集中存储区域,只需很少量的转换(如果需要的话)。
3)数据仓库明细历史数据的备用存储区域。
4)信息记录的在线归档。
5)可以通过自动化的模型识别提取流数据的环境。
数据湖可以作为 Hadoop 或其他数据存储系统、集群服务、数据转换和数据集成等数据处理工具的一种复合配置来实施。这些处理程序使跨基础架构的分析简化软件变得更加便利,从而使配置结合在一起。
数据湖的风险在于,它可能很快会变成数据沼泽——杂乱、不干净、不一致。为了建立数据湖中的内容清单,在数据被摄取时对元数据进行管理至关重要。为了理解数据湖中的数据是如何关联和连接的,数据架构师或者数据工程师通常使用单一键值或其他技术(语义模型、数据模型等),科学家和其他可视化开发人员通过这些技术数据即可知道如何使用数据湖中存储的信息(参见第9 章)。
数据湖(Data Lake)是一个以原始格式存储数据的存储库或系统,它按原样存储数据,而无需事先对数据进行结构化处理。一个数据湖可以存储结构化数据(如关系型数据库中的表),半结构化数据(如 CSV、日志、XML、JSON),非结构化数据(如电子邮件、文档、PDF)和二进制数据(如图形、音频、视频)。数据湖的本质,是由“数据存储架构+数据处理工具”组成的解决方案,而不是某个单一独立产品。
—原文链接:https://blog.csdn.net/qq_43842093/article/details/135188755
2.数据中台
建设在数仓、数据湖之上,更多的是打标签、归类等工作,平台层数据在数仓、数据湖中,在此基础上,建设数据中台【阿里巴巴图是关键】(解决烟囱式开发)。
3.湖仓一体(Data Lakehouse)
数据湖虽然适合数据的存储,但又缺少一些关键功能,比如不支持事务、缺乏一致性/隔离性、不保证执行数据质量等,这样的短板决定了,让数据湖来承载读写访问、批处理、流作业是不现实的。而且,数据湖缺乏结构性,一旦没有被治理好,就会变成数据沼泽。
湖仓一体是一种结合了数据湖灵活性和数据仓库规范性优势的新范式,在基于数据湖的低成本存储上,实现与数据仓库中类似的数据结构和数据管理功能。
数仓:结构化数据进入数仓、ETL、业务场景是明确的,交付物对已经发生的事情的总结或展现,侧重 BI;(但也可以做 AI)。
数据湖: 结构化数据+非结构化数据进入数据湖,ELT,业务场景是不一定明确的,交付物对未知的预测或挖掘,侧重 AI;(也可以做BI)。
数据中台:建设在数仓、数据湖之上,更多的是打标签、归类等工作,平台层数据在数仓、数据湖中,在此基础上,建设数据中台【阿里巴巴图是关键】)。
关系:数据仓库构建了企业级的数据模型,大数据平台在此基础上进行拓展,解决了海量、实时数据的计算和存储问题,而数据中台则是将数据服务化后提供给业务系统,目标是将数据能力渗透到各个业务环节。
Q 战略性数据平台的采购和建设?
1. 战略性(需要长期规划与整体发展)。
2. 数仓、数据湖(目前没有自创的)、数据中台(基于开源软件)。
3. 信创(自主可控,去 IOE:IBM、Oracle、EMC)。
4.. 开源:Hadoop。
5. 上云(上云不一定成本降低,上云速度比美国慢,德国数据打通,中国工业数据上云不到 5%)。