y Memory,只读存储器)、RAM (RandomAccess Memory,随机存取存储器)、磁碟或者光盘等各种可以存储程序代码的介质。
[0079]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
【主权项】
1.一种数据同步方法,其特征在于,包括: 在生成源数据的集群节点生成源数据的集群节点上对所述源数据的完整性进行验证; 若验证所述源数据为完整的,则获取所述源数据; 根据所述源数据对数据表进行更新; 其中所述源数据为完整的表示所述生成源数据的集群节点生成源数据的集群节点已完成生成所述源数据的过程,所述数据表用于记录所述源数据的元信息。
2.根据权利要求1所述的方法,其特征在于,所述在源数据所在集群节点上对所述源数据的完整性进行验证,包括: 当通过对所述生成源数据的集群节点生成源数据的集群节点进行轮询,获取到完整标记时,验证所述源数据为完整的;或者 当接收到所述生成源数据的集群节点生成源数据的集群节点提交的完整标记时,验证所述源数据为完整的; 其中所述完整标记是由所述生成源数据的集群节点生成源数据的集群节点在所述源数据生成完成之后产生的。
3.根据权利要求1所述的方法,其特征在于,所述在源数据所在集群节点上对所述源数据的完整性进行验证,包括: 当所述源数据的大小在预定的时间范围内没有改变时,验证所述源数据为完整的。
4.根据权利要求3所述的方法,其特征在于,所述当所述源数据的大小在预定的时间范围内没有改变时,验证所述源数据为完整的,包括: 多次检测所述源数据的大小,每次间隔一定的时间,所述预定的时间范围是指首次与最后一次检测所述源数据的大小的时间间隔; 如果多次检测到的所述源数据的大小都是一致的,则表示所述源数据的大小在预定的时间范围内没有改变,验证所述源数据为完整的。
5.根据权利要求1-4任一项所述的方法,其特征在于,在所述根据所述源数据对数据表进行更新之前,所述方法还包括: 对所述源数据进行过滤,以过滤掉无效数据。
6.根据权利要求1-4任一项所述的方法,其特征在于,在所述获取所述源数据之后,所述方法还包括: 分区创建所述源数据的表结构,所述表结构记录了从所述生成源数据的集群节点生成源数据的集群节点到目标集群节点上的存储位置的映射关系,所述目标集群节点指的是获取所述源数据的集群节点。
7.根据权利要求1-4任一项所述的方法,其特征在于,所述数据表采用全量表,时间分区表或拉链表的形式。
8.一种数据同步方法,其特征在于,包括: 生成源数据; 在目标集群节点验证所述源数据为完整的之后,向所述目标集群节点上传所述源数据,以便所述目标集群节点根据所述源数据对数据表进行更新; 其中所述源数据为完整的表示所述生成源数据的集群节点生成源数据的集群节点已完成生成所述源数据的过程,所述数据表用于记录所述源数据的元信息。
9.根据权利要求8所述的方法,其特征在于,在所述向所述目标集群节点上传所述源数据之前,所述方法还包括: 在源数据生成完成之后,生成完整标记,所述完整标记用于指示所述源数据为完整的; 向所述目标集群节点提交所述完整标记。
10.一种数据同步的集群节点,其特征在于,包括: 验证模块,用于在生成源数据的集群节点上对所述源数据的完整性进行验证; 获取模块,用于若所述验证模块验证所述源数据为完整的,则获取所述源数据; 更新模块,用于根据所述获取模块获取的所述源数据对数据表进行更新; 其中所述源数据为完整的表示所述生成源数据的集群节点已完成生成所述源数据的过程,所述数据表用于记录所述源数据的元信息。
11.根据权利要求10所述的集群节点,其特征在于, 所述验证模块具体用于:当通过对所述生成源数据的集群节点进行轮询,获取到完整标记时,验证所述源数据为完整的;或者 所述验证模块具体用于:当接收到所述生成源数据的集群节点提交的完整标记时,验证所述源数据为完整的; 其中所述完整标记是由所述生成源数据的集群节点在所述源数据生成完成之后产生的。
12.根据权利要求10所述的集群节点,其特征在于, 所述验证模块具体用于:当所述源数据的大小在预定的时间范围内没有改变时,验证所述源数据为完整的。
13.根据权利要求12所述的集群节点,其特征在于, 所述验证模块具体用于:多次检测所述源数据的大小,每次间隔一定的时间,如果多次检测到的所述源数据的大小都是一致的,则表示所述源数据的大小在预定的时间范围内没有改变,验证所述源数据为完整的,其中所述预定的时间范围是指首次与最后一次检测所述源数据的大小的时间间隔。
14.根据权利要求10-13任一项所述的集群节点,其特征在于, 所述更新模块还用于:对所述源数据进行过滤,以过滤掉无效数据。
15.根据权利要求10-13任一项所述的集群节点,其特征在于,所述集群节点还包括: 创建模块,用于分区创建所述源数据的表结构,所述表结构记录了从所述生成源数据的集群节点到目标集群节点上的存储位置的映射关系,所述目标集群节点指的是获取所述源数据的集群节点。
16.一种生成源数据的集群节点,其特征在于,包括: 生成模块,用于生成源数据; 上传模块,用于在目标集群节点验证所述源数据为完整的之后,向所述目标集群节点上传所述生成模块生成的所述源数据,以便所述目标集群节点根据所述源数据对数据表进行更新;其中所述源数据为完整的表示所述生成源数据的集群节点已完成生成所述源数据的过程,所述数据表用于记录所述源数据的元信息。
17.根据权利要求16所述的集群节点,其特征在于, 所述生成模块还用于:在源数据生成完成之后,生成完整标记,所述完整标记用于指示所述源数据为完整的; 所述上传模块还用于:向所述目标集群节点提交所述生成模块生成的所述完整标记。
【专利摘要】本发明公开了一种数据同步方法和集群节点,该方法包括:在生成源数据的集群节点生成源数据的集群节点上对所述源数据的完整性进行验证;若验证所述源数据为完整的,则获取所述源数据;根据所述源数据对数据表进行更新;其中所述源数据为完整的表示所述生成源数据的集群节点生成源数据的集群节点已完成生成所述源数据的过程,所述数据表用于记录所述源数据的元信息。在该实施例中,通过在生成源数据的集群节点上来实现源数据完整性的验证,在源数据完整的情况下,实现数据同步。因此,无需通过Hive手工以文件方式导入源数据再完成数据完整性和有效性的判断,从而降低了人力成本,并且提高数据同步的效率。
【IPC分类】G06F17-30
【公开号】CN104699771
【申请号】CN201510092950
【发明人】唐文奎
【申请人】北京京东尚科信息技术有限公司, 北京京东世纪贸易有限公司
【公开日】2015年6月10日
【申请日】2015年3月2日