数据重复的影响和解决方案

Michael Hickins | 内容策略师 | 2024 年 9 月 4 日

数据重复是一个简单的概念:任何数据在组织基础设施的某个地方都有一个或多个完全重复的数据。它可以是数据库中的记录、存储卷中的文件或 VM 映像。就其本身而言,重复似乎是良性的,甚至是有益的。谁不喜欢额外的副本?但是,当扩展到企业规模时,问题的范围变得清晰。几乎每个现代设备都会定期生成数据、备份和归档文件,文件也会在多个平台上共享,因此数据重复已从一种烦恼发展成为了巨大的成本和技术负担。解决问题首先要了解数据重复的发生方式和原因。

什么是数据重复?

数据重复是指创建一个或多个相同版本数据的过程,可以是有意的(例如计划备份),也可以是无意的。重复数据可能以数据库或其他数据类型的文件、VM 映像、块或记录中存储的数据形式存在。无论出于何种原因,数据重复都会浪费存储空间,随着数据存储规模的增长,成本也在增加。它也可能导致数据管理问题。例如,如果文件的所有副本未同时更新,则不一致可能会导致分析错误。

与数据重复相关的是数据冗余,或者具有多个记录以充当数据主要版本的冗余安全网。与数据重复相反的是数据去重,这需要消除重复数据以释放资源并删除可能过时的副本。

关键要点

  • 重复数据是指网络中文件或数据库记录的确切副本。这往往是由于缺乏沟通、流程过时以及未能遵循文件共享的优秀实践。
  • 重复性数据可能会不必要地占用资源,例如存储空间和处理能力。
  • 重复性数据还会使分析结果发生偏差,例如两次提供相同的销售记录。
  • 组织有意创建重复性数据(作为备份和归档),并且无意中通过多次下载、复制/粘贴错误或重复数据输入来创建重复性数据。
  • 处理所有表单中的重复性数据会产生巨大的成本负担,包括直接使用资源,以及员工必须纠正账单和采购订单中的错误或采取基于重复性数据的其他操作时间接使用资源。

数据重复详解

数据重复不一定是件坏事。故意复制的数据可以带来显著的好处,包括易于访问的备份、全面的存档以及更有效的灾难恢复。但是,想要获得这些好处而不会产生不必要的成本,需要制定策略,执行备份并定期按计划进行数据去重。否则,重复性数据轻则会占用额外的存储空间,重则会混淆用户和影响数据分析。

虽然术语“数据重复”和“数据冗余”通常可以互换使用,但存在差异。数据重复并不一定是故意产生的,有时是人或机器因粗心或出错造成的。然而,从工程角度来看,冗余的概念是为了在出现问题时建立安全网。这时就需要进行有意的复制。冗余本身就是强大的工程实践的基石,尽管确实有可能造成过度冗余。在这种情况下,即使额外的一组重复项是有目的生成的,它们对于它们使用的资源量也提供有限的值。

为什么会发生数据重复?

人类和自动化流程可能会以多种方式造成数据重复。在文档的修订过程中,大多数人都会保存多个版本,每个版本的名称略有不同,而且通常改动很小,例如“salesreport_final.docx”和“salesreport_final_v2.docx”等等。一旦报告真正定稿,这些内容一般不会被删除。或者,一个文件可能会通过电子邮件发送到整个组织,两个不同的人会将同一版本保存在共享驱动器上的不同位置。某个应用的 .exe 或媒体文件可能会被下载多次,虚拟机实例也可能会保存在多个位置。同样,在数据库中,相同的数据可以输入两次。客户或员工可能上传了两次信息,可能由多人导入文件或者是手动录入。当不同部门在本地应用或具有兼容文件类型的不同应用上创建相同的记录(如客户信息)时,也会发生此类重复的情况。这意味着您可能具有不同备份版本的冗余副本,这些副本本身可能是重复的。

组织的数据驱动程度越高,重复问题就越严重。大数据可能导致存储过量而产生高昂的成本。自动化也可能创建重复性数据。在这种情况下,自动备份过程可能会创建具有冗余意图的重复文件。但是,当同一文件多次备份时,会出现问题。不必要的冗余级别会导致存储使用效率低下。

通常情况下,意外事件会导致数据重复。例如,如果在备份过程中发生断电或自然灾害,则备份可能会重置,并在已写入一些文件后重新启动该过程。硬件故障也会造成类似问题,导致在备份或归档过程中出现计划外的重复。

数据重复的类型及其影响

数据重复不一定是件坏事。IT 团队需要了解数据重复是否是故意的,有多少资源用于存储重复性数据,以及目前的成本有多高。在第二代归档中,包含指向完全克隆副本的指针的有意第三代归档文件的情况与共享驱动器中同一巨型 PowerPoint 文件的多个已保存实例完全不同。

下面是常见的数据重复类型及其可能对您的组织产生的影响。

  • 浅层复制:在复制数据时,浅层复制会创建一个新对象,但该对象并不完全克隆数据,而是包含指向原始对象的引用指针。虽然这占用了更少的存储空间,但查询需要另外执行一个步骤来获取源数据。此外,从本质上讲,复制件与原始件同步,因此对原始件的任何更改都会反映在复制件上。如果重复项用于捕获特定状态而不是充当动态重复项,则可能会导致出现问题。

  • 深层复制:通过深层复制,将创建新对象作为完整且未更改的数据克隆。新对象需要与原始对象相同的存储空间量,这意味着深层复制会消耗比浅层复制更多的存储空间。尽管存在此缺点,但深层复制具有提供独立冗余的优势 — 如果源文件发生任何故意或意外情况,深层复制有助于确保能够进行灾难恢复的干净备份。
  • 数据碎片:数据碎片是指将数据文件的段存储在不同位置的过程。虽然这可以通过基于访问频率或容量写入段来提高存储效率,但查询文件通常需要更长的处理时间和资源,因为系统必须查找段并编译完整文件。进行恢复时,碎片化可能会导致问题。例如,机械故障或连接故障可能导致复制不完整。或者,基于位置的故障可能仅损坏某些片段,从而损坏备份或归档进程。
  • 逻辑复制:逻辑复制与浅层复制类似,因为它使用引用来提高复制过程的效率。在维护备份系统时,逻辑复制将一致性视为发布者/订户模型,发布者是源,订户是特定数据量(通常由地址标识)的目标。当发布者进行指定地址范围内的源更新时,订户数据更新将保持同步。为了充分提高效率,订阅范围之外的更新会被忽略。
  • 物理复制:物理复制是一种数据库复制形式,在有条不紊的逐字节进程中复制数据。与逻辑复制不同,这是一个更慢、更全面、资源密集型的模型,也创建了更多的重复版本。

数据重复的成本

重复数据会给硬件、带宽、维护和数据管理带来额外的负担,所有这些都会带来大量不必要的成本。在某些情况下,问题很小;但在不理想的情况下,结果可能是灾难性的。以下是数据重复影响数据科学的一些方式。

存储空间。这是数据重复的直接成本。冗余副本消耗了本地硬盘、服务器和云存储上的宝贵容量,从而导致更高的成本。想象一下,一个部门拥有 10 TB 的数据,10% 是重复的。这意味着浪费了数 TB 的存储空间,可能会带来巨大的成本,特别是如果它位于基于云技术的主存储而不是归档存储中。

数据去重工具。另一个硬成本,数据去重工具可以清除存储卷中的重复项。这些服务和工具通常基于每个记录的卷。因此,需要删除的重复性数据越多,成本就越高。

倾斜数据。重复的记录会产生不准确的指标,从而导致数据分析和可视化出现错误。例如,假设一个新客户被输入两次到名称稍有不同的销售数据库中,或者两个管理员输入了相同的采购订单。

上述每个要素也需要昂贵的工作人员工作。必须维护存储卷。需要评估、购买和运行数据去重系统。如果数据有偏差,就需要删除记录和清理数据库。如果不良数据转发到进一步的报告或通信中,则所有后续工作都必须回溯和撤消,然后进行修复。

数据重复导致的问题

如果不加以控制,无意中复制的文件和数据库记录可能会导致整个组织出现问题。以下是数据重复出现的一些常见的问题。

  • 数据质量问题:当数据符合组织的准确性、完整性、及时性和目的标准时,数据将被视为高质量数据。当重复数据激增时,这些因素中的每一个都可能受到损害,生成的报告或分析将不那么准确。允许的重复时间越长,组织的整体数据质量就越差,任何类型的分析都会产生问题,无论是后瞻性审查还是前瞻性预测。
  • 降低员工效率:追踪和纠正重复数据花了多少时间?当一个组织任由重复性数据堆积起来时,工作人员会在两次或三次检查报告和记录以及消除或纠正问题上浪费数小时、数天甚至数周的时间。必需进行的修复工作可能包括
    • 更新记录
    • 跟踪共享服务器上存在相同文件的多个版本
    • 检查报表的统计信息如何被重复信息扭曲
    • 追踪谁查看了包含错误数据的报告
  • 生成准确报表和分析的难度:决策者从您的报表和数据分析中获得的洞察有多大?通过重复数据(或者实际上是任何低质量数据),您的报告可能会引导公司走向错误的方向。因此,存在已知重复数据问题的组织必须通过额外的预报告数据清理或弥补已知数据短缺来处理大量的人力工作。
  • 无法满足监管要求:重复数据可能难以遵守监管准则,这些准则通常强调需要全面的数据管理。监管机构可能要求组织提交关于其财务数据的报告,例如,重复数据可能导致这些报告中的信息不准确或不一致,可能导致罚款或处罚。监管要求通常要求采取强有力的数据安全措施,并能够及时识别和报告违规行为。如果敏感数据(例如客户信用卡)存储在多个位置,则很难执行此操作。最后,《通用数据保护条例》和《加州消费者隐私法》等法规授予个人访问、更正或删除其个人数据的权利。重复的记录会使查找与特定个人关联的所有相关数据变得困难,从而妨碍合规性。
  • 库存成本增加:重复数据可能导致库存成本增加,因为组织要么争先恐后地重新进货库存,以解决数据不准确导致的短缺问题,要么处理重复记录生成的库存过剩问题。如果没有干净的数据,真正的精益操作将变得不可能。
  • 糟糕的业务决策:组织在做出数据驱动的决策时能够蓬勃发展。但是,当这些数据被重复数据损坏时,会根据虚假伪装做出决策。其结果可能包括被忽视的小问题、需要抓紧时间补救的问题或者是为时已晚的灾难性决策。
  • 糟糕的客户服务:当客户与贵公司交互时,分散在多个重复记录中的信息会使服务座席难以全面了解其历史记录。您的座席可能缺少有关客户过去购买、支持单或通信历史记录的关键详细信息。这会妨碍您提供个性化和高效服务,当有价值的客户疑惑“为什么座席不知道我的故事?”时,就会影响他们对品牌的认知。
  • 可见性降低:网络可见性是指企业了解其网络中所有流量和数据的概念。重复性数据会在多个层面影响这项工作,例如:
    • 创建不准确的数据日志
    • 延长备份/归档过程并消耗过多的存储
    • 网络性能和传输指标偏差
    • 浪费处理和带宽资源

防止数据重复的策略

通过共享驱动器、物联网设备、导入的公共和合作伙伴数据、分层云存储、更强大的复制和灾难恢复以及无数其他来源,企业拥有的数据比以往任何时候都多。这带来了更多的重复机会,这意味着组织应该优先考虑战略,以尽可能减少创建重复的数据,并在传播时消除重复数据。

实现这个目标的一些常见的策略如下:

  • 强制执行数据验证规则:将数据导入存储库(如数据湖或数据仓库)时,请借此机会清理和验证该数据。在摄取阶段执行数据验证会限制对在源上游创建的任何重复数据的接受。IT 部门应配置一个流程来创建和实施规则,以便在摄取工作流中识别和消除重复数据。
  • 建立唯一标识符:数据库可以对记录应用唯一标识符,以帮助确保不生成重复版本。例如,在客户账户的实例中,唯一标识符可以是客户标识号或账号的新字段。然后,当销售和营销团队与客户合作时,可以使用该账号,从而防止商机意外地使用相同的客户名称创建另一个记录。
  • 执行定期审计:定期使用重复数据删除工具是有效的 IT 维护策略的智能部分。虽然数据去重过程的有效性将根据情况而变化,但该过程的常规频率有助于确保重复项始终被捕获并保持在低水平。
  • 使用可重用代码库和框架:对于应用程序开发,开发人员可以实施可重用代码库和框架来简化自己的工作,同时帮助减少重复代码。该计划创建了一个函数和其他可重用元素的存储库,有助于确保开发人员使用模块化资产,而不会生成重复代码或冗余工作。
  • 利用数据库约束条件:数据库经理可以建立约束条件,以防止某些字段出现重复记录。例如,在具有客户记录的数据库中,系统可以在客户名称字段上使用唯一约束条件,这有助于确保所有客户名称都是唯一的,从而尽可能减少有人意外创建可能污染销售数据的重复记录的风险。

消除数据重复的好处

随着组织变得越来越数据驱动,消除重复数据变得越来越必要和有益。采取主动措施尽可能减少冗余,可以优化存储基础设施,提高数据管理效率,提高合规性,并为其他优先事项释放资金和员工资源。

以下详细介绍了数据去重的一些常见的好处:

  • 降低存储成本:通过消除重复数据,您可以减少企业需要支付的云存储量,降低为自有数据中心购买新硬件的需求。这样可以节省两种类型的成本。在直接层面上,企业可以放慢购买周期。然而,间接使用更少的数据存储,IT 团队可以更高效地监视和维护资源状态,从而节省整体维护和间接费用。
  • 提高数据准确性:重复数据会产生各种准确性问题。客户的重复数据库记录可能导致两个不同的部门更新同一记录,从而造成混乱。同样,分析报告的准确性也会被冗余数据所扭曲。
  • 增强的整体客户体验:当公司拥有准确、完整、清晰的客户数据时,客户满意度往往更高,品牌认知度也更佳,销售量也更高。通过避免将采购历史记录分配给不同的重叠记录,可以提高推荐引擎和后续营销工作的准确性。
  • 提高员工工作效率:不准确数据带来的另一个影响可能会降低员工工作效率。也许不同部门的员工会浪费时间试图跟踪报告中的不准确来源,或者维护和数据清理工作需要额外的开销。无论哪种方式,不准确的数据都意味着更努力地获取正确的信息,这可能会影响调度、通信、工作流以及最终的预算。
  • 更便捷地访问数据并改善部门或团队之间的信息共享:数据去重工作可以显著改善组织内部门或团队之间的信息共享。一个好处是打破困扰部门系统和应用的可怕数据孤岛。重复数据删除有助于将信息整合到单个数据源中,使不同团队可以更轻松地访问和共享准确、一致的信息。此外,随着冗余副本和优化存储的减少,团队可以更轻松地找到所需的信息。他们不必浪费时间搜索多个位置或可能过时的数据版本。
  • 基于准确的新数据制定更明智的决策:数据驱动的决策仅在数据准确时才起作用。通过消除重复数据来提高数据准确性,企业可以做出更明智的决策,从更广的角度来看,对数据的信任不断增长,从而提高整体效率。
  • 加快数据库备份和还原速度:重复数据删除过程有助于减少存储介质中使用的总数据量。这意味着备份和归档的总体占用空间较小,这可以加快数据的备份、移动和恢复速度—由于卷较小,双向传输所需的时间较少,而且处理速度也更快,计算资源消耗也较少。

利用 Oracle HeatWave,保持数据的理想状态

尽可能减少数据重复问题的好方法是先防止出现重复问题。Oracle HeatWave 将在线事务处理、跨数据仓库和数据湖的实时分析、机器学习 (ML) 和生成式 AI 整合到一个云技术服务中。客户可以通过多种方式获益。

  • 无需将数据库中的事务处理数据复制到单独的分析数据库进行分析。
  • 团队可以轻松查询对象存储、MySQL Database 或两者组合中的数据,而无需其他功能或服务。
  • 同样,无需将数据移动到单独的机器学习服务来构建机器学习模型。
  • 客户可以避免使用不同服务带来的复杂性和成本,以及提取、转换和加载重复数据所需的高昂成本。
  • 决策者可以获得实时分析,而不是基于数据的报告,这些数据在单独的分析数据库中可用时可能会过时。
  • 数据安全性和法规合规性风险降低,因为数据不会在数据存储之间传输。
  • 借助 Oracle HeatWave GenAI (包括自动化的数据库内向量存储),客户可以利用大型语言模型及其专有数据来获得更准确、更符合情境的答案,而不是仅使用基于公共数据训练的模型,无需将数据复制到单独的向量数据库。

总体而言,数据去重可打破信息孤岛,提高数据可访问性,并促进协作环境,让团队可以利用组织的集体数据洞察来制定更明智的决策。您可以避免营销团队使用包含客户联系信息的 CRM 系统,而销售团队使用具有类似数据的单独销售线索管理系统的情况。消除重复的计划可以整合这些信息,让两个团队都可以访问统一的客户视图,并更有效地协作开展营销活动和销售推广。

面向 CIO 的数据和 AI 成功指南

希望利用 AI 的潜力?这一切都取决于您的数据基础设施。这本全面的指南为 CIO 提供了充分利用数据和 AI 来制定战略决策、优化运营并获得竞争优势的策略。

数据重复的常见问题解答

数据重复的未来趋势是什么?

随着技术能力的不断发展,IT 越来越有能力尽可能减少重复数据量。这些进步的一些例子包括:

  • 具有在源或目标上执行重复数据删除的选项
  • 内嵌数据去重
  • 全局数据去重,而不仅仅是本地存储
  • 在使用数据存储库的验证和转换过程中执行重复数据删除
  • 按块或段而不是仅按文件删除重复项

如何监控数据重复?

可使用不同的策略来监视和识别重复数据。其中包括数据分析、数据匹配和数据编目等工具。用于传入数据源的数据清理工具可以提供一定程度的识别,而专门的数据数据去重工具可以发现和消除重复性数据。

数据重复会带来哪些挑战?

数据重复会为各种规模的企业都构成重大挑战。其中一个明显的问题是浪费了存储空间。重复的副本消耗了服务器、硬盘驱动器和云存储的宝贵容量,从而导致更高的成本。对于需要识别重复项、确定主要版本以及删除冗余副本的 IT 员工来说,跨系统管理重复数据也非常耗时。过多的重复性数据也会降低系统的速度,因为分散在存储位置上的重复文件访问和检索所需的时间较长。

当更新未应用于所有副本时,也会出现数据不一致。这可能会导致报告不准确、基于过时信息而浪费工作量,以及当不同的团队依赖相互冲突的数据集时会出现混乱。重复数据可能会使您难以遵守需要准确数据保留和删除实践的法规,从安全角度来看,您拥有的数据越多,攻击面就越大。

拥有重复数据是否有任何好处?

故意复制的数据(例如备份和归档)对于与业务连续性和灾难恢复相关的功能具有许多优势。为了成功使用重复数据,组织必须采用有助于确保将重复数据保留到特定和有限量的战略方法,从而防止过度使用资源和其他问题。

注:为免疑义,本网页所用以下术语专指以下含义:

  1. 除Oracle隐私政策外,本网站中提及的“Oracle”专指Oracle境外公司而非甲骨文中国 。
  2. 相关Cloud或云术语均指代Oracle境外公司提供的云技术或其解决方案。