助推智能体企业 观看 Think 主题演讲

什么是数据工程?

什么是 数据工程?

数据工程是设计和构建用于规模化聚合、存储和分析数据的系统的实践。数据工程师使组织能够从大型数据集实时获取洞察分析。

从社交媒体和营销指标到员工绩效统计和趋势预测,企业拥有所需的所有数据,可以全面了解其运营。数据工程师将大量数据转化为有价值的战略发现。

通过适当的数据工程,组织中的利益相关者——高管、开发人员、数据科学家和 商业智能 (BI) 分析师——可以随时访问所需的数据集。这种访问是可靠、方便且安全的。

组织可以访问的数据和数据类型比以往任何时候都多。每一点数据都可能为关键的业务决策提供信息。数据工程师负责数据管理以供下游使用,包括分析、预测或机器学习。

作为专门的计算机领域专家,数据工程师擅长创建和部署算法、数据管道和工作流,将原始数据整理为随时可用的数据集。数据工程是现代数据平台的必要组件,它使企业能够分析和应用所收到的数据,无论数据来源或格式如何。

即使在分散的 数据网格 管理系统下,数据工程师的核心团队仍然对基础设施的整体运行状况负责。

数据工程用例

数据工程师肩负着一系列日常责任。以下是数据工程的几个关键用例:

数据收集、存储空间和管理

数据工程师简化了整个组织的数据摄取和存储,以方便访问和分析。这种方法通过高效存储数据并建立易于随业务增长而维护的管理流程,从而提升了可扩展性。DataOps 领域实现了数据管理的自动化,这得益于数据工程师的工作。

实时数据分析

有了正确的数据管道,企业就能实现数据收集、清理和格式化流程的自动化,以便用于数据分析。当可以从一个位置访问大量可用数据时,数据分析师可以轻松找到他们需要的信息,以帮助业务领导者学习和做出关键战略决策。

数据工程师创建的解决方案为实时学习奠定了基础,因为数据流入数据模型,而数据模型可以作为组织在任何 特定时刻状态的动态呈现。

机器学习

机器学习 (ML) 使用大量数据来训练 人工智能 (AI) 模型并提高其准确性。 从许多电子商务平台上常见的产品推荐服务,到快速增长的 生成式 AI (gen AI) 领域,ML 算法已被广泛使用。它们的应用在各行各业持续扩展。 机器学习工程师依靠数据管道将数据从收集点传输到用于训练的模型。

数据工程师和核心数据集

数据工程师构建的系统可将海量原始数据转化为可用的核心数据集,其中包含同事们所需的关键数据。否则,最终用户将难以访问和解释分布在企业运营系统中的数据。

核心数据集是为特定下游用例量身定制的,旨在以可用的格式传达所有所需数据,不含多余信息。强大的核心数据集的三大支柱是:

1. 易于使用

数据即产品 (DaaP) 这种数据管理方法强调为最终用户提供可访问、可靠的数据。分析师、科学家、管理人员和其他企业领导者在访问和解读数据时应尽可能少地遇到障碍。

2. 基于情境

高质量的数据不仅仅是当前状态的快照——它还能通过传达随时间的变化来提供背景信息。强大的核心数据集将展示历史趋势,并为更具战略性的决策提供洞察。

3. 全面

数据整合是将整个企业的数据聚合成统一数据集的实践,也是数据工程角色的主要职责之一。数据工程师使最终用户能够根据工作需要组合来自不同来源的数据。

数据工程是如何运作的?

数据工程控制着数据管道的设计和创建,这些管道将原始的非结构化数据转换为统一的数据集,从而保证数据质量和可靠性。

数据管道构成了良好运行的数据基础设施的支柱,而企业的数据架构需求则为其设计提供依据。 数据可观测性是数据工程师监控其管道以确保最终用户收到可靠数据的实践。

数据整合管道包含三个关键阶段:

1. 数据摄取

数据摄取是将各种来源的数据移动到单一生态系统的过程。这些来源可以包括数据库、Amazon Web Services (AWS) 等云计算平台、IoT 设备、数据湖和数据仓库、网站和其他客户接触点。数据工程师使用 API 将许多数据点连接到他们的管道中。

每个数据源都以特定的方式存储和格式化数据,数据可以是结构化的,也可以是非结构化的。结构化数据已经格式化,可以高效访问,而非结构化数据则不然。通过数据摄取,数据被统一到一个有组织的数据系统中,以便进一步完善。

2. 数据转换

数据转换可为最终用户(如管理人员或机器学习工程师)准备摄取后的数据。这是一项卫生活动,可以查找和纠正错误,删除重复的条目并规范化数据,以提高数据可靠性。然后,将数据转换为最终用户所需的格式。

3. 数据呈用

收集和处理数据后,就会将其交付给最终用户。实时数据建模和可视化、机器学习数据集和自动报告系统都是常见数据呈用方法的例子。

AI Academy

数据管理是生成式 AI 的秘诀吗?

深入了解为什么高质量数据对于成功使用生成式 AI 至关重要。

数据工程、数据分析和数据科学之间有什么区别?

数据工程、数据科学和数据分析是密切相关的领域。但是,每门学科都有自己的侧重点,在大型企业中扮演着独特的角色。这三个角色协同工作,以确保组织能够充分利用其数据。

  • 数据科学家利用机器学习、数据探索和其他学科来预测未来结果。数据科学是一个跨学科领域,专注于通过算法和统计模型做出准确的预测。与数据工程一样,数据科学也是一个需要大量编写代码的角色,要求有丰富的编程背景。

  • 数据分析师检查大型数据集以识别趋势并提取洞察分析,从而帮助组织做出数据驱动的决策。数据科学家应用先进的计算技术来处理数据,而数据分析师则使用预定义的数据集来发现关键信息并得出有意义的结论。
  • 数据工程师是构建和维护企业数据基础设施的软件工程师,他们负责实现数据整合自动化、创建高效的数据存储模型,并通过管道可观测性提高数据质量。数据科学家和分析师依靠数据工程师为他们提供工作所需的可靠、高质量的数据。

数据工程师使用哪些数据工具?

一套专门的技能定义了数据工程这一角色。 数据工程师必须精通多种工具和技术,才能优化整个组织中数据的流动、存储、管理和质量。

数据管道:ETL 与 ELT

在构建管道时,数据工程师使用脚本(执行重复任务的代码行)自动执行数据整合过程。根据组织的需求,数据工程师以两种格式之一构建管道:ETL 或 ELT。

ETL:提取、转换、加载。ETL 管道可自动检索和存储数据库中的数据。 原始数据从源中提取,通过脚本转换成标准格式,然后加载到存储目的地。ETL 是最常用的数据整合方法,尤其是在将多个来源的数据合并为统一格式时。

ELT:提取、加载、转换。ELT 管道提取原始数据 并将其导入集中式存储库,然后通过转换使之标准化。收集到的数据稍后可根据使用需要进行格式化,从而提供比 ETL 管道更高的灵活性。

数据存储解决方案

数据工程师创建的系统通常以数据存储解决方案开始和结束:从一个位置收集数据,对其进行处理,然后将其存储在管道末端的其他位置。

  • 云计算服务:熟练掌握云计算平台对于数据工程师职业的成功至关重要。Microsoft Azure Data Lake Storage、Amazon S3 和其他 AWS 解决方案、Google Cloud 和 IBM Cloud 都是广泛使用的平台。

  • 关系数据库:关系数据库根据预定义的关系系统来组织数据。数据被排列成行和列,形成一个表格,表达数据点之间的关系。这种结构使复杂的查询也能高效进行。分析师和工程师使用关系数据库管理系统 (RDBMS) 维护这些数据库。大多数 RDBMS 解决方案使用 SQL 来处理查询,其中 MySQL 和 PostgreSQL 是两种主要的开源 RDBMS 选择。

  • NoSQL 数据库:SQL 不是数据库管理的唯一选择。NoSQL 数据库使数据工程师无需依赖传统模型即可构建数据存储解决方案。由于 NoSQL 数据库不将数据存储在预定义的表中,因此用户可以更直观地工作,无需事先进行规划。与基于 SQL 的关系数据库相比,NoSQL 提供更大的灵活性以及更容易的水平可扩展性。

  • 数据仓库:数据仓库从整个企业收集和标准化数据,以建立单一可信信息源。大多数数据仓库由三层结构组成:存储数据的底层、支持快速查询的中间层和面向用户的顶层。虽然传统的数据仓库模型仅支持结构化数据,但现代解决方案可以存储非结构化数据。通过聚合数据并实时支持快速查询,数据仓库可以提高数据质量,更快地提供业务洞察,并支持数据驱动的战略决策。数据分析师可以从单个界面访问他们需要的所有数据,并从实时数据建模和可视化中获得益处。

  • 数据湖:数据仓库强调结构,而数据湖更像是一种存储大量结构化和非结构化数据的自由形式数据管理解决方案。与数据仓库相比,数据湖的使用更灵活,构建成本也更低,因为它们不需要预定义的架构。它们包含新的原始数据,尤其是非常适合训练机器学习系统的非结构化大数据。但是,如果没有足够的管理,数据湖很容易变成数据沼泽:数据堆积杂乱,难以检索。许多数据湖都建立在 Hadoop 产品生态系统之上,包括实时数据处理解决方案,例如 Apache Spark 和 Kafka。

  • 湖仓一体:湖仓一体是数据管理的下一个阶段。它们弥补了数据仓库和数据湖模型的不足。湖仓一体将数据湖的成本优化与数据仓库的结构和卓越管理相结合,以满足机器学习、数据科学和 BI 应用的需求。

编程语言

作为一门计算机科学学科,数据工程需要对各种编程语言有深入的了解。数据工程师使用编程语言来构建他们的数据管道。

  • SQL (结构化查询语言)是主要的数据库创建和操作编程语言。它构成了所有关系数据库的基础,也可用于 NoSQL 数据库。

  • Python 提供了广泛的预构建模块来加速数据工程过程的许多方面,从使用 Luigi 构建复杂的管道到使用 Apache Airflow 管理工作流。许多面向用户的软件应用程序都使用 Python 作为其基础。

  • Scala 是处理大数据的理想选择,因为它与 Apache Spark 很好地融合。与 Python 不同,Scala 允许开发人员使用多个并发原语进行编程,并同时执行多个任务。这种并行处理能力使 Scala 成为管道构建的 常见选择。

  • Java™ 是 许多数据工程管道后端的常见选择。当组织选择构建自己的内部数据处理解决方案时,Java 通常是首选编程语言。它还支持以分析为重点的仓库工具 Apache Hive。

作者

Ivan Belcic

Staff writer

Cole Stryker

Staff Editor, AI Models

IBM Think

相机、音量旋钮和剪贴板等图标排成螺旋状的 3D 渲染图
相关解决方案
IBM StreamSets

通过直观的图形界面创建和管理智能流数据管道,促进跨混合和多云环境的无缝数据集成。

深入了解流媒体集
IBM watsonx.data™

watsonx.data 支持您通过开放、混合和已治理数据,利用您的所有数据(无论位于何处)扩展分析和 AI。

了解 watsonx.data
数据和分析咨询服务

借助 IBM Consulting 释放企业数据的价值,构建一个可带来业务优势的洞察驱动型组织。

了解分析服务
采取下一步行动

设计数据战略,消除数据孤岛、降低复杂性并提高数据质量,以获得卓越的客户和员工体验。

  1. 深入了解数据管理解决方案
  2. 了解 watsonx.data