一种基于HAWQ记录有效数据的方法、装置和介质制造方法及图纸

技术编号:23050056 阅读:12 留言:0更新日期:2020-01-07 14:46
本发明专利技术实施例公开了一种基于HAWQ记录有效数据的方法、装置和介质,调用预先设定的脚本程序,生成HAWQ基准表和HAWQ视图;根据接收到的源数据对应的操作类型,对源数据设置相应的字段标识。将源数据及其对应的字段标识作为一条记录添加至HAWQ基准表。对源数据设置对应的字段标识,有效的记录了哪一条记录是添加的,哪一条记录是修改的,哪一条记录是被删除的。由于HAWQ基准表只能添加数据,不支持数据的修改和删除,导致HAWQ基准表存在很多无效数据,为了提升数据的调用效率,可以根据每条记录所对应的键值以及字段标识,从HAWQ基准表筛选出有效数据,并将有效数据存储至HAWQ视图中,解决了HAWQ基准表不能删除和修改历史记录的问题。

A method, device and medium for recording effective data based on hawq

【技术实现步骤摘要】
一种基于HAWQ记录有效数据的方法、装置和介质
本专利技术涉及数据存储
,特别是涉及一种基于HAWQ记录有效数据的方法、装置和计算机可读存储介质。
技术介绍
HAWQ是Hadoop原生SQL查询引擎,结合了MPP数据库的关键技术优势和Hadoop的可扩展性和便捷性。HAWQ从HDFS本地读取数据并将数据写入HDFS。因为目前HDFS文件中的数据只能添加,不允许修改或删除,所以HAWQ基准表中的数据只允许添加模式,不允许修改和删除模式。但现实应用中往往一些数据记录需要被多次修改或者是删除。由于HAWQ基准表中数据只允许添加,当需要对HAWQ基准表中的某项数据进行修改时,只能在HAWQ表中添加新的数据,对于用户而言,并不能清楚的区分新添加的数据属于独立的新数据,还是属于原有数据的修改数据或者删除数据,不利于数据的查询调用。可见,如何解决HAWQ基准表不能删除和修改历史记录的问题,是本领域技术人员需要解决的问题。
技术实现思路
本专利技术实施例的目的是提供一种基于HAWQ记录有效数据的方法、装置和计算机可读存储介质,可以解决HAWQ基准表不能删除和修改历史记录的问题。为解决上述技术问题,本专利技术实施例提供一种基于HAWQ记录有效数据的方法,包括:调用预先设定的脚本程序,生成HAWQ基准表和HAWQ视图;根据接收到的源数据对应的操作类型,对所述源数据设置相应的字段标识;将所述源数据及其对应的字段标识作为一条记录添加至所述HAWQ基准表;根据每条记录所对应的键值以及字段标识,从所述HAWQ基准表筛选出有效数据,并将所述有效数据存储至所述HAWQ视图中,以便于直接从所述HAWQ视图中调用有效数据。可选地,所述字段标识包括版本字段和删除字段。可选地,所述根据接收到的源数据对应的操作类型,对所述源数据设置相应的字段标识包括:当源数据对应的操作类型为数据添加操作或数据修改操作时,则将所述源数据的版本字段的字段值加1,所述源数据的删除字段更新为无效删除标识;当源数据对应的操作类型为数据删除时,则将所述源数据的版本字段的字段值加1,所述源数据的删除字段更新为有效删除标识。可选地,所述根据每条记录所对应的键值以及字段标识,从所述HAWQ基准表筛选出有效数据包括:从所述HAWQ基准表中查询目标键值对应的所有目标记录;其中,同一个对象所对应的各条记录具有相同的键值;目标键值为所有键值中的任意一个键值;根据各目标记录的字段值,从所有目标记录中选取出所述目标键值所对应的最新的目标记录;当所述最新的目标记录的删除字段为有效删除标识时,则从所述HAWQ基准表中查询下一个键值对应的所有记录;当所述最新的目标记录的删除字段为无效删除标识时,则将所述最新的目标记录作为所述目标键值的有效数据,直至遍历完所述HAWQ基准表中的所有记录,则结束操作。可选地,所述根据各目标记录的字段值,从所有目标记录中选取出所述目标键值所对应的最新的目标记录包括:按照目标记录的字段值,对所有目标记录进行降序排列;将排列后的第一条目标记录作为所述目标键值所对应的最新的目标记录。可选地,所述调用预先设定的脚本程序,生成HAWQ基准表和HAWQ视图包括:根据项目个数需求,调用HAWQ基准表生成脚本程序,批量生成HAWQ基准表;根据项目个数需求,调用HAWQ视图生成脚本程序,批量生成HAWQ基准表。本专利技术实施例还提供了一种基于HAWQ记录有效数据的装置,包括生成单元、设置单元、添加单元和筛选单元;所述生成单元,用于调用预先设定的脚本程序,生成HAWQ基准表和HAWQ视图;所述设置单元,用于根据接收到的源数据对应的操作类型,对所述源数据设置相应的字段标识;所述添加单元,用于将所述源数据及其对应的字段标识作为一条记录添加至所述HAWQ基准表;所述筛选单元,用于根据每条记录所对应的键值以及字段标识,从所述HAWQ基准表筛选出有效数据,并将所述有效数据存储至所述HAWQ视图中,以便于直接从所述HAWQ视图中调用有效数据。可选地,所述字段标识包括版本字段和删除字段。可选地,所述设置单元包括第一更新子单元和第二更新子单元;所述第一更新子单元,用于当源数据对应的操作类型为数据添加操作或数据修改操作时,则将所述源数据的版本字段的字段值加1,所述源数据的删除字段更新为无效删除标识;所述第二更新子单元,用于当源数据对应的操作类型为数据删除时,则将所述源数据的版本字段的字段值加1,所述源数据的删除字段更新为有效删除标识。可选地,所述筛选单元包括查询子单元、选取子单元和作为子单元;所述查询子单元,用于从所述HAWQ基准表中查询目标键值对应的所有目标记录;其中,同一个对象所对应的各条记录具有相同的键值;目标键值为所有键值中的任意一个键值;所述选取子单元,用于根据各目标记录的字段值,从所有目标记录中选取出所述目标键值所对应的最新的目标记录;当所述最新的目标记录的删除字段为有效删除标识时,则触发所述查询子单元从所述HAWQ基准表中查询下一个键值对应的所有记录;所述作为子单元,用于当所述最新的目标记录的删除字段为无效删除标识时,则将所述最新的目标记录作为所述目标键值的有效数据,直至遍历完所述HAWQ基准表中的所有记录,则结束操作。可选地,所述选取子单元具体用于按照目标记录的字段值,对所有目标记录进行降序排列;将排列后的第一条目标记录作为所述目标键值所对应的最新的目标记录。可选地,所述生成单元包括第一调用子单元和第二调用子单元;所述第一调用子单元,用于根据项目个数需求,调用HAWQ基准表生成脚本程序,批量生成HAWQ基准表;所述第二调用子单元,用于根据项目个数需求,调用HAWQ视图生成脚本程序,批量生成HAWQ基准表。本专利技术实施例还提供了一种基于HAWQ记录有效数据的装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序以实现如上述任意一项所述基于HAWQ记录有效数据的方法的步骤。本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述基于HAWQ记录有效数据的方法的步骤。由上述技术方案可以看出,调用预先设定的脚本程序,生成HAWQ基准表和HAWQ视图;根据接收到的源数据对应的操作类型,对源数据设置相应的字段标识。将源数据及其对应的字段标识作为一条记录添加至HAWQ基准表。操作类型可以有多种,包括数据的添加、修改和删除,字段标识反映了源数据所属的操作类型。针对于每个源数据设置对应的字段标识,实现了在HAWQ基准表只允许添加记录的特点下,有效的记录了哪一条记录是添加的,哪一条记录是修改的,哪一条记录是被删除的。每条记录有其对应的键值,同一个对象所对应的各条记录具有相同的键值。由于HAWQ基准表只本文档来自技高网...

【技术保护点】
1.一种基于HAWQ记录有效数据的方法,其特征在于,包括:/n调用预先设定的脚本程序,生成HAWQ基准表和HAWQ视图;/n根据接收到的源数据对应的操作类型,对所述源数据设置相应的字段标识;/n将所述源数据及其对应的字段标识作为一条记录添加至所述HAWQ基准表;/n根据每条记录所对应的键值以及字段标识,从所述HAWQ基准表筛选出有效数据,并将所述有效数据存储至所述HAWQ视图中,以便于直接从所述HAWQ视图中调用有效数据。/n

【技术特征摘要】
1.一种基于HAWQ记录有效数据的方法,其特征在于,包括:
调用预先设定的脚本程序,生成HAWQ基准表和HAWQ视图;
根据接收到的源数据对应的操作类型,对所述源数据设置相应的字段标识;
将所述源数据及其对应的字段标识作为一条记录添加至所述HAWQ基准表;
根据每条记录所对应的键值以及字段标识,从所述HAWQ基准表筛选出有效数据,并将所述有效数据存储至所述HAWQ视图中,以便于直接从所述HAWQ视图中调用有效数据。


2.根据权利要求1所述的方法,其特征在于,所述字段标识包括版本字段和删除字段。


3.根据权利要求2所述的方法,其特征在于,所述根据接收到的源数据对应的操作类型,对所述源数据设置相应的字段标识包括:
当源数据对应的操作类型为数据添加操作或数据修改操作时,则将所述源数据的版本字段的字段值加1,所述源数据的删除字段更新为无效删除标识;
当源数据对应的操作类型为数据删除操作时,则将所述源数据的版本字段的字段值加1,所述源数据的删除字段更新为有效删除标识。


4.根据权利要求3所述的方法,其特征在于,所述根据每条记录所对应的键值以及字段标识,从所述HAWQ基准表筛选出有效数据包括:
从所述HAWQ基准表中查询目标键值对应的所有目标记录;其中,同一个对象所对应的各条记录具有相同的键值;目标键值为所有键值中的任意一个键值;
根据各目标记录的字段值,从所有目标记录中选取出所述目标键值所对应的最新的目标记录;
当所述最新的目标记录的删除字段为有效删除标识时,则从所述HAWQ基准表中查询下一个键值对应的所有记录;
当所述最新的目标记录的删除字段为无效删除标识时,则将所述最新的目标记录作为所述目标键值的有效数据,直至遍历完所述HAWQ基准表中的所有记录,则结束操作。


5.根据权利要求4所述的...

【专利技术属性】
技术研发人员:谭博
申请(专利权)人:北京浪潮数据技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1