数据库增量数据采集(ChangeDataCapture)概略

数据库增量数据采集(ChangeDataCapture)概略
原煤分级筛数据采集通常是指ETL过程中Extract-数据抽取部分。除了ETL外在不同应⽤系统之间通常也需要传递数据,在某些环境条件限制下不能将数据从⼀个系统直接移到另⼀个系统,只能借助⽂本来作为中间媒介传递数据,且⽂本的⽣成有时间窗⼝的限制,所以对数据采集即数据抽取的性能有⼀定的要求。对增加数据的采集的⽅法常⽤的有以下⼏种:
1.时间戳(Timestamps on rows)
在表中增加⼀列通常为Last_update列来存储当前⾏最后⼀次进⾏DML操作的时间。时间戳⼤于最后⼀次采集(capture)时间的数据是待采集的数据即最后⼀次采集后有变化的数据。
2.版本号(Version Numbers on rows)
在表中增加⼀列通常为Version_number列来存储数据⾏变化,每次变化都将version_number列的数据增加;然后可以使⽤⼀个参考表来记录每次采集时数据对应的版本号,当再次采集时将参考表与源表中的版本号⽐较来判断需要采集的数据,采集完以后将参考表中对应版本号更新为与源表⼀致的版本号;
3.状态指⽰(Status indicators on rows)
档案管理方法
在表中增加⼀列状态列通常为Status列来存储数据⾏状态,⽐如如果当前⾏需要采集则将其致为true,否则为false;采集时只需要采集状态为true的⾏即可;
4.时间戳、版本号、状态指⽰混合使⽤(Time/Version/Status on rows)视频硬件
在如下逻辑下可以混合使⽤,⽐如需要采集2011年1⽉2⽇12:15到2011年2⽉4⽇10:00之间版本号为2.1状态的数据;
5.触发器 (Triggers on tables)
在表上增加触发器,当表中数据有变化时指⽰触发器将变化的数据写⼊另外的变化记录表中,采集时只需要将变化记录表中的数据导出即可;
6.数据库的⽇志扫描(Log scanners on databases)
7.表差异(Table differencing)
根据表不同的时候的差异来选择增量数据,⽐如使⽤如下sql语句来选择:
挤压成型机
塔机电机SELECT * FROM old_version
法兰防溅罩
MINUS SELECT * FROM new_version;

本文发布于:2024-09-23 01:31:04,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/189982.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   采集   变化   需要   版本号   时间   表中   增加
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议