乐趣区

关于oushudb-hawq:OushuDB-小课堂丨数据可观察性-vs-监控-vs-测试

公司在数据和剖析能力上投入了大量资金,为公司内外的人们发明了越来越多的数据产品。这些产品依赖于一堆数据管道,每个管道都是将数据从一个中央传输到另一个中央的软件执行编排。随着这些管道变得越来越简单,重要的是要有工具和实际来开发和调试更改,并在问题对上游造成影响之前缓解问题。数据可察看性、监控和测试都是改良管道的办法,但它们并不相同。

如果您对这三个概念之间的关系感到困惑,请持续浏览。本文将通过答复以下每个问题来解释和比拟数据可察看性、监控和测试:

它是什么?
你为什么须要它?
哪些工具提供它?
数据可察看性
首先,您将理解数据可察看性以及为什么须要它。

什么是数据可观测性?

数据可察看性是一种更残缺、更全面的数据品质办法,通常是数据成熟度的一个提高 数据管道.

数据可察看性超过了传统的监控能力,并通过应用监控各种数据指标的智能工具来致力缩小数据不牢靠的工夫,并帮忙排查和考察数据品质问题,以缩小均匀检测时间 (MTTD) 和均匀解决工夫(MTTR) 这些问题。

数据可察看性工具以 ML 驱动的异样检测模型的模式提供特定类型的智能,能够自动检测问题。

与监控已知问题的数据测试和数据监控不同,数据可察看性能够在没有任何先入为主的规定和策略的状况下察看数据模式并检测问题。

此外,数据可察看性能够跟踪模式和数据值的变动,并将其用作预测数据将来行为的情报。它通常以度量阈值的模式提供这些预测。例如,依据行计数的察看值,该工具将预测一个潜在范畴,如果数据超出该范畴,数据可察看性会创立并发送警报。

古代数据可察看性工具能够与您的数据堆栈深度集成,以深刻理解 数据品质 以及管道在每一步的可靠性,并作为数据管道的管制立体。这种能力在纯数据测试或数据监控中是不具备的。

为什么须要数据可察看性?

数据产品、剖析报告和基于 ML 的算法通常依赖于来自多个源零碎和数据转换工作流的输出。如果一个发生变化或呈现故障,它可能会毁坏所有上游依赖性。

更改数据管道就像解决 Jenga 塔一样。扭转一件,整个事件就会解体。

数据可察看性有助于数据所有者理解和解决数据管道内的任何意外问题,这些数据管道为开发和生产环境中的上游数据产品和应用程序提供数据。应用数据可察看性能够避免不牢靠的数据流过管道。

例如,假如与您的应用程序的交互作为半结构化日志存储在 无 SQL 数据库,例如 MongoDB;数据通过 Apache Beam 提取并存储在 Amazon S3 存储中。接下来,Snowflake 中的存储过程查问这些日志并将它们加载到 表格格局 在暂存架构中。最初,dbt 解决数据并将其增加到生产模式中的数据模型中。Apache Airflow 协调整个过程。

因为六个零碎顺次解决数据,因而数据可察看性能够独自监控每个零碎并整体监控流程。能够对流程进行编程,以应用来自数据可察看性工具的数据品质信号和警报来开票、标记不良数据以供未来补救或齐全进行管道。

数据可察看性工具

能够构建本人的数据可察看性平台。然而,这意味着不仅要施行数据验证测试,还要增加趋势剖析、继续监控和数据品质后果剖析,在顶部创立可视化层,并施行用于异样检测的 ML 性能。

如果这看起来工作量很大,那的确是。这就是为什么供应商提供大部分开箱即用的性能。然而,在这些工具中,存在相当大的差别。有些只能察看剖析和基于 SQL 的源,而其余的则 集中数据可察看性 可能监控数据管道中所有零碎和起源的数据,无论其构造如何。此外,数据质量指标的计算形式可能会给您的云数据仓库和存储系统带来额定的解决老本。将不将计算下推到数据库的平台与那些将计算下推到数据库的平台辨别开来,并思考您的 TCO。

数据监控

通常,数据监控与数据可察看性用在同一句话中。然而,两者之间存在差别。

什么是数据监控?

数据监控是超过数据测试的一步,通常在构建新的数据管道或对管道进行更改时进行数据测试时施行。在数据测试到位以在正确的点对数据进行功能测试之后,您将须要一个监控零碎来持续进行。

数据监控是一种实际,在这种实际中,依据可承受的阈值一直检查数据的预定义数据指标,以收回问题警报。适当的数据监控应该从可察看性开始,辨认数据模式和未知问题的异样,并从那里定义和设置须要测量和监控的内容。没有可观测性的数据监控,只能显示外表问题;数据可察看性提供了对继续问题的更深刻了解。

您能够将监控称为整体监控,因为它超过了数据测试,并且随着工夫的推移比拟指标会产生您无奈从繁多数据测试中取得的模式和见解。

为什么须要数据监控?

当您须要跟踪的内容很显著时,数据监控是正确的抉择。如果您监控特定的数据工件并确切晓得该数据随工夫的变动状况,您能够设置规定来监控它并设置警报以获取告诉。

哪些工具提供数据监控?

通常很难本人找到这类工具,局部起因是一些数据监控工具曾经从数据可察看平台从新定位,而没有数据可察看性的残缺性能,局部起因是数据监控在技术上是数据可察看性的一个子集。

对于一个简略的解决方案,设置数据监控能够像为 Plotly 图表提供指标一样快,条件格局会在达到阈值时发生变化。或者,您能够应用 数据验证规定 在继续的根底上并逐步建设用于自动检测异样值和异样的基线,这将导致您的数据可察看性实际。

数据测试

前两个概念能够帮忙您掂量数据品质,而这个概念能够帮忙您确认它。

什么是数据测试?

数据测试或“数据品质测试”验证您对假如的理解,这些假如须要放弃实在能力按计划解决数据。咱们能够将测试分为两类:

数据的外观:数据类型、空值、格局等。
业务规定:惟一的电子邮件地址、客户年龄等。
谬误的数据须要特定的操作,包含标记它、以不同的形式解决它、存储它以供当前解决或触发申请人工干预的告诉。

有许多 数据品质的维度 您能够测试的内容,包含以下内容:

数据有效性:要存储日期或工夫,它们须要采纳正确的格局。如果预期为“YYYY-MM-DD”,则“MM/DD/YY”字符串可能会被误会。其余常见测试查看 NULL 和数据类型。
数据唯一性:表中的两行不应雷同。
数据完整性:在不过滤或转换的状况下挪动数据应该导致指标中的行数与源中的行数雷同。
数据一致性:如果多个中央的数据在应该雷同的时候不雷同,那么它就是不统一的。例如,当电子商务平台和 CRM 中存在客户档案时,两个中央的地址应该雷同。

为什么须要数据测试?

无论您是抓取网络、应用传感器还是从关上的文本字段收集用户输出,数据损坏的形式有很多种。这可能会毁坏要害业务模型或扭曲重要报告等问题。构建为业务应用程序、剖析甚至数据产品提供数据管道的要害局部是测试数据的准确性、有效性和新鲜度。

哪些工具提供数据测试?

首先,数据测试能够很容易地用 vanilla Python 编写。条件语句 或断言能够解决简略管道的问题。然而,对于大型项目,您须要使测试易于治理。

这就是为什么大多数可察看性平台都提供一些框架来执行数据测试的起因。

论断

数据可察看性、数据监控和数据测试可能是独立的概念,但正如您在本文中所见,它们是交错在一起的。

数据可察看性是数据畛域内一种绝对较新的实际,是一组能够帮忙通过内部症状预测和辨认数据问题的措施。通过解决互相关联的数据管道的输入和数据工件,它能够检测异样并指出导致异样的起因。

数据监控是可察看性的一个子集,是一种一直检查数据是否合乎可承受阈值的预定义数据指标的实际。它只是确认存在异样。

数据测试掂量空查看等格局或业务规定等验证,以将您的数据与指定的假如列表相匹配。每个测试的范畴都是无限的,并且独立于其余测试运行。

在现实状况下,您能够开发所有这三种办法来检测每一个可能的数据问题,但您组织的资源并不是无穷无尽的。依据您的须要应用正确的工具将帮忙您保护高质量的数据,同时集中您的资源和精力。

退出移动版