首页 > 解决方案 > 更改数据库中的数据捕获 - 手动方法

问题描述

如果历史数据有变化,就会得到通知。

我们现有的 oracle 数据库不支持 CDC。寻找其他选项来实现 CDC

假设我有一个事实表 A,其中包含从 2019 年 1 月 1 日到当前期间的数据。在任何时候,当我从今天开始运行查询时,一月/二月的数据都不应该改变。

我正在考虑创建一个具有快照日期的表,该表将从 2019 年 1 月 1 日到现在每周捕获事实 A 的数据(如订单总和或 $ 数据)。将此表视为日志。

如果给定快照日期与先前快照日期的日志表发生变化,应该有其他机制/表会发出警报。这是一些事情,我仍在考虑如何设计

我的工具是 python 和 Oracle。如果有更好的方法,请告诉我

标签: pythonoraclecapture

解决方案


Oracle 捕获更改并将更改写入重做日志文件(除了数据库本身之外,还有一些使用重做日志文件的产品),但是,阅读您的问题,我想您会想查看物化视图

对于 Oracle 12c,您可以在此处获取物化视图的文档 https://docs.oracle.com/database/121/SQLRF/statements_6002.htm#SQLRF01302

和物化视图日志在这里 https://docs.oracle.com/database/121/SQLRF/statements_6003.htm#SQLRF01303


推荐阅读