2020年的数据工程( 二 )


1.版本控制(Git)和对CI / CD管道的理解
SQL代码是一种代码 , 因此 , 应应用软件工程原理 。
· 重要的是要知道谁 , 何时以及为什么更改代码
· 代码应随附可自动运行的测试
· 代码应易于部署到不同的环境
我是DBT的忠实拥护者-DBT是一种开放源代码工具 , 可将软件工程最佳实践引入SQL世界并简化所有这些步骤 。它的作用远不止于此 , 因此我强烈建议您检查一下 。
2.对现代云数据分析堆栈有很好的了解
我们倾向于坚持使用我们所知道的工具 , 因为它们通常会使我们更有生产力 。但是 , 我们面临的许多挑战并不是唯一的 , 并且今天通常可以更有效地解决 。
首先 , 尝试在云生态系统中导航可能会令人生畏 。一种解决方法是从其他公司的经验中学习 。
许多成功的初创公司都非常开放地介绍其数据堆栈以及他们在旅途中汲取的教训 。如今 , 通常采用一个版本的云数据仓库和其他几个组件来进行数据提取(例如Fivetran或Segment)和数据可视化 。看到一些架构通常足以获得10,000英尺的视野 , 并知道在需要时需要进一步研究的内容 。处理事件或流数据可能是一个全新的概念 。
3.除了SQL以外 , 还知道一种编程语言
这不是一个详尽的清单 , 并且不同的公司可能需要不同的技能 , 这使我到了最后一点……
数据工程师的角色正在发生变化 。
2020年的数据工程文章插图
> Photo by Christina Morillo from Pexels
过去几年中 , 数据处理工具和技术得到了巨大的发展 。他们中的许多人已经发展到可以随数据量的增长轻松扩展的程度 , 同时也可以很好地处理"小数据" 。这可以大大简化数据分析堆栈和使用它所需的技能 。
这是否意味着数据工程师的角色正在改变? 我认同 。这并不意味着它变得更容易-随着技术的进步 , 业务需求也在增长 。但是 , 似乎该角色可能会变得更加专业化或分为几个不同的学科 。
新工具使数据工程师可以专注于核心数据基础架构 , 性能优化 , 自定义数据提取管道和总体管道编排 。同时 , 那些熟悉SQL的人都可以拥有这些管道中的数据转换代码 。例如 , 分析工程学开始成为现实 。该角色位于数据工程和数据分析的交叉点 , 重点在于数据转换和数据质量 。云数据仓库工程是另一个 。
不管职称之间的区别是否会被广泛采用 , 我都认为"传统"数据开发人员具有许多基本技能 , 可以在当今许多与数据工程相关的活动中取得成功-其中包括强大的SQL和数据建模 。通过了解现代云分析数据堆栈以及如何将不同的组件组合在一起 , 学习编程语言并习惯于版本控制 , 这种过渡可以相当无缝地进行 。
(本文翻译自Maria Patrakova的文章《Data engineering in 2020》 , 参考:)