发布日期:2024 年 6 月 19 日
撰稿人:Molly Hayes、Amanda Downie

什么是数据转换?

数据转换是数据集成流程中的关键组成部分;其中,原始数据会转换为统一的格式或结构。数据转换可确保与目标系统的兼容性,并提高数据质量和可用性。它是数据管理实践的一个重要方面,其中包括数据整理、数据分析和数据仓储

虽然专家可以手动实现数据转换,但为现代企业应用程序提供支持所需的大量数据通常需要一定程度的自动化。在转换数据过程中部署的工具和技术可以是简单的,也可以是复杂的。

数据转换可能十分简单,例如:将一个日期字段(例如:MM/DD/YY)转换为另一日期字段,或是将一个 Excel 列一分为二。但是,复杂的数据转换(用于清理和标准化来自多个不同来源的数据,并由多个工作流程组成)则可能涉及数据科学高级技能。

此类先进的数据工程功能包括数据规范化(可定义数据点之间的关系)和数据扩充(利用第三方数据集来补充现有信息)。

在当今数字优先的全球经济环境下,数据转换可帮助组织利用来自不同来源的大量数据来改进服务、训练机器学习模型以及部署大数据分析

数据转换用例

通过将数据集标准化并为后续处理做好准备,数据转换可使多项关键的企业数据实践成为可能。在商业领域中,进行数据转换的常见原因包括:

商业智能

组织将数据转换用于商业智能应用程序(如实时仪表板和预测报告),从而实现考虑大量信息的数据驱动决策。 

数据仓储

数据转换准备在数据仓库或数据湖中存储和管理数据,以便高效查询和分析。 

机器学习

机器学习模型需要干净、有条理的数据。确保数据可信且格式正确,组织可以使用它来训练和调整人工智能 (AI)工具。

大数据分析

在对大数据进行商业智能、市场研究或其他应用分析之前,必须进行适当的整理和格式化。

数据迁移

将数据从本地旧系统迁移到云数据仓库或湖仓一体等现代平台通常涉及复杂的数据转换。

数据转换流程

数据转换通常遵循结构化流程,以便从原始数据生成可用、有价值的数据。数据转换流程的常见步骤包括:

1. 数据发现

在发现过程中,要收集源数据。此流程可能包括以不同格式从 API、SQL Database 或内部文件中获取原始数据。在识别和提取这些信息时,数据专业人员确保收集的信息全面且与其最终应用相关。在发现过程中,工程师还开始通过一种称为数据剖析的过程来了解数据的特征和结构。

2. 数据清理

数据准备和清理需要识别和修复原始数据中的错误、不一致和不准确之处。此步骤通过删除重复项和异常值或处理缺失值来确保数据质量和可靠性。 

3. 数据映射

数据映射涉及创建架构或映射过程来指导转换过程。在此过程中,数据工程师要确定源系统中的元素如何与目标格式中的特定元素相对应。 

4. 代码生成

无论是使用第三方工具,还是通过内部生成代码,组织都会在此步骤中创建用于转换数据的代码。 

5. 代码执行和验证

在此阶段,当代码应用于原始数据时,就会发生实际的转换。将转换后的数据加载到目标系统中,以便进行进一步分析或处理。然后对转换后的数据和数据模型进行验证,确保一致性和正确性。

6. 审查

在审查期间,数据分析师、工程师或最终用户会审查输出数据,以便确认其符合要求。

ETL 数据转换对比 ELT 数据转换

ETL(提取、转换、加载)和 ELT(提取、加载、转换)是两个经常使用的数据转换流程,它们部署略有不同的数据管道技术。每种方法都有优点和缺点,具体取决于转换的规模和复杂性。

提取、转换、加载:暂存区中的数据转换

ETL 流程中,会从其来源中提取预先确定的一部分结构化数据,然后在暂存区或二级处理服务器中进行转换,然后再加载到目标系统中。ETL 更适合本地存储和较小的数据集。但在具有特定数据质量和一致性需求的场景中,ETL 可能更为可取,因为它可引入更严格的数据清理与验证步骤。迁移期间,也可能需要 ETL 来保护敏感数据,例如受 HIPAA 保护的信息。

提取、加载、转换:在云中转换数据 

在 ELT 流程中,从数据源中提取信息并将其加载到基于云的目标系统中并在其中进行转换。这种方法利用了云计算能力,通常允许更快的处理和更敏捷的数据管理。它也可以与图像等非结构化数据一起使用。借助基于云的计算和存储能力的优势,ELT 流程受益于增强的可扩展性。

数据转换类型

数据科学家和工程师会在整个数据转换流程中使用多种技术。采用哪些计策完全取决于具体项目和数据的预期用途,但作为复杂流程的一部分,可能会同时使用几种方法。

  • 数据清理:数据清理通过纠正错误和不一致之处(例如消除重复记录)来提高数据质量。
  • 数据聚合:数据聚合可通过将多条记录组合成一个值或数据集来汇总数据。
  • 数据规范化:数据规范化可对数据进行标准化处理,以使所有值均采用通用的比例或格式,例如介于 1 到 10 之间的数值。
  • 数据编码:数据编码可将分类数据转换为数字格式,以便其更易于分析。例如,数据编码可能会为每个类别的数据分配一个唯一编号。
  • 数据扩充:数据扩充通过添加外部来源的相关信息(如第三方人口统计数据或相关元数据)来增强数据。
  • 数据插补:数据插补可用合理的值替换缺失的数据。例如,它可能会用中位数或平均值来替换缺失的值。
  • 数据拆分:数据拆分可按不同目的将数据划分为若干子集。例如,工程师可能会拆分一个数据集,以将其中一个用于训练,另一个则用于机器学习领域的测试。
  • 数据离散化:在数据离散化过程中,将数据转换为离散的存储桶或间隔,这个过程有时称为“分箱”。例如,医疗机构可能使用离散化技术将患者年龄等数据转化为“婴儿”或“成人”等类别。
  • 数据泛化:数据泛化将大型数据集抽象为更高级别或汇总形式,从而减少细节并使数据更易于理解。
  • 数据可视化: 数据可视化以图形方式表示数据,揭示可能并不显而易见的模式或洞察分析。 
数据转换工具

虽然可以仅通过部署内部工程师来执行数据转换,但许多第三方服务有助于简化转换和迁移流程。一些最常见的媒介或方法包括:

  • ETL 和 ELT 工具:Apache NiFi 和 Informatica 等工具可促进即插即用式 ETL 或 ELT 流程。
  • 数据集成平台:IBM® Cloud Pak for Data 等一系列工具支持数据集成和实时处理。
  • 数据准备工具:这些工具专门用于数据转换或迁移前的数据清理和转换。
  • 编程语言:Python 和 R 等编程语言以及开源 pandas 等库为数据转换提供强大的功能。
数据转换的优点

数据转换是数据处理中的关键步骤。它可以提高组织的分析、报告、决策和存储能力。主要优点包括:

提高数据质量

数据转换包括数据清理(可提高数据集的整体质量)等流程。借助更好的数据和明确定义的数据架构,组织可提高库存管理和订单处理等领域的运营效率。此外,更好的数据还可改善客户体验,从而提供当前与潜在消费者的全方位视图。

增强数据兼容性和集成

数据转换可对数据格式和结构进行标准化,以便简化将信息集成到内聚数据集中。通过打破数据孤岛并统一来自不同部门或系统的信息,组织可消除不一致问题并获得统一的企业视图。

改进数据可视化

通常,转换后的数据更有条理、更有结构,从而更容易创建有意义的可视化效果,有效地传达洞察分析。可视化有助于决策者识别趋势或机遇,并可近乎实时地呈现关键数据,例如销售或采购渠道。

更好的数据可访问性

数据转换将复杂或非结构化数据转换成更易于理解、访问和分析的格式。组织使用这些数据来创建高级市场预测或确定需要改进的领域。

增强安全性和合规性

数据转换可能包括数据匿名化和加密、保护敏感信息以及遵守隐私法规。对于医疗保健和金融等受到严格监管的行业以及在多个地区开展运营且存在不同隐私法的组织来说,此安全性依然至关重要。

更好的可扩展性和灵活性 

转换后的数据通常更为灵活且更易精简,从而使其更易适应新的用例或随着数据量的增长而对数据处理进行垂直扩展。可扩展的数据可确保组织在不进行多次昂贵的重组和 IT 实施的情况下实现增长。

相关解决方案和产品
IBM 数据和分析咨询

揭示企业数据的价值,通过 IBM Consulting 构建一家以洞察分析为导向的组织,实现业务优势。

深入了解 IBM 的数据和分析咨询服务

IBM DataOps 平台

借助 IBM DataOps 平台,组织可消除以数据为中心的团队与以开发为中心的团队之间的区别,从而提高从错误修复到目标设定等各个方面的效率。

深入了解 IBM 的 DataOps 平台

IBM 数据管理

借助 IBM 数据和 AI 解决方案,组织可在不牺牲数据安全性或质量的情况下,使用企业数据来提高弹性、可靠性和成本效益。

深入了解 IBM 的数据管理产品

IBM watsonx.data

IBM watsonx.data 可帮助组织利用其所有数据来扩展 AI 和分析,而无论这些数据位于何处。

深入了解 IBM watsonx.data

IBM Data Fabric 产品

Data Fabric 等现代数据架构可以帮助塑造和统一数据驱动型企业,指导决策并提高数据治理和集成的质量。

深入了解 IBM Data Fabric 产品
采取后续步骤

使用面向 AI 构建器的新一代企业级开发平台 IBM watsonx.ai,可以训练、验证、调整和部署生成式 AI、基础模型和机器学习功能。使用一小部分数据,即可在很短时间内构建 AI 应用程序。

深入了解 watsonx.ai 预约实时演示