博客

首页 / 博客 / 使用 CDC 将最新数据近乎实时地提取到您的数据仓库中

目录
自动化, 无代码 数据栈

了解如何 Astera Data Stack 可以简化企业的数据管理。

    使用 CDC 将最新数据近乎实时地提取到您的数据仓库中

    三月8th,2022

    厌倦了处理数据仓库中的冗余数据? 使用变更数据捕获增量加载数据,以快速填充数据仓库,而无需担心冗余或不准确的数据。 

     

    企业有能力在每周甚至每月结束时分析数据的日子已经一去不复返了。 当今快速发展的业务环境使得组织有必要使用数据仓库来近乎实时地处理和查询数据,以便快速获取洞察并做出及时的业务决策。

    需要更快的洞察时间意味着通常需要在收到数据时直接从事务系统捕获数据。 也就是说,每次需要对数据进行分析时都移动整个数据库是不可能的。 这是因为复制每个查询的所有数据可能会占用大量资源,并导致不必要的延迟,尤其是当您的数据库包含数百万条记录时。通过变更数据捕获快速从数据中提取见解

    当您需要快速处理数据时,仅将新数据或修改后的数据复制或迁移到数据仓库非常重要。 更改数据捕获 (CDC) 技术可以帮助您实现这一目标,方法是识别源数据集的更改、在临时更改表中捕获这些更改,并将它们传送到数据仓库进行报告和分析。

    为什么无法在源系统中分析查询数据?

    由于某些原因,在分析或查询数据之前复制数据非常重要。

    数据通常最初存储在事务数据库中。 由于这些数据库本质上是可操作的,并且不是专门为分析目的而创建的,因此直接在其上查询数据可能需要花费大量时间,特别是在处理大量数据时。

    更重要的是,这些操作数据库也经常使用,这意味着直接在源表中查询或分析可能会导致与数据流相关的问题。 如果这些数据库中的数据在源头被转换或操作,则可能无法回滚到数据的原始版本。 在将新数据输入这些数据库的同时在源事务数据库中执行分析也可能会导致中断,并可能影响您将提取的见解的质量。在源头查询数据会影响速度

    通过将数据从事务性数据库复制到分析性数据库,您既可以通过在专用于复杂查询的系统中处理数据来缩短实现价值的时间,又可以保持源数据的原创性。 更改数据捕获通过仅复制目标数据库中尚不可用的数据,进一步促进快速、方便的数据处理。

    使用 CDC 时,您也不必等到源数据库中有大量新数据,因为数据不是批量传输的。 相反,您可以创建、计划和编排数据管道,以确保在发生更改时只有新的或修改的数据从源迁移到目标,从而大大加快整个迁移过程。

    变更数据捕获如何简化您的分析

    假设您的跨国组织与多个地理位置的数千名客户打交道。 当您的网络如此庞大时,您当然需要维护一个包含所有这些客户的联系信息的数据库,并将其信息存储在一个集中存储库中以便于访问。 即使其中一个客户端的信息发生最轻微的变化,也需要传播到您的数据仓库,以确保它继续作为单一事实来源。

    仅仅为了传播一条记录中的更改而复制数千个客户端的数据将非常耗费资源,并且可能会导致不必要的分析延迟。 通过更改数据捕获,您可以确保仅将新信息从源数据库移至数据仓库,以便您的见解基于准确且更新的数据。

    使用 CDC 来识别、捕获并将更改从源系统传递到数据仓库或分析数据库的最大好处之一是整个过程的资源效率。 它使您免于定期执行高负载查询。 对于您的企业来说,这直接意味着减少加载时间和更快的洞察时间,从而做出更好的决策。通过变更数据捕获简化数据分析

    通过更改数据捕获,您还可以进行扩展,而不必担心缺乏数据完整性或完整性,因为 CDC 可确保您的中央存储库始终填充正确的数据,不会出现任何延迟。

    使用 CDC 还可以确保您的资源不会在一天或一周的某些时间被阻塞,因为您不必将数据大批量加载到数据仓库中并一次性查询大量数据,而是可以在需要时执行此操作。已收到。 由于该过程不需要太多资源,因此您还可以节省特定硬件的支出以保持数据加载过程的进行。

    疾控中心的类型

    您可以通过几种不同的方式在数据仓库中实施 CDC。 让我们仔细看看它们中的每一个:

    基于日志的变更数据捕获

    基于日志的变更数据捕获是确保源系统内的变更传输到数据仓库的可靠方法。 在基于日志的 CDC 中,创建一个事务日志,其中记录对源系统中已存在的数据的每个更改,包括插入、删除和修改。 然后将源处的数据与事务日志中的数据进行比较,以查看是否存在需要传播到数据仓库的任何更改。

    事务性 cdc 涉及在源数据库中创建所有更改和新数据的事务日志

    在此类 CDC 中创建的日志还可以确保源系统内的正常事务不会因直接在源处持续处理数据而受到影响。 此过程减少了延迟,并可以帮助您创建集中存储库,而不会因额外的处理而使系统负担过重,以跟上任何事务更改。

    基于触发器的变更数据捕获

    这种类型的更改数据捕获涉及创建特定函数来捕获源数据库中发生的更改。 例如,AFTER DELETE SQL 触发器将捕获 您的数据库实例 删除一条记录后。

    当使用基于触发器的 CDC 时,除了维护事务日志之外,您的数据库还将创建另一个表来记录更改。 这不仅会增加延迟,还会增加错过某些更改的风险,因为在某些情况下未正确定义触发器或触发器被意外关闭。

    维护一组额外的基于触发器的更改还会给体系结构带来额外的负载,并且在您处理大量数据或同时在多个表上记录更改时可能会消耗大量资源。

    由于大型组织通常会出现这种情况,因此您可能必须通过对较小的数据库进行一些更改来测试基于触发器的 CDC,并查看延迟和负载是否可以长期处理。 也就是说,基于触发器的 CDC 在基于事件的体系结构中特别有用,在这种体系结构中,当对源数据库进行某些更改时,您绝对必须更新数据仓库。

    基于提供商的变更数据捕获

    对于基于提供者的变更数据捕获,数据库提供者提供脚本来监视数据库表的一个或多个字段。 然后,这些脚本可以识别并记录对表的任何更改。 与基于触发器的 CDC 一样,基于提供程序的更改数据捕获也涉及在发生更改时从源数据库检索数据,因此会给系统带来一些额外的负载。

    通过变更数据捕获优化您的分析架构

    捕获源系统中的更改并将其传播到数据仓库对于确保您能够快速准确地获取见解至关重要。 和 Astera DW Builder 的内置 CDC 组件,您可以创建复杂的数据管道并将所有新的和修改的数据复制到您的数据仓库,而无需键入一行代码。

    Astera DW Builder 配备了数百个内置转换,可最大限度地提高您从数据中提取的价值。 自动化您的数据管道并利用变更数据捕获等内置功能,确保您的数据仓库始终保持最新状态,无需任何手动干预。

    准备好构建一个自我调节的数据仓库,以近乎实时的方式向您的 BI 和报告架构提供最新数据吗? 联系我们讨论您的用例或 采取 Astera 今天试用 DW Builder!

    作者:

    • Astera 营销团队
    你也许也喜欢
    数据科学与数据分析:主要区别
    什么是 OLAP(联机分析处理)?
    Astera x 会计和税务事务所
    考虑到 Astera 满足您的数据管理需求?

    与您的企业应用程序、数据库和云应用程序建立无代码连接,以集成您的所有数据。

    现在就联系吧!
    让我们联系