为什么数据发现很重要?
数据发现是一个面向业务用户的过程,可以通过分析可视化数据并理解不同的模式。然而,访问数据是每个数据科学家、软件开发人员、产品经理或业务分析师每天都会遇到的障碍。
无论我们是数据的生产者还是消费者,数据发现都会影响到我们所有人。要使用和分析数据,我们需要访问数据,但访问数据意味着我们需要知道在哪里存在什么,然后才能分析和操作它,这使得数据发现对于数据专业人员和行业查询数据和做出明智的业务决策至关重要。
为什么是现在?
数据发现领域正在不断变化;我们不能再一次设置模式目录并多次使用它了。这种变化本质上是由于现代数据栈的兴起。今天,公司正在从各种不同的来源收集无数的数据。
将这些动态来源的数据连接到一个地方已经成为一个重大挑战,因为使用这些数据的不再只是一个集中的数据团队。现在,工程师、分析师、营销和销售团队以及其他职能团队都在使用这些数据。
数据的概念也发生了巨大的变化,从数据仓库中的数据表,到消费端的机器学习(ML)模型、分析报告、商业智能(BI)仪表板等,以及生产端的仓库和操作数据库、api等的Postgres/Kafka上游。
此外,将集中式数据仓库迁移到云中,已经改变了从提取、转换和加载(ETL)过程摄取和处理数据的方式,从而将提取、加载和转换(ELT)过程转换为提取、加载和转换(ELT)过程,这给企业留下了更多的数据集。再加上数据网格体系结构的分散所有权和分布式数据访问,数据发现变得比以往任何时候都更加困难。
这种数据的高度专门化和稳定增长导致我们不知道什么数据存在,为什么存在,以及它存在于哪里。所有这些都阻止了组织使用数据,这使得现在解决这个问题变得更加重要。
发现在数据网格中的作用
数据网格的全部概念是认识到我们如何建模、产生和消费数据是解耦的。对于解耦数据,常见的问题是,如果用户需要访问不是他们创建的数据或服务,他们将如何找到它并学会使用它?数据网格的这一部分对数据发现的影响最大。
数据网格将集中的数据划分为数据域,允许用户将高质量的数据产品思维应用到数据的共享上。数据发现本质上是一种在数据网格上启用数据和控制平面的能力,这为发现和标记数据创造了一个更好的环境。
已经有数据网格模型的公司首先需要一个数据发现平台来发现和理解他们的数据,而数据发现就是从数据网格开始的。然后,当团队开始拥有自己的数据的数据将标签和所有权,数据网格允许这些团队邀请其他用户通过民主化对数据的访问,同时保持完整的治理和控制真理的来源与分布式所有权的主要十字路口--这是发现和它在数据网格中的作用。
数据治理还与可见性有关,它为数据团队提供了一个上下文,告诉他们正在进行的工作或其他团队已经做了什么,以消除重新发现或重新构建一切的需要。
关于数据网格的问题和机遇
数据网格与发现使团队了解数据生产成为可能,因此他们不会重复做无头工作。它避免了数据团队必须花费大量时间重新发现元数据的两种常见场景。首先,当企业雇佣新的专家时,这些专家具备数据驱动决策的知识,但缺乏数据背景。其次,当一个业务单元移动到一个不同的单元一段时间后返回时,会发现元数据在这段时间内完全改变了。
在任何给定的时间,组织都运行许多不同的数据模型来将数据记录到仓库中,并使其对用户可用。公司的数据仓库可能有200列和仪表板,它们与一个操作方面有关。这使得用户几乎不可能知道什么是唯一的真相来源。
数据网格中的发现有助于建立数据生产者和消费者之间的平衡,通过以下实践使数据更容易被发现和更可靠:
开源激发了共享所有权
就像在开源社区一样,数据可靠性和发现的所有权取决于与数据交互的每个人。数据发现失败的主要原因是数据没有足够的文档供用户获取值。这种来自开源方法的共同责任感激励用户解决他们发现的数据问题,从而为其他人省去麻烦。
自动化洞察力的集成
数据文档对于更好的发现至关重要,特别是对于产品的生产者来说,但与此同时,它只会创建更多的数据表。我们需要的是自动化来提取现有的、可操作的元数据,以增强发现透视图。用户可以使用自动化的洞察力来培养更好的文档,并创建传承来传播不同的信息。
简化用户体验
理解如何以及在何处使用数据来简化用户体验是很重要的。比如,这些数据主要用于销售报告,还是用于产品分析?一旦数据分析团队或业务智能团队可以定义如何查看数据分类的结构,其他人就可以贡献和维护该协议。简化的用户体验可以帮助文档化过程,或者促进最初的文档化工作,这些工作通常在数据发现时也需要进行。
将数据视为代码
在数据网格社区中,将数据和元数据视为代码是很常见的。当我们创建数据产品时,应该有使其有效的规则/文档,这些规则应该作为构建的系统的一部分应用。它需要有文档,包括合规标签、自动身份检查等。这些集成到数据发现平台中的系统大大降低了产生坏数据的可能性。
以代码为中心的发现
为了实现有效的数据治理(这通常会导致数据遵从性),数据发现应该以用户和代码为中心。它必须具有编程抽象,其中用户的数据发现抽象也适用于代码的数据发现,例如,特性或模型注册表。它们都需要后端,能够在运行时可靠地处理相关查询,这样用户就可以在运行时应用正确的策略,而不是将数据还原。