`
中华国锋
  • 浏览: 45755 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Prune days and Change Capture in DAC

 
阅读更多
Prune days and Change Capture in DAC By Vimarsh Ganju on May 27th, 2008 under Siebel General, Siebel Street. Here is a question I often get from customers regarding change capture by DAC when it is used for extracting Siebel data. The problem is equally valid for non-Siebel data sources if the default change capture mechanism provided in DAC is used for identifying changes in source data. How can we ensure that data committed with an update timestamp between the start of an ETL run and the end of the extract is not excluded by the next ETL? • DAC stores a value called LAST_REFRESH_DATE at the end of an ETL extract. • During the next run, DAC captures changes to the source data by comparing this LAST_REFRESH_DATE with the LAST_UPD date of records in the source. • So if the LAST_REFRESH_DATE is less than LAST_UPD of a source record, then the record being processed has either been updated or created between the time of last execution and the current run • But what will happen if a record in the source is committed between the time of starting the data extract and completing the extract with a commit date that is less than the LAST_REFRESH_DATE Prune days to the rescue!!! The solution to the above problem is to set the PRUNE_DAYS parameter. If the prune days parameter is set to 1 for example, the change capture process will use LAST_REFRESH_DATE - Prune days as the cutoff timestamp for change capture Here is an example of such a scenario • Let us assume that there is a table called S_CUSTOMER in transaction database with 2 records created during business hours on the 1st of January. • On the January 1st, Extraction of Customer Data begins at 1700 hours and completes at January 1st, 1800 hours into a customer Dimension called WC_CUSTOMER. • LAST_REFRESH_DATE stored is January 1, 1800 hours • • Now, a new customer is created between 1700 and 1800. But it is committed to the database AFTER the extract is completed with a timestamp of January 1st, 17.30 • Change capture in DAC Change capture in DAC • More customers are added to the transaction database during the next working day. As a result the following is the condition of the source table at the time of the next ETL Extract i.e. Jan 2, 12:00 am • • Now the change capture process in DAC will compare the stored LAST_REFRESH_DATE with the update timestamp of the records in the source data and pull only the records updated after this LAST_REFRESH_DATE i.e. Jan 1, 1800 hours into the target table. Unfortunately for the 3rd record depicted below, the LAST_UPD is Jan 1, 1730 i.e. it is before the LAST_REFRESH_DATE. So, it does not qualify for the incremental extract and we have a missing record in the target table. • • g) But if we had set the PRUNE DAYS parameter to 1, the cutoff date used to identify changes in source data would be .Dec 31, 1800 hours i.e LAST_REFRESH_DATE - 1 day . If this ploy is used, all the records with LAST_UPD > Dec 31, 1800 hours will qualify for the incremental extract and we will have a complete set of data in the target table The Prune days parameter can be used to ensure that DAC Change Capture does not miss out data created around the time of data extraction. Set it with care to a reasonable value to avoid increasing the volume of data selected by incremental load process. New Feature in DAC 7.9 for non-Siebel Sources For source systems other than Siebel, the Prune Days setting is used in the same way except that the DAC subtracts the number of prune days from the LAST_REFRESH_DATE of a given source and supplies this as the value for the $$LAST_EXTRACT_DATE parameter. Inputs by: Raghunatha Yadav & Sanjay Rao
分享到:
评论

相关推荐

    Prune-and-Search

    Prune-and-Search Algorithm Prune-and-Search 算法是选择问题的解决方案,该算法可以用来解决选择问题,即从一个集合中选择第k小的元素。该算法的核心思想是通过递归地.partitioning集合,利用.prune-away的思想来...

    算法设计英文版课件:Chapter 6 Prune-and-search.ppt

    Chapter 6 of the "Algorithm Design" course material, titled "Prune-and-search," delves into the principles and analysis of computer algorithms. The primary focus is on understanding efficiency, ...

    【11】Fast and accurate recurrent neural network acoustic models

    In this paper, we present techniques that further improve performance of LSTM RNN acoustic models for large vocabulary speech recognition. We show that frame stacking and reduced frame rate lead to ...

    google repo工具

    Note: There is a slight mirroring lag between when a change is visible on the web in Gerrit and when repo download will be able to find it for all users, because of replication delays to all servers ...

    sweep-and-prune:AABB的2D碰撞检测

    横扫JavaScript的增量式2D扫掠和修剪碰撞检测。安装(去做)文献资料建设者var sap = new SweepAndPrune ( ) ;.addObject var data = { foo : "bar" } ;var x0 = 0 ;var y0 = 1 ;var x1 = 2 ;var y1 = 3 ;...

    无_说明_yolov5prune_No_Description_yolov5prune.zip

    无_说明_yolov5prune_No_Description_yolov5prune

    yolov5_prune,支持版本_V2、_V3、_V4_和_V6

    yolov5_prune,支持版本_V2、_V3、_V4_和_V6_version_yolov5_prune,Support_V2,_V3,_V4_and_V6_versions_of_yolov5_prune_version_yolov5_prune,Support_V2,_V3,_V4_and_V6_versions_of_yolov5_prune.zip

    ts-prune:在打字稿项目中查找未使用的导出。 :person_taking_bath:

    ts-prune 使用零配置删除Typescript项目中未使用的导出。 入门 ts-prune公开了一个cli,该cli读取tsconfig文件并打印出源文件中所有未使用的导出。 正在安装 用yarn或npm安装ts-prune npm install ts-prune -g ...

    java8看不到源码-prune:Play框架的性能测试工具

    Prune 是一个自动测试 Play Framework 性能的工具。 它会自动检查不同版本的 Play,针对这些版本编译应用程序,然后运行负载测试。 它将所有结果保存到 Git 存储库中的文件中。 它还会将结果摘要推送到网站。 Prune...

    yolov5prune-6.0.zip

    在深入探讨yolov5prune-6.0.zip压缩包内容之前,首先要了解YOLOv5本身。YOLOv5是“你只看一次”目标检测系统的一个版本,它是一种流行的实时计算机视觉算法,用于识别和定位图像中的对象。YOLOv5因其速度和准确性受...

    yolov5 prune,支持yolov5 V2、V3、V4、V6版本.zip

    yolov5 prune,支持yolov5 V2、V3、V4、V6版本yolov5_prune本项目基于tanluren/yolov3-channel-and-layer-pruning实现,将项目划分yolov5上。项目的基本流程是,使用ultralytics/yolov5训练自己的数据集,在模型性能...

    node-prune:node-prune是一个小型工具,用于修剪来自node_modules的不必要文件,例如markdown,打字稿源文件等。

    @ slsplus / node-prune 节点修剪工具,从./node_modules中修剪不必要的文件,例如markdown,打字稿源文件等。 受golan版本启发。安装$ npm i @slsplus/node-prune -g用法$ np -hUsage: np [options]Prune command ...

    node-prune:从node_modules中删除不必要的文件(.md,.ts等)

    node-prune是一个小型工具,用于修剪./node_modules中不必要的文件,例如markdown,打字稿源文件等。 主要是为构建的,可让您在几秒钟内部署无服务器的Web应用程序。安装来自 : $ curl -sf ...

    craftcms-prune:CraftCMS Prune Twig插件

    Twig Prune for 为CraftCMS模板添加一个Twig过滤器,以“删减”条目的字段。 安装 将prune目录移动到craft/plugins目录中。 从Craft控制面板转到设置>插件,然后启用prune插件 用法 这样做的主要原因是要控制输出...

    ec2-prune-snapshots:修剪 EBS 卷的快照

    ec2-prune-快照 如果您经常执行ec2-create-snapshot ,那么您需要在某个时候清除它们。 ec2-prune-snapshots消除了这样做的所有麻烦。 特征 自动检测所有卷 确保每个卷的最新快照不被删除 在过去[540]天的每个月的第...

    channel-prune

    这是的PyTorch实现。 在可以实现3倍的模型尺寸缩减,并且精度... (请参阅prune_InceptionV3_example.py和prune_Resnet50_example.py) 要修剪新模型,您需要根据模型的体系结构在FilterPruner下定义一个转发函数和

    zfs-prune-snapshots:从一个或多个符合给定条件的zpool中删除快照

    zfs-prune-snapshots 1w 与上述相同,但增加了详细程度,并且没有实际删除任何快照(试运行) zfs-prune-snapshots -vn 1w 删除tank1和tank2 /备份上超过3周的快照。 注意,该脚本将通过所有罐1及以下TANK2 /备份...

    serverless-prune-plugin:Serverless 1.x插件,可从AWS中获得未使用版本的已部署功能

    安装使用npm安装: npm install --save-dev serverless-prune-plugin 然后将插件添加到您的serverless.yml文件中: plugins : - serverless-prune-plugin 或者,使用Serverless插件命令(Serverless Framework 1.22...

    prune-crx插件

    "prune-crx插件"是一款专为英语用户设计的浏览器扩展工具,其核心功能是帮助用户有效地管理和优化他们的浏览器选项卡。在现代网络浏览环境中,人们常常会同时打开多个选项卡,这不仅可能导致浏览器资源的过度消耗,...

    无人机视角、多模态、模型剪枝、国产AI芯片部署_yolov5-prune-multi.zip

    无人机视角、多模态、模型剪枝、国产AI芯片部署_yolov5-prune-multi

Global site tag (gtag.js) - Google Analytics