magic_sex5 读数据工程之谈: 联想和构建健壮的数据系统06底层联想(下)
发布日期:2024-10-13 09:37    点击次数:126

magic_sex5 读数据工程之谈: 联想和构建健壮的数据系统06底层联想(下)

magic_sex5

1. 数据问责制

1.1. 数据问责制意味着分派一个东谈主来管制一部分数据

1.1.1. 郑重东谈主和解其他利益相干者的治理步履

1.1.2. 如若莫得东谈主对相干数据郑重,那么管制数据质料就会很穷苦

1.1.3. 郑重数据的东谈主不一定是数据工程师

1.1.4. 郑重东谈主可能由软件工程师、家具司理或其他变装担任

1.1.5. 郑重东谈主常常不具备重视数据质料所需的总共资源

1.1.5.1. 他们与总共战争数据的东谈主和解,包括数据工程师

1.2. 数据问责制不错发生在各个层面

1.2.1. 问责制不错发生在表或日记流的级别,但也不错是与出现在多个表中的单个字段实体一样的细粒度级别

2. 数据质料

2.1. 数据质料是数据向理念念现象的优化

2.2. 数据工程师确保总共这个词数据工程人命周期中的数据质料

2.2.1. 触及现实数据质料测试,并确保数据合适阵势预期、数据齐备性和精度

2.3. 准确性

2.3.1. 蚁集到的数据是否真正?是否有肖似值?数值准确吗?

2.3.2. 任何机器东谈主生成的事件齐被诞妄分类为东谈主类存在的数据准确性问题,反之亦然

2.4. 齐备性

2.4.1. 纪录是否齐备?总共必填字段齐包含灵验值吗?

2.5. 实时性

2.5.1. 纪录是否实时可用?

爱色影

2.6. 数据质料进步了东谈主类和本领问题的鸿沟

2.6.1. 数据工程师需要精深的历程来蚁集关连数据质料的可操作的东谈主工反馈,并使用本领器具不才游用户看到之前先检测出质料问题

2.7. 主数据管制

2.7.1. 主数据是关连业求实体的数据,举例职工、客户、家具和位置

2.7.2. 主数据管制(Master Data Management,MDM)是构建一致的实体界说(称为黄金纪录)的现实

2.7.2.1. 黄金纪录协颐养个这个词组织偏激合作伙伴的实体数据

2.7.2.2. MDM是一种通过构建和部署本领器具来促进的业务运营历程

3. DataOps

3.1. DataOps将敏捷交替、DevOps和统计过程收尾(Statistical Process Control,SPC)的最好现实映射到数据

3.1.1. DevOps旨在提升软件家具的发布和质料

3.1.2. DataOps则针对数据家具亦然作念相同的事情

3.2. 数据家具与软件家具的区别在于数据的使用姿色

3.2.1. 软件家具为终局用户提供特定的功能和本领特质magic_sex5

3.2.2. 数据家具是围绕合理的业务逻辑和贪图征战的,其用户不错作念出决策或构建现实自动化操作的模子

3.3. 数据工程师必须了解构建软件家具的本领方面以及将创建优秀数据家具的业务逻辑、质料和贪图

3.4. 竣事

3.4.1. 快速立异和实验,以更快的速率为客户提供新的见地

3.4.2. 极高的数据质料和极低的诞妄率

3.4.3. 跨复杂的东谈主员、本领和环境阵列进行和解

3.4.4. 遵守的了了测量、监控和透明度

3.5. DataOps是一套文化民俗

3.5.1. 数据工程团队需要采用与业务交流和和解、梗阻孤岛、不停从顺利和诞妄中学习以及快速迭代的轮回

3.5.2. 惟有这些文化民俗养成后,团队智力从本领和器具中获取最好的遵守

3.6. DataOps具有三个中枢本领成分:自动化、可不雅测性和监控以及事件响应

3.6.1. 建议率先从可不雅测性和监控运行,了解系统性能,然后添加自动化和事件响应

3.7. 自动化

3.7.1. 自动化可确保DataOps历程的可靠性和一致性,并允许数据工程师快速部署新家具功能和对现存办事历程进行改造

3.7.2. DataOps锻真金不怕火度较低的组织常常会尝试使用cron功课来安排数据调节过程的多个阶段

3.7.3. 跟着组织数据锻真金不怕火度的增长,数据工程师常常会采用编排框架,可能是Airflow或Dagster

3.7.4. 数据工程师意志到Airflow会带来操作办事,但编排的公正最终会越过其复杂性

3.7.5. 每个功课齐不错在上游数据准备就绪后立即运行,而不是在固定的、事前细则的时刻运行

3.8. “拥抱变化”

3.8.1. 并不料味着为了变嫌而变嫌,而所以方向为导向的变嫌

3.9. 可不雅测性和监控

3.9.1. 数据是一个无声的杀手

3.9.2. 可怕的故事是为论述创建数据的系统立地住手办事,导致论述蔓延数天

3.9.2.1. 数据团队在利益相干者商讨为什么论述蔓延或产生古老信息之前并不知情

3.9.2.2. 各个利益相干者对中枢数据团队的智力失去了信任,运行了我方的区别团队

3.9.2.3. 其遵守是好多不同的不安靖系统、不一致的论述和孤岛

3.9.3. 如若你不不雅测和监控你的数据和生成数据的系统,你将弗成幸免地阅历我方的数据恐怖故事

3.9.4. 可不雅测性、监控、日记纪录、警报和追踪关于在数据工程人命周期中提前惩处任何问题齐是至关要害的

3.10. 事件响应

3.10.1. 使用DataOps的高效数据团队将野蛮快速寄托新的数据家具

3.10.2. 数据工程师必须为不幸作念好准备,以尽可能连忙且灵验地作念出响应

3.10.3. 数据工程师应该在业务论述问题之前主动发现问题

3.10.3.1. 失败发生了,当利益相干者或终局用户看到问题时,他们会建议问题

3.10.4. 事件响应既是对事件的追忆响应,亦然在事件发生之前主动惩干事件

4. 数据架构

4.1. 数据架构反应了守旧组织永久数据需乞降政策的数据系统确现时和将来现象

4.2. 数据工程师应该率先了解业务需求并蚁集新用例的需求

4.2.1. 数据工程师需要将这些需求转机为联想新交替去拿获和提供数据,并在本钱和操作肤浅性之间取得均衡

4.2.2. 并不料味着数据工程师即是数据架构师,因为两者常常是两个独处的变装

4.3. 如若数据工程师与数据架构师沿途办事,则数据工程师应该野蛮寄托数据架构师的联想并提供架构反馈

5. 编排

5.1. 编排不仅是DataOps的中枢历程,亦然数据功课工程和部署历程的关节部分

5.2. 编排是和解好多功课以尽可能快速且高效地按照预定节律运行的过程

5.3. 允许编排系统在莫得东谈主为干与的情况下执续感知和监控,并随时运行在部署的新功课

5.4. 编排系统还构建功课历史纪录功能、可视化和警报

5.4.1. 高档编排引擎不错在新的DAG或到DAG添加单个任务时回填

5.5. 编排一直是数据处理的关节功能,但除了大公司除外,常常不是最要害的,也不是任何东谈主齐不错使用的

5.6. Apache Oozie在21世纪10年代至极流行,但它是为在Hadoop集群中办事而联想的,很难在愈加异构的环境中使用

5.7. Facebook在21世纪00年代后期开发了供里面使用的Dataswarm

5.7.1. 这激勉了Airflow等流行器具的灵感,Airbnb于2014年推出了该器具

5.8. Airflow从一运行即是开源的,并被平凡采用

5.8.1. 它是用Python编写的,因此不错高度扩张到险些任何不错念念象的用例

5.8.2. Airflow的到来恰逢数据处理变得愈加轮廓和易于拜谒,工程师们对和解跨多个处理器和存储系统的复杂历程越来越感兴致,尤其是在云环境中

5.9. 编排严格来讲是一个批处理的看法

5.9.1. 编排任务DAG的流式替代决议是流式DAG

5.9.2. 流式DAG的构建和重视仍然具有挑战性,但Pulsar等下一代流式平台旨在权贵松开工程和运营办事

6. 软件工程

6.1. 软件工程一直是数据工程师的一项中枢手段

6.1.1. 应该闪耀软件工程以意会API、索取和调节数据、处理极端等

6.2. 中枢数据处理代码仍然需要编写,况兼蚁合于总共这个词数据工程人命周期

6.2.1. 岂论是在获取、调节如故数据服务方面,数据工程师齐需要闪耀和高效地使用Spark、SQL或Beam等框架息兵话

6.3. 要点如故从径直的数据处理转移到轮廓的道路上

6.4. 流数据处理本色上比批处理更复杂,而且器具和范式不错说还莫得那么锻真金不怕火

6.4.1. 跟着流数据在数据工程人命周期的每个阶段变得越来越多量,数据工程师濒临着酷爱的软件工程问题

6.5. 窗口化允许实时系统诡计有价值的贪图,如尾随统计数据

6.5.1. 数据工程师有好多框架可供遴荐,包括用于处理单个事件的各式函数平台(OpenFaaS、AWS Lambda、Google Cloud Functions)或用于分析流以守旧论述和实时处理的专用流处理器(Spark、Beam、Flink或Pulsar)

6.6. 基础交替即代码(Infrastructure as Code,IaC)将软件工程现实诈欺于基础交替的设置和管制

6.7. 活水线即代码是目下编排系统的中枢看法,它触及数据工程人命周期的每个阶段

6.8. 岂论数据工程师采用哪种高档器具,他们齐会在总共这个词数据工程人命周期中遭遇极点情况magic_sex5,这些情况条目他们惩场所选器具鸿沟之外的问题并编写自界说代码