CN113672590A - 一种数据清理方法、图数据库装置和计算机可读存储介质 - Google Patents
一种数据清理方法、图数据库装置和计算机可读存储介质 Download PDFInfo
- Publication number
- CN113672590A CN113672590A CN202110833419.5A CN202110833419A CN113672590A CN 113672590 A CN113672590 A CN 113672590A CN 202110833419 A CN202110833419 A CN 202110833419A CN 113672590 A CN113672590 A CN 113672590A
- Authority
- CN
- China
- Prior art keywords
- storage unit
- life cycle
- data
- vertex
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000004140 cleaning Methods 0.000 title claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012217 deletion Methods 0.000 claims description 9
- 230000037430 deletion Effects 0.000 claims description 9
- 238000005201 scrubbing Methods 0.000 claims 3
- 238000010586 diagram Methods 0.000 description 9
- 230000003068 static effect Effects 0.000 description 7
- 230000004927 fusion Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Abstract
本申请公开了一种数据清理方法、图数据库装置和计算机可读存储介质,该方法应用于图数据库装置,该图数据库装置包括多个存储单元,存储单元用于存储行数据,行数据包括多个顶点的信息以及与顶点连接的边的信息,该方法包括:获取顶点的生命周期;将存储顶点的信息的存储单元记作第一存储单元,为第一存储单元设置生命周期与时间戳;将存储边的信息的存储单元记作第二存储单元,获取与边连接的顶点的信息,记作相连点信息,基于相连点信息为第二存储单元设置生命周期与时间戳;在存储单元的生命周期结束后,对存储单元中的数据进行清理。通过上述方式,本申请能够对过期的数据进行清理,实现简单。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及一种数据清理方法、图数据库装置和计算机可读存储介质。
背景技术
目前在进行数据清理时,可以通过开源数据库HBase的生命周期(Time To Live,TTL)的特性实现数据清理,但由于是列簇级别的数据清理方案,无法处理包含多种数据并且数据的生命周期不同的情况,而且生命周期需要在创建表时就提前设置,当进行数据更新后会因为部分列时间戳不一致导致一行数据不能同时过期而产生脏数据。另外,还有方案采用根据查询结果删除数据(Delete By Query)的方式,为图数据中需要清理的对象的时间属性字段创建索引,同时设置数据过期时间,每天定时查询是否有过期时间,如果有则从索引中取得过期时间对应的数据标识(Identity document,ID),根据ID进行数据删除,这种数据清理方式性能很差。
发明内容
本申请提供一种数据清理方法、图数据库装置和计算机可读存储介质,能够对过期的数据进行清理,实现简单。
为解决上述技术问题,本申请采用的技术方案是:提供一种数据清理方法,该方法应用于图数据库装置,该图数据库装置包括多个存储单元,存储单元用于存储行数据,行数据包括多个顶点的信息以及与顶点连接的边的信息,该方法包括:获取顶点的生命周期;将存储顶点的信息的存储单元记作第一存储单元,为第一存储单元设置生命周期与时间戳;将存储边的信息的存储单元记作第二存储单元,获取与边连接的顶点的信息,记作相连点信息,基于相连点信息为第二存储单元设置生命周期与时间戳;在存储单元的生命周期结束后,对存储单元中的数据进行清理。
为解决上述技术问题,本申请采用的另一技术方案是:提供一种图数据库装置,该图数据库装置包括互相连接的存储器和处理器,其中,存储器用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述技术方案中的数据清理方法。
为解决上述技术问题,本申请采用的另一技术方案是:提供一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述技术方案中的数据清理方法。
通过上述方案,本申请的有益效果是:先获取每个顶点的生命周期;然后为存储顶点数据的存储单元设置生命周期与时间戳;再获取与边连接的顶点的信息,利用该信息为存储边数据的存储单元设置生命周期与时间戳;在存储单元的生命周期结束后,对该存储单元中的数据进行清理,从而实现及时清理图像数据库中的过期数据;由于只需配置顶点的生命周期与时间戳,就可以对边对应的存储单元的生命周期与时间戳进行设置,进而对相应的超过生命周期的数据进行清理,实现简单;而且利用了HBase的生命周期的特性,能够从文件层面进行数据清理,清理性能较好。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请提供的行数据所包含的信息的示意图;
图2是本申请提供的数据清理方法一实施例的流程示意图;
图3是本申请提供的属性图的示意图;
图4是本申请提供的数据清理方法另一实施例的流程示意图;
图5是本申请提供的顶点“轨迹”所包含的属性的示意图;
图6是本申请提供的顶点“人”所包含的属性的示意图;
图7是本申请提供的顶点“轨迹”与顶点“人”对应的信息的示意图;
图8是对图7添加删除标记后的示意图;
图9是本申请提供的图数据库装置一实施例的结构示意图;
图10是本申请提供的计算机可读存储介质一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请所提供的方案涉及知识图谱与图数据库领域,主要涉及融合图谱在图数据库中如何进行数据清理的技术。融合图谱中包含多种类型的数据,每类数据的生命周期并不相同,但都存储在一张HBase表的同一列簇中,而且点数据与边数据存储在同一行中;边数据的写入本质是对点数据的更新,如何在保证性能的前提下清理融合图谱中不同种类的过期数据,并且不影响未过期数据是本申请要解决的技术问题,下面对本申请所涉及的专业术语进行解释说明。
图由两个元素组成:节点和关系,每个节点代表一个实体(可以是人、地点、事物、类别或其他数据),每个关系代表两个节点之间的关联方式。
属性图定义了一种图模型,一个属性图是由顶点(Vertex)、边(Edge)、标签(Label)以及属性(property)组成的有向图,顶点也被称为节点(Node),边也被称为关系(Relationship)。当写入点时会将点的ID和属性写入行数据中;写入边时需要查询出相连的点,在相连的点上添加上边(就是对点的更新)。
HBase是一种非关系型数据库(Not Only SQL,NOSQL),其是一个分布式的、面向列的开源数据库,在HBase中表是行的集合,行是列簇的集合,列簇是列的集合,列是键值对的集合,如下表所示:
表1 HBase中表的结构
HBase中的一个存储单元称为cell,由行和列确定。
Janusgraph是一个开源的分布式图数据库,Janusgraph创建的图是基于属性图模型的。Janusgraph以HBase作为后端存储系统,数据实际上是存储在HBase中的,在HBase中一行数据就是一个点,一行记录包含了这个点的所有属性以及与其相连的边,每一个属性、每一条边都对应一个独立的存储单元,如图1所示。
由于Janusgraph是个分布式图数据库,需要将数据切分并存储到多台机器上,Janusgraph采用的分片方式是按边切割的方式,即每个顶点只保存一次,每条边会保存多份,可能存储在不同的节点上,这样做的好处是在源顶点(source Vertex)和目标顶点(target Vertex)中的任意一个顶点都可以快速找到对端。
融合图谱:图中同时包含多种静态节点、动态节点、动态关系以及静态关系,静态节点包含各种档案数据,比如:人员档案信息、车辆档案信息或案件档案信息等,这些数据在数据库中一般需要永久保留。动态节点包含各种时空事件数据,比如:违章时间或出行轨迹等,这些数据在数据库中通常只保留一段时间,比如6个月或者1年。静态关系包括亲属关系或人车关系等,比如:父子关系、同事关系或车主关系等。动态关系包括人事件关系或车事件关系等,比如:同行关系或违章关系等。
请参阅图2,图2是本申请提供的数据清理方法一实施例的流程示意图,该方法应用于图数据库装置,该方法包括:
步骤11:获取顶点的生命周期。
图数据库装置包括多个存储单元,每个存储单元用于存储行数据中的至少一部分,该行数据包括多个顶点的信息(即点数据)以及与顶点连接的边的信息(即边数据);具体地,顶点的信息包括至少一个属性的信息(记作属性信息),存储单元可存储一条属性信息或一条边的信息。
在一具体的实施例中,在获取每个顶点的生命周期之前,可进行生命周期的配置以及生成预设元数据表。
例如,以图3为例,完整的图信息包含以下信息:
1)点:人(person)、车(vehicle)以及轨迹(travel)。
2)边:人出行(personTravel)与车出行(vehicleTravel)。
3)属性:姓名、车牌号码、时间以及地点。
首先创建图3所示的图结构的模式(schema)并设置对应的生命周期;在schema设置时区别动态数据和静态数据,只在点Label维度设置动态数据的生命周期,属性的生命周期和顶点的生命周期保持一致。轨迹信息是个动态数据,将顶点“轨迹”和边“人出行”、边“车出行”的生命周期写入预设元数据表中,其他的人或车的静态数据对应的顶点的生命周期默认置为永久(即FOREVER),预设元数据表的示例如下表所示:
表2预设元数据表
Label ID | Type | Label name | TTL | Timestamp |
1 | v | person | FOREVER | |
2 | v | vehicle | FOREVER | |
3 | v | travel | 180d | passtime |
4 | e | personTravel | / | / |
5 | e | vehicleTravel | / | / |
字段说明:
Label ID:类型ID,作为一类数据的元数据信息的主键,其为自增序列。
Type:区分是顶点还是边,v表示是点Label,e表示是边Label,由用户在schema创建时指定。
Label name:Label的名字,由用户在schema创建时指定。
TTL:点Label的生命周期,由用户创建schema时指定,边Label不存储该列数据;具体地,如表2所示,当Label ID=3时,生命周期为180天。可以理解地,如果不设置生命周期就默认为永久保留,数据不会被删除。
时间戳(Timestamp):作为动态顶点的时间戳的属性字段的关键字(key),该属性字段的值(value)需要是个长整型(即Long类型)的时间戳,或者其是个日期(Date)类型,可以被程序转化成时间戳;其由用户在创建schema时指定,为非必填项,默认会以数据入库时间作为该数据的时间戳,边Label不存储该列数据;例如,如表2所示,当Label ID=3时,时间戳为“passtime”,其用以表征当前系统时间或属性的时间戳。
在预设元数据表创建完毕后,可以利用顶点的Label name或Label ID,从预设元数据表中查询到与其匹配的生命周期;例如,假设Label name为“vehicle”,那么生命周期为“FOREVER”;优选地,被获取生命周期的顶点为动态数据对应的顶点,即其对应的数据不是固定不变的。
步骤12:将存储顶点的信息的存储单元记作第一存储单元,为第一存储单元设置生命周期与时间戳。
可将属性信息存储到相应的存储单元中(记作第一存储单元),然后为第一存储单元配置相应的生命周期与时间戳。
进一步地,存储单元的生命周期为存储单元中存储的数据的生命周期,该生命周期为存储单元中所存储的数据的保存时长;存储单元的时间戳为存储单元中存储的数据的时间戳,该时间戳为存储单元中所存储的数据的生命周期的开始时间;例如,假设生命周期为3天,在A时刻将一属性信息存储到第一存储单元中,则A时刻即为该第一存储单元的时间戳,在三天后的A时刻第一存储单元的生命周期结束,将第一存储单元中所存储属性信息删除。
步骤13:将存储边的信息的存储单元记作第二存储单元,获取与边连接的顶点的信息,记作相连点信息,基于相连点信息为第二存储单元设置生命周期与时间戳。
将边的信息存储到相应的存储单元(记作第二存储单元)中,并为该第二存储单元设置相应的生命周期与时间戳;具体地,可以先获取每条边所连接的顶点的信息(即相连点信息,该相连点信息包括顶点的生命周期与顶点的时间戳),然后对相连点信息进行分析处理,以便设置第二存储单元的生命周期与时间戳。例如,如图3所示,以“人出行”这条边为例,其与顶点“人”以及顶点“轨迹”连接,可分析顶点“人”与顶点“轨迹”的生命周期以及时间戳,以计算出“人出行”这条边的生命周期与时间戳,将它们作为第二存储单元的生命周期与时间戳。
步骤14:在存储单元的生命周期结束后,对存储单元中的数据进行清理。
可检测存储有行数据的存储单元的生命周期是否结束,如果该存储单元的生命周期结束,则确定该存储单元中所存储的数据过期,亦可看作该存储单元过期,将该存储单元中所存储的数据清除掉,实现对超出生命周期的数据的删除。
本实施例提供了一种融合图谱在图数据库中的数据清理方法,在创建schema时生成包含生命周期的元数据信息,以动态数据的点Label作为图数据库中配置生命周期的主体,只需要配置顶点的生命周期就可以对相应的动态数据进行清理,实现简单,且能够对多种数据进行清理;而且利用了HBase的生命周期的特性,能够从文件层面进行数据清理,清理性能较好。
请参阅图4,图4是本申请提供的数据清理方法另一实施例的流程示意图,该方法应用于图数据库装置,该方法包括:
步骤201:获取顶点的生命周期。
步骤202:将存储顶点的信息的存储单元记作第一存储单元。
步骤201-步骤202与上述实施例中步骤11-12类似,在此不再赘述。
步骤203:利用顶点的名称从预设元数据表中查找与顶点相匹配的生命周期,记作匹配生命周期;将属性所对应的第一存储单元的生命周期设置为匹配生命周期。
可以从预设元数据表中获取与顶点对应的生命周期,并将该生命周期记作匹配生命周期,然后为该顶点的每个属性设置生命周期,比如:可将该顶点的所有属性的生命周期设置为匹配生命周期,即所有属性的生命周期相同,第一存储单元的生命周期为匹配生命周期。
步骤204:判断预设元数据表中与顶点相匹配的时间戳字段是否已经被指定。
通过用户输入的配置信息来确定是否指定了时间戳字段,即判断配置信息中是否包含时间戳字段的值。
步骤205:若时间戳字段已经被指定,则将时间戳字段的值作为第一存储单元的时间戳。
如果用户配置了时间戳字段的值,则直接将该时间戳字段的值作为第一存储单元的时间戳。
步骤206:若时间戳字段未被指定,则将当前系统时间作为第一存储单元的时间戳。
如果用户没有对时间戳字段进行配置,则可采用其他方式来确定第一存储单元的时间戳,比如:以当前系统时间作为参考。
在一具体的实施例中,在点数据写入时,可以在顶点的属性上设置相应的生命周期,例如,以图3所示的写入顶点“轨迹”为例,从预设元数据表中取得顶点“轨迹”对应的信息,顶点“轨迹”包含2个属性:时间(time)和地点(address),每一个属性都对应一个独立的存储单元,设置这2个存储单元的生命周期,如果用户指定了时间戳字段,则以用户指定的时间戳字段的值作为每个存储单元的时间戳;如果用户没有指定时间戳字段,则以当前系统时间作为每个存储单元的时间戳;一条轨迹点信息写入HBase后如图5所示,可以看到属性“时间”为2020年6月1日,属性“地点”为中国银行,且属性“时间”和属性“地点”的生命周期均为180天,属性“时间”和属性“地点”的时间戳均为“1619340018”。静态的人员信息(比如:人的姓名)写入HBase后如图6所示,可以看到属性“姓名”为张三。
可以理解地,在更新动态顶点的属性时,需要先查询原有顶点的时间戳,更新的属性的时间戳以原数据为准,这样就能够保证在HBase中同一行动态点信息的所有属性的生命周期和时间戳是一致的,即对于同一个顶点说,该顶点的所有属性的过期时间是相同的,以保证数据同时过期。例如,假设某一属性的时间戳为B时刻,在C时刻更新了该属性的数据,则该属性的时间戳仍然为B时刻。
步骤207:将存储边的信息的存储单元记作第二存储单元,获取与边连接的顶点的信息,记作相连点信息。
步骤207与上述实施例中步骤13类似,在此不再赘述。
步骤208:基于顶点的生命周期与顶点的时间戳分别为第二存储单元设置生命周期与时间戳。
先从预设元数据表中获取相连点信息,然后对相连点信息中所有顶点的生命周期进行统计,得到统计数据;然后基于统计数据确定第二存储单元的生命周期与第二存储单元的时间戳。
在一具体的实施例中,将统计数据中的最小值记作最小生命周期;将最小生命周期作为第二存储单元的生命周期;获取与最小生命周期对应的顶点的时间戳,记作最小时间戳;然后将最小时间戳作为第二存储单元的时间戳。
进一步地,由于每条边与两个顶点连接,比较与边连接的两个顶点的生命周期的大小,将二者中生命周期的较小值作为边的生命周期,然后查询生命周期的较小值对应的顶点的时间戳,将其作为边的时间戳。可以理解地,由于边的生命周期和时间戳取决于与其连接的顶点的最小生命周期和最小时间戳,因此边的过期时间和与其连接的某个顶点的过期时间保持一致;例如,假设边E1与顶点H1以及顶点H2连接,顶点H1的生命周期为90天,顶点H2的生命周期为180天,则边E1的生命周期为90天。
综上,在边写入时,对边进行生命周期的设置;具体地,写入边时需要先查出相连的两个顶点的信息,并从预设元数据表中取出相连点的生命周期并比较大小,取生命周期值较小的顶点作为基准,将其生命周期作为边的生命周期,同时查询该顶点的时间戳以作为边的时间戳。例如,以图3所示的边“人出行”写入为例,边“人出行”与顶点“人”以及顶点“轨迹”相连,顶点“人”的生命周期是永久,顶点“轨迹”的生命周期为180天,则边“人出行”的生命周期也是180天,同时从顶点“轨迹”中获取时间戳以作为边“人出行”的时间戳;进一步地,在Janusgraph中每条边是作为独立的存储单元存储在HBase中的,“人出行”这条边可被切分为2个存储单元,需要同时写到顶点“人”上和顶点“轨迹”上,边“人出行”写入后在HBase中存储的详情如图7所示,可以看出:边“人出行”被存到顶点“轨迹”与顶点“人”所对应的存储单元(即第二存储单元)中。
步骤209:判断当前时间戳与存储单元的时间戳的时间差是否大于存储单元的生命周期。
通过以下公式来判断存储单元是否过期:
当前时间戳–存储单元的时间戳>存储单元的生命周期
如果当前时间戳与存储单元的时间戳的时间差小于/等于存储单元的生命周期,则表明该存储单元尚未过期,此时无需执行数据清理的操作。
步骤210:若当前时间戳与存储单元的时间戳的时间差大于存储单元的生命周期,则确定存储单元的生命周期结束,对存储单元中的数据进行清理。
如果当前时间戳与存储单元的时间戳的时间差大于存储单元的生命周期,则表明该存储单元的生命周期结束,已经达到该存储单元的过期时间,此时可以执行数据清理的操作。
进一步地,可先在存储单元的生命周期结束后,对存储单元中存储的数据进行标记,生成删除标记;然后将携带删除标记的数据从图数据库装置中删除。可以理解地,如果某一个行数据中只有标记为删除的数据,那么整行数据都将被删掉。
在一具体的实施例中,以HBase为例,当HBase进行合并(compact)时,可先在临时目录中创建新的文件;然后从旧的文件中读取未携带删除标记的数据,并放入新的文件中,而不读取过期的数据(即携带删除标记的数据),然后将携带删除标记的数据从磁盘上删掉;例如,如图8所示,在180天后,所有与顶点“轨迹”相关的信息都被标记为删除(deleted);与顶点“人”相关的信息中,属性“姓名”由于是永久保留未被标记,边“人出行”由于过期被标记为删除。
本实施例提供了在顶点写入时设置点数据的生命周期的方法,不管是顶点的新增还是顶点的属性的更新,都可以保证一个行数据中所包含的每个属性对应的存储单元的过期时间是一致的。另外,本实施例还提供了在边写入时设置边数据的生命周期的方法,可以保证在一个点数据过期时相连的边数据也同时过期,能够保证不会在另一个未过期的顶点上产生脏数据,防止影响对未过期顶点的查询。
请参阅图9,图9是本申请提供的图数据库装置一实施例的结构示意图,图数据库装置90包括互相连接的存储器91和处理器92,存储器91用于存储计算机程序,计算机程序在被处理器92执行时,用于实现上述实施例中的数据清理方法。
本实施例所提供的图数据库装置能够通过点数据写入设置点生命周期,并能够通过边数据写入设置边生命周期,能够保证行数据同时过期,避免产生脏数据。
请参阅图10,图10是本申请提供的计算机可读存储介质一实施例的结构示意图,计算机可读存储介质100用于存储计算机程序101,计算机程序101在被处理器执行时,用于实现上述实施例中的数据清理方法。
计算机可读存储介质100可以是服务端、U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种数据清理方法,其特征在于,应用于图数据库装置,所述图数据库装置包括多个存储单元,所述存储单元用于存储行数据,所述行数据包括多个顶点的信息以及与所述顶点连接的边的信息,所述方法包括:
获取所述顶点的生命周期;
将存储所述顶点的信息的存储单元记作第一存储单元,为所述第一存储单元设置生命周期与时间戳;
将存储所述边的信息的存储单元记作第二存储单元,获取与所述边连接的顶点的信息,记作相连点信息,基于所述相连点信息为所述第二存储单元设置生命周期与时间戳;
在所述存储单元的生命周期结束后,对所述存储单元中的数据进行清理。
2.根据权利要求1所述的数据清理方法,其特征在于,所述顶点的信息包括至少一个属性的信息,所述方法包括:
利用所述顶点的名称从预设元数据表中查找与所述顶点相匹配的生命周期,记作匹配生命周期;
将所述属性所对应的第一存储单元的生命周期设置为所述匹配生命周期。
3.根据权利要求1所述的数据清理方法,其特征在于,所述为所述第一存储单元设置生命周期与时间戳的步骤,包括:
判断预设元数据表中与所述顶点相匹配的时间戳字段是否已经被指定;
若是,则将所述时间戳字段的值作为所述第一存储单元的时间戳;
若否,则将当前系统时间作为所述第一存储单元的时间戳。
4.根据权利要求1-3中任一项所述的数据清理方法,其特征在于,所述相连点信息包括所述顶点的生命周期与所述顶点的时间戳,所述基于所述相连点信息为所述第二存储单元设置生命周期与时间戳的步骤,包括:
基于所述顶点的生命周期与所述顶点的时间戳分别为所述第二存储单元设置生命周期与时间戳。
5.根据权利要求4所述的数据清理方法,其特征在于,所述基于所述顶点的生命周期与所述顶点的时间戳分别为所述第二存储单元设置生命周期与时间戳的步骤,包括:
对所述相连点信息中所有顶点的生命周期进行统计,得到统计数据;
基于所述统计数据确定所述第二存储单元的生命周期与所述第二存储单元的时间戳。
6.根据权利要求5所述的数据清理方法,其特征在于,所述基于所述统计数据确定所述第二存储单元的生命周期与所述第二存储单元的时间戳的步骤,包括:
将所述统计数据中的最小值记作最小生命周期;
将所述最小生命周期作为所述第二存储单元的生命周期;
获取与所述最小生命周期对应的顶点的时间戳,记作最小时间戳;
将所述最小时间戳作为所述第二存储单元的时间戳。
7.根据权利要求1所述的数据清理方法,其特征在于,所述对所述存储单元中的数据进行清理的步骤之前,包括:
判断当前时间戳与所述存储单元的时间戳的时间差是否大于所述存储单元的生命周期;
若是,则确定所述存储单元的生命周期结束。
8.根据权利要求1所述的数据清理方法,其特征在于,所述方法还包括:
在所述存储单元的生命周期结束后,对所述存储单元中的数据进行标记,生成删除标记;
将携带所述删除标记的数据从所述图数据库装置中删除。
9.一种图数据库装置,其特征在于,包括互相连接的存储器和处理器,其中,所述存储器用于存储计算机程序,所述计算机程序在被所述处理器执行时,用于实现权利要求1-8中任一项所述的数据清理方法。
10.一种计算机可读存储介质,用于存储计算机程序,其特征在于,所述计算机程序在被处理器执行时,用于实现权利要求1-8中任一项所述的数据清理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110833419.5A CN113672590A (zh) | 2021-07-22 | 2021-07-22 | 一种数据清理方法、图数据库装置和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110833419.5A CN113672590A (zh) | 2021-07-22 | 2021-07-22 | 一种数据清理方法、图数据库装置和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113672590A true CN113672590A (zh) | 2021-11-19 |
Family
ID=78539898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110833419.5A Pending CN113672590A (zh) | 2021-07-22 | 2021-07-22 | 一种数据清理方法、图数据库装置和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113672590A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899156A (zh) * | 2015-05-07 | 2015-09-09 | 中国科学院信息工程研究所 | 一种面向大规模社交网络的图数据存储及查询方法 |
CN109815219A (zh) * | 2019-02-18 | 2019-05-28 | 国家计算机网络与信息安全管理中心 | 支持多数据库引擎的数据生命周期管理的实现方法 |
CN110771098A (zh) * | 2017-06-20 | 2020-02-07 | 思科技术公司 | 用于时间图存储和检索的结构化架构 |
CN110941619A (zh) * | 2019-12-02 | 2020-03-31 | 浪潮软件股份有限公司 | 针对多种使用场景的图数据存储模型和结构的定义方法 |
CN111309976A (zh) * | 2020-02-24 | 2020-06-19 | 北京工业大学 | 一种面向收敛型图应用的GraphX数据缓存方法 |
US20210149851A1 (en) * | 2019-11-14 | 2021-05-20 | Royal Bank Of Canada | Systems and methods for generating graph data structure objects with homomorphism |
-
2021
- 2021-07-22 CN CN202110833419.5A patent/CN113672590A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899156A (zh) * | 2015-05-07 | 2015-09-09 | 中国科学院信息工程研究所 | 一种面向大规模社交网络的图数据存储及查询方法 |
CN110771098A (zh) * | 2017-06-20 | 2020-02-07 | 思科技术公司 | 用于时间图存储和检索的结构化架构 |
CN109815219A (zh) * | 2019-02-18 | 2019-05-28 | 国家计算机网络与信息安全管理中心 | 支持多数据库引擎的数据生命周期管理的实现方法 |
US20210149851A1 (en) * | 2019-11-14 | 2021-05-20 | Royal Bank Of Canada | Systems and methods for generating graph data structure objects with homomorphism |
CN110941619A (zh) * | 2019-12-02 | 2020-03-31 | 浪潮软件股份有限公司 | 针对多种使用场景的图数据存储模型和结构的定义方法 |
CN111309976A (zh) * | 2020-02-24 | 2020-06-19 | 北京工业大学 | 一种面向收敛型图应用的GraphX数据缓存方法 |
Non-Patent Citations (1)
Title |
---|
DMITRY ANIKIN ET.AL.: "Labeled Property Graphs:SQL or NoSQL?", 2019 IVANNIKOV MEMORIAL WORKSHOP(IVMEM) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102521225B (zh) | 增量数据抽取装置和增量数据抽取方法 | |
CN108733681B (zh) | 信息处理方法及装置 | |
CN107657049B (zh) | 一种基于数据仓库的数据处理方法 | |
US10180992B2 (en) | Atomic updating of graph database index structures | |
US8924365B2 (en) | System and method for range search over distributive storage systems | |
CN106528793B (zh) | 一种分布式空间数据库的时空分片存储方法 | |
CN104281717B (zh) | 一种建立海量id映射关系的方法 | |
CN104331453B (zh) | 一种分布式文件系统及分布式文件系统的构建方法 | |
CN107807787B (zh) | 一种分布式数据存储方法和系统 | |
CN102509012A (zh) | 将电子病历的内容映射电子病历标准数据库的方法 | |
CN109918386B (zh) | 一种数据恢复方法和装置、计算机可读存储介质 | |
CN110196847A (zh) | 数据处理方法和装置、存储介质及电子装置 | |
WO2017166815A1 (zh) | 一种用于分布式数据库系统的更新数据的方法及装置 | |
CN108959560A (zh) | 基于数据表的信息处理方法、装置及电子设备 | |
US10445370B2 (en) | Compound indexes for graph databases | |
CN116166849A (zh) | 一种数据管理方法、装置、设备及存储介质 | |
CN111125298A (zh) | 重建ntfs文件目录树的方法、设备及存储介质 | |
CN109656929B (zh) | 一种雕复关系型数据库文件的方法及装置 | |
US20160203197A1 (en) | Method and System for Automatic Management of Dynamically Allocated Memory in a Computing Unit | |
Rotem et al. | Extendible arrays for statistical databases and OLAP applications | |
KR101171551B1 (ko) | 이벤트 이력 기억 장치, 이벤트 이력 추적 장치, 이벤트 이력 기억 방법, 이벤트 이력 기억 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 데이터 구조를 기록한 컴퓨터 판독 가능한 기록 매체 | |
CN109492000A (zh) | 一种数据库表的复制方法及系统 | |
US20180144060A1 (en) | Processing deleted edges in graph databases | |
CN113672590A (zh) | 一种数据清理方法、图数据库装置和计算机可读存储介质 | |
CN111984649A (zh) | 数据索引的查找方法、装置和相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |