5.4.1 数据一致性检验

        数据一致性是指在对一个副本数据进行更新的同时,必须确保也能够更新到其他的副本,否则不同的副本之间的数据将不再一致。例如,当你在银行已经存有五千元,接着又存了一千元,然后跑到另外一个地方游山玩水,需要在当地的银行把这六千元取出来,但是存钱的银行没有及时将你存钱的信息传给当地的银行,所以当地银行还不知道你已经存了1000元进去,当地银行的工作人员告诉你账户余额只有5000元,这时你的同一账户的余额在不同的地方出现了不一致的情况。

        数据的一致性有三种情况,即强一致性、弱一致性以及最终一致性,具体如下。

        (1)强一致性是指对数据完成更新操作后,所以有客户端访问到的数据均为更新之后的数据,这样可以保证客户端获取到的是最新数据,但是若要达到强一致性,将会降低性能。

        (2)弱一致性是指当数据完成更新操作后,系统并不保证所有的客户端访问到的数据都是最新数据,但是会尽量保证在某个时间(如秒级或分钟级)内让数据达到一致性状态。

        (3)最终一致性是弱一致性的一种特例,当数据更新完成后,保证没有后续更新的前提下,系统将最终返回的是上一次更新操作的值。

下面以一张名为Personnel_Information的数据表为例进行数据一致性处理。

一,创建转换

用e57.ktr保存。

二,表输入配置

三。值映射配置

把字段GENDER中数据Male替换为数字0,Female替换为数字1。

 四 配置插入/更新

 五,查看结果

分析:由于转换e57.ktr的运行是单次的,若后续需要将原始数据进行转换,插入操作,则需要运行该转换,这样工作效率很低,因此通过kettle工具创建一个作业,对转换e57.ktr设置定时器,使得转换程序定时自动执行同步的操作。

六,创建作业

命名为e571.kjb

七,配置Start控件

勾选重复复选框,类型为时间间隔,下面以秒计算的间隔设为5,以分钟计算的间隔设为0。这里意思为每五秒进行一次该作业。

八,配置转换控件

九,运行作业e571.kjb

可以看出转换每5秒进行一次。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值