【技术实现步骤摘要】
一种数据存储方法、数据查询方法和装置、存储介质
本申请涉及但不限于数据处理
,尤其涉及一种数据存储方法、数据查询方法和装置、存储介质。
技术介绍
知识图谱被用来描述真实世界中存在的各种事物以及它们之间的关联关系,一种知识图谱的描述方式包括:实体(即知识图谱中的点)、关系(即知识图谱中的边)及和实体或者关系关联的属性。其中,实体拥有多个属性,且由一个主键字段进行唯一标示;关系亦拥有多个属性,且由关系的主体主键字段及关系的客体主键字段进行唯一标示。由于知识图谱中的实体、关系数据是从原始数据(包括结构化、半结构化、非结构化数据)抽取得到,而原始数据会发生变化,比如数据表的一个字段值被修改,导致知识图谱的实体属性、关系属性以及图谱的拓扑结构,都会随着时间的变化而变化,例如,某员工入职一个单位后来又离职了,则该员工实体和单位实体从“有聘用关系”变为“没有聘用关系”。如果采取直接更新图谱存储内容的方式(即不保留过去的历史状态),无法满足根据业务去查询过去时间点上的实体属性、关系属性以及图谱的拓扑状态的需求。在现有的数据库领域中,对于历史版本的支持方式有以下几种:(1)通 ...
【技术保护点】
1.一种数据存储方法,其特征在于,包括:检测第一数据库或第二数据库是否包含待存储数据的版本记录,并将第一数据库或第二数据库中的版本记录的时间戳与待存储数据的时间戳进行比较,其中,所述第一数据库用于存储最新版本的数据,所述第二数据库用于存储所有版本的数据;如果包含待存储数据的版本记录且所述待存储数据的时间戳在第一数据库中的版本记录的时间戳之后,则使用待存储数据覆盖第一数据库中的版本记录,并在第二数据库中增加一个与待存储数据的时间戳对应的版本记录;如果包含待存储数据的版本记录且所述待存储数据的时间戳在第一数据库中的版本记录的时间戳之前,或者不包含待存储数据的版本记录,则根据待存 ...
【技术特征摘要】
1.一种数据存储方法,其特征在于,包括:检测第一数据库或第二数据库是否包含待存储数据的版本记录,并将第一数据库或第二数据库中的版本记录的时间戳与待存储数据的时间戳进行比较,其中,所述第一数据库用于存储最新版本的数据,所述第二数据库用于存储所有版本的数据;如果包含待存储数据的版本记录且所述待存储数据的时间戳在第一数据库中的版本记录的时间戳之后,则使用待存储数据覆盖第一数据库中的版本记录,并在第二数据库中增加一个与待存储数据的时间戳对应的版本记录;如果包含待存储数据的版本记录且所述待存储数据的时间戳在第一数据库中的版本记录的时间戳之前,或者不包含待存储数据的版本记录,则根据待存储数据的时间戳将待存储数据存储进第一数据库或第二数据库中。2.根据权利要求1所述的方法,其特征在于,所述数据为知识图谱数据,所述第一数据库为图数据库,所述第二数据库为表数据库。3.根据权利要求2所述的方法,其特征在于,所述数据包括以下至少之一:实体、关系、实体或者关系关联的属性;实体通过主键进行标识,实体关联的属性包括一个或多个键值对;关系通过关系的两个端点实体的主键及关系的类型进行标识,关系关联的属性包括一个或多个键值对;在所述第二数据库中,一个实体的版本由实体的主键和第二时间戳进行标识,一个关系的版本由关系的两个端点实体的主键、关系的类型和第二时间戳进行标识。4.根据权利要求3所述的方法,其特征在于,当所述待存储数据为待删除的所述实体或所述关系时,所述将待存储数据存储进第一数据库中,包括:在所述第一数据库存储的所述实体或所述关系的版本记录中,添加一个删除标识,并更新所述时间戳;所述将待存储数据存储进第二数据库中,包括:在所述第二数据库存储的所述实体或所述关系的版本记录中,添加一个带删除标识的版本记录,并记录所述时间戳。5.根据权利要求4所述的方法,其特征在于,所述第一数据库存储的所述实体或所述关系的版本记录,包括所述实体或所述关系的所有属性值及所述删除标识;所述第二数据库存储的所述实体或所述关系的版本记录包括删除版本和非删除版本,其中,删除版本只包括所述删除标识,非删除版本包括所述实体或所述关系的所有属性值。6.一种数据存储方法,其特征在于,包括:检测第三数据库或第四数据库是否包含待存储数据的版本记录,并将第三数据库或第四数据库中的版本记录的时间戳与待存储数据的时间戳进行比较,其中,所述第三数据库用于存储最新版本的数据,所述第四数据库用于存储历史版本的数据;如果包含待存储数据的版本记录且所述待存储数据的时间戳在第三数据库中的版本记录的时间戳之后,则将第三数据库中的版本记录读出并存储进第四数据库中,并将待存储数据存储进第三数据库中;如果包含待存储数据的版本记录且所述待存储数据的时间戳在第三数据库中的版本记录的时间戳之前,或者不包含待存储数据的版本记录,则根据所述时间戳将待存储数据存储进第三数据库或第四数据库中。7.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至6中任一项所述的数据存储方法的步骤。8.一种数据存储装置,其特征在于,包括处理器及存储器,其中:所述处理器用于执行存储器中存储的程序,以实现如权利要求1至6中任一项所述的数据存储方法的步骤。9.一种数据存储装置,其特征在于,包括第一检测模块和第一处理模块,其中:第一检测模块,用于检测第一数据库或第二数据库是否包含待存储数据的版本记录,并将第一数据库或第二数据库中的版本记录的时间戳与待存储数据的时间戳进行比较,其中,所述第一数据库用于存储最新版本的数据,所述第二数据库用于存储所有版本的数据,如果包含待存储数据的版本记...
【专利技术属性】
技术研发人员:裴玉超,周扬,朱亚超,陈智发,
申请(专利权)人:北京明略软件系统有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。