为什么映射数据依赖关系很重要以及如何完成它
已发表: 2022-12-18编者按:本文最初发表于 2021 年 2 月 8 日的 Iteratively 博客。
在某些时候,您将使用杂乱无章的技术堆栈。 也许您的组织在考虑如何与他人互动之前就开始使用新产品。 或者你继承了别人的代码。 映射数据依赖关系将向您和您的团队展示数据如何流动以及如何与堆栈中的系统交互。
公司因数据激增而蒙受损失,并且更容易受到安全漏洞和昂贵法规的影响。
拥有数据依赖关系图不仅可以帮助您更好地了解您的技术堆栈,还可以让您做出更明智的决策。
以下是您可以帮助清理的方法。
依赖映射的好处
乍一看,设置起来似乎需要做很多额外的工作——而且确实如此——但您应该创建数据依赖关系图的原因很明确。
数据依赖图提供数据的整体视图,使数据团队能够设计更好的跟踪计划。 他们还可以确保在更新或删除分析代码时不会破坏任何跟踪系统。 当您在源代码中更改代码及其对下游系统的影响时,这一点尤为重要。 跟踪更改可能对依赖系统产生的影响将节省您和您的团队的时间,因为您可以看到依赖系统可能因更改而中断的位置。
听起来不错,对吧? 制作数据依赖关系图有很多好处。
更好地了解技术环境
精心设计的地图可以让任何人轻松查看系统如何交互,帮助您跟踪哪些系统与数据交互以及数据的去向,一步一步。
这也有助于规划未来的产品或组件,因为您可以看到它们在哪些地方可以帮助数据集成或迁移。
提高准确性
映射出数据依赖关系将帮助您在数据从源移动到目的地时保持数据准确性。 这对建立对数据中心质量的信心大有帮助。
通过让您的团队全面了解您的基础架构和依赖关系,您可以跟踪每个组件如何与其他组件协同工作。
您还可以使用数据依赖关系图来确定应用程序中断的根本原因。 如果您遇到某个应用程序的问题,您可以从它的起源处开始,然后沿着地图返回以查看是否存在特定的根本原因。 它在基础设施中吗? 一个应用程序? 外部威胁?
更容易识别风险
绘制出您的数据依赖关系可以让用户清楚地了解您的技术堆栈,这有助于确定可能使您的业务面临风险的故障点。 如果处理得当,数据映射可以成为您组织的有效工具,因为它通常可以在以下领域帮助公司:
- 数据质量:随着数据源数量的增加,数据映射比以往任何时候都更加复杂。 映射数据依赖关系缩小了数据模型之间的差距,确保决策者可以分析数据何时在整个堆栈中移动。
- 网络攻击和数据泄露:随着公司从数据中获取洞察力,保护用户信息已成为当务之急。 数据映射可以帮助组织确定关键数据集的存储、处理和传输位置。 一旦组织弄清楚了这一点,他们就可以采取必要的措施来保护敏感信息免于落入坏人之手。
依赖映射之前需要考虑什么
当然,您可以制作带有便签的实体地图,但有许多数字工具可以帮助您和您的团队创建数字版本。 但在开始数据映射之前,您应该考虑两件事:
一、确定依赖的方向性
从依赖映射开始时,了解事情将如何失败是至关重要的。 通过确定事情会失败的地方,您可以识别堆栈中的漏洞。 当您可以更快地识别组织内的故障时,您就可以找到解决手头问题的最快方法。 这不仅会节省您的员工时间,而且从长远来看还会为您的组织节省资金。
把事情简单化
虽然数据地图应该是全面的以说明许多数据源,但它们不应该太难理解。 数据映射应包含与您的组织相关的信息并定期更新,但在映射您的依赖关系时无需过度。 复杂的数据映射对您的组织弊大于利。
数据图应该足够简单,外行人也能理解,这样下次您的堆栈出现问题时,同事可以轻松找到问题的根源并在合理的时间内解决。
三种最常见的数据依赖映射技术
虽然数据映射因组织技术堆栈的复杂性而异,但这三种数据依赖映射技术是公司中最常见的。
1. 手动映射
大多数数据系统已经发展到现在过于复杂而无法手动跟踪的程度。 但是,如果您的数据系统很小,并且您不希望系统增长,那么手动映射是一个很好的起点。
对于手动映射,开发人员可以使用 SQL、C++、XSLT 和 Java 等语言。 虽然这个解决方案确实需要大量的前期工作,但它是可以完成的,但它不会像模式或自动映射那样有效。
2.模式映射
模式映射软件将数据源与目标模式进行比较,生成连接。 完成后,开发人员必须手动进入软件并验证信息是否正确,并在需要时进行更改。
数据映射完成后,软件会生成代码来加载数据。 这通常被称为半自动化策略,因为它依赖于团队在继续前进之前仔细检查软件完成的工作。
3. 自动制图
自动化解决方案变得越来越流行,因为它们不需要编码经验。 这些软件用户在数据库之间拖放线,从而更容易在合理的时间内绘制出关系。 虽然这些解决方案完成了大部分繁重的工作,但用户仍然会很好地检查是否存在任何人为错误。
映射数据依赖关系的工具
幸运的是,有许多可用的工具可以帮助您映射数据依赖关系。 以下是我们推荐的一些:
- Datafold:这家数据沿袭公司帮助企业可视化他们的数据生态系统。 它向公司保证,对一个表的架构的更改不会影响其他地方的功能。 虽然该公司为企业提供免费版本,但他们的付费解决方案提供了各种好处,包括 Slack 集成和实时产品内聊天支持。
- Monte Carlo:一种涵盖整个数据堆栈的全自动数据沿袭解决方案,Monte Carlo 会在数据中断时提醒您的组织。 这意味着您可以在问题到达最终用户之前解决问题。 它是一个涵盖整个数据堆栈的全自动解决方案。 Monte Carlo 是一种付费解决方案,允许企业从免费试用开始。
- Datadog : Datadog 的 APM 工具使组织能够了解服务依赖性,同时实时监控它们并在系统停机时提醒用户。 该公司提供长达 14 天的免费试用。
- Prometheus:这个开源解决方案使您能够监控应用程序性能。 该解决方案以其高可靠性和正常运行时间而著称。 Prometheus 会提醒您应用程序行为的任何重大变化,因此您可以立即调查原因。
为什么数据依赖映射可能适合您
任何真正由数据驱动的公司都应该映射其数据依赖性。 映射不当或根本未映射的数据最终会导致下游出现问题,因为数据在您的组织内从一端传输到另一端。 绘制数据依赖关系对企业来说是一项可怕的任务,尤其是当您依赖数据做出明智的业务决策时。
将映射您的数据依赖关系视为您将来会感谢的一项任务。 我们并不完美——无论我们认为当前的解决方案多么完美,数据总会在某个时刻出现故障,你知道吗? 没关系。 映射数据依赖关系的过程将确保当数据确实中断时,它不会导致更大的问题。 花时间规划您的数据依赖关系; 它将为您节省大量时间来寻找其他受故障影响的系统。 正确完成后,数据映射可确保您组织的数据不仅正确而且可靠。
您的组织是否已开始映射您的数据依赖关系? 你有什么经验要分享吗? 加入振幅社区。