数据仓库中的一点点小问题,希望各位大神开导开导

qq_34352013 2017-12-05 12:22:05
一下是一段关于ETL过程中增量抽取的描述:
                     比如一张会员表,它的主键是memberID,而会员的状态是有可能每天都更新的,
                     我们在第一次抽取之后,生成一张备用表A,包含两个字段,第一个是memberID,
                     第二个是除了memberID之外其他所有字段拼接起来,再做个Hash生成的字段,
                     在下一次抽取的时候,将源表同样的处理,生成表B,将B和A左关联,Hash字段不相等的
                     为发生变化的记录,另外还有一部分新增的记录,
                     根据这两部分记录的memberID去源表中抽取对应的记录。
根据上面的描述可以吧数据分为新增组合更新组,然后去更新ODS层的数据,那么如果在源系统中某条数据被删除,‘ODS中的数据怎么能被删除呢,还是说ODS层中的数据不用被删除。

...全文
5680 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jeff_ZW 2019-03-13
  • 打赏
  • 举报
回复
1.数据源表删除数据正常都是加个字段,打个deletion flag,然后再记录修改记录的时间戳。
2.真的有删除情况的话,建议建个cdc table用来记录表操作,读取cdc table中的被删除记录去更新ODS表。(SQL Server)
BriData 2019-02-08
  • 打赏
  • 举报
回复
你的问题其实是两个: 1, 如何捕获数据源删除? 通常几种种方法: 1) 数据源日志, 2)触发器(性能较差),3)数据源Auditing (似乎没有),4)目标表扫描 (性能差) 2, ODS 需要不需要删除?可以但最好不要这么做。
caoyan10 2019-01-21
  • 打赏
  • 举报
回复
看具体使用什么样的工具,或者技术语言,看您描述来看就是想做cdc的方式进行增量数据的加载。如果上游系统具有逻辑删除标志,您的中间表中可以代入这个标志。无论是是hash code或者md5都可以,目的就是为了记录当前数据的值,而引入删除标志可以识别源系统逻辑删除的问题。
luyif2006 2018-12-19
  • 打赏
  • 举报
回复
表的书记如果是物理删除,记录好删除的id,再做ods数据更新的时候,再把这条记录删除掉,原则上一般都不做物理删除,都是做逻辑删除,打个删除标签。即不存在这种ods与业务系统不一致的情况。
好难取名 2018-03-14
  • 打赏
  • 举报
回复
如果源有物理删除,基于日志的抽取方式就体现出优势了,抓到的日志根据自己需要处理出增量表,然后按照更新和新增的逻辑处理就是了。数据库开启日志记录的话,删除记录肯定有日志的。
SYYDI 2018-03-08
  • 打赏
  • 举报
回复
假如第一次抽取表A中有memberID=‘001’,如你所说源系统该条数据删除了,那么第二次抽取表B中就没有该条数据了,A、B表做个比对就能找到需要删除的数据了。有评论说不需要删除这些数据,这部分数据本来就是错误数据,错误的数据如何提供有效的价值呢?
weipeng825 2018-01-25
  • 打赏
  • 举报
回复
这个问题属于源系统的不规范,属于数据治理的范围 有规范的企业对数据删除情况使用软删除或回收表的处理方式 如果数据仓库要发现这种情况,只能周期性通过全表主键比对的方式
jj122689 2018-01-24
  • 打赏
  • 举报
回复
首先数据为什么要删掉呢?就算是取消会员也应该是修改状态字段啊。数据仓库的用户画像中一个重要功能就是挖掘这些潜在的客户,而你直接将这种用户删了,那还怎么挖掘?
kiss阳光 2017-12-25
  • 打赏
  • 举报
回复
ODS层的数据是一般是最新的数据或全量数据也可,源系统中如果删除一条数据,不需要你去删除,你的ods层的处理程序应是自动处理的。
qq_34352013 2017-12-05
  • 打赏
  • 举报
回复
接上,如果源表中会员1被删除,是不是应该找到这个会员1的ID然后去目标表中删除,那应该还有一个删除组,但是看了很多相关的文章都只是分成了更新组和新增组,希望各位解答一下疑惑。

7,388

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 数据仓库
社区管理员
  • 数据仓库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧