CN112650887B - 一种图数据库时间属性的快速查询方法 - Google Patents

一种图数据库时间属性的快速查询方法 Download PDF

Info

Publication number
CN112650887B
CN112650887B CN202011525116.9A CN202011525116A CN112650887B CN 112650887 B CN112650887 B CN 112650887B CN 202011525116 A CN202011525116 A CN 202011525116A CN 112650887 B CN112650887 B CN 112650887B
Authority
CN
China
Prior art keywords
query
array
time
query condition
bit
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.)
Active
Application number
CN202011525116.9A
Other languages
English (en)
Other versions
CN112650887A (zh
Inventor
吴建亮
胡鹏
马俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Jeeseen Network Technologies Co Ltd
Original Assignee
Guangzhou Jeeseen Network Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Jeeseen Network Technologies Co Ltd filed Critical Guangzhou Jeeseen Network Technologies Co Ltd
Priority to CN202011525116.9A priority Critical patent/CN112650887B/zh
Publication of CN112650887A publication Critical patent/CN112650887A/zh
Application granted granted Critical
Publication of CN112650887B publication Critical patent/CN112650887B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种图数据库时间属性的快速查询方法,属于数据库技术领域。本发明提供了一种图数据库时间属性的快速查询方法,针对图数据库中每个对象维护一个动态的一维字节数组,数组中每一个字节中的每一个BIT位表示该BIT位对应的图数据库对象在该位所表示的时间的状态,1表示该对象在该时间存在,0表示该对象在该时间不存在,查询时,根据查询时间确定的时间区间的长度创建一个一维查询条件数组或多个变量,将对应于查询时间点的位填充1,根据查询条件确定各图数据库对象的一维数组的数组下标,取各图数据库对象的一维数组下标中的数组元素与查询条件数组或变量做“与”操作,得到查询结果。本发明对于图数据库时间属性的查询方法快速,简便。

Description

一种图数据库时间属性的快速查询方法
技术领域
本发明涉及数据库技术领域,尤其涉及一种图数据库时间属性的快速查询方法。
背景技术
当前,互联网数据量呈现指数级增长的态势,且数据之间有一定的关系,传统的数据库在处理复杂数据关系运算上表现很差,随着数据量和深度的增加,关系型数据库无法在有效的时间内计算出结果。所以为了满足海量的关系型数据分析,图数据库应运而生。
在图数据库中,节点、关系的查询不会随着节点,关系的增加而导致查询性能的下降,但如果对查询的结果集进行查询,则会非常影响查询性能,观察到目前不管是开源还是商用的图数据库产品,针对节点或者关系的时间属性进行查询,完美高效的解决方案很少见到。
而带有时间属性的节点或者关系,在不同的分析场景中,具有重要意义,如张三与李四在1997年11月在北京同一家公司工作。比如,张扬与李明在2000年11月在北京一起创业。相同的人,相同的地点,不同的时间,发生了不同的事情,所以在特定的分析场景中,针对时间的查询分析,显的尤为重要。
在现有技术中,对于图数据库时间属性的查询通常将时间属性以数组或链表等数据结构直接存储,查询时直接从数组或链表中查询,查询速度较慢,就算在此进行优化,利用树等稍复杂的数据结构建立索引查询,但查询速度仍然比较慢。
另一种方法是,在现有的图数据库的基础上,在建模阶段解决图数据库中时间过滤查询的问题。该方法中,“时间”不再做为属性附属在每一个图对象中,而是以图节点单独存在,然后用关系表示其它节点与时间图节点的关系。该方法虽然从建模的角度解决的查询速度问题。但是增加了建模的复杂度,也不利于对模型的理解。
现有技术至少存在以下不足:
1.采用数组或链表方法存储图数据库时间属性,从数组或链表中查询速度慢。
2.采用建模的方法进行图数据库时间属性的查询,建模复杂度增加,不利于对模型的理解。
发明内容
为解决现有技术中存在的技术问题,本发明提供了一种图数据库时间属性的快速查询方法,针对图数据库中每个对象维护一个动态的一维数组,数组长度根据图数据库中所有对象的最早时间和最晚时间确定,数组中每一位表示该数组对应的图数据库对象在该位所表示的时间的状态,1表示该对象在该时间存在,0表示该对象在该时间不存在,查询时,如果是查询时间段,则根据查询时间段确定的时间区间的长度创建一个一维查询条件数组,全部填充1,根据查询条件确定的时间区间确定各图数据库对象的一维时间属性数组中时间段对应数组下标,取数组下标中的数组元素,与查询条件数组做“与”操作,得到查询结果。如果是查询多个时间点,则根据时间点确定需要创建的查询条件变量,根据查询时间点,确定时间属性数组的数组下标,以及在该数组所表示的字节中的比特位,根据确定的数组下标,确定需要填充的查询条件变量,将该查询条件变量中对应于确定的比特位填充为1,再取出时间属性数组的数组下标中的数组元素与各查询条件变量做“与”操作,得到各查询时间点结果,最后根据各查询时间点间的关系,对各查询时间点结果进行对应的关系计算,得到最终查询结果。本发明无需建模,实现简单,通过数组下标取数组元素,速度快,“与”操作得到查询速度快。
本发明提供了一种图数据库时间属性的快速查询方法,包括如下步骤:
S001:针对图数据库中每个对象分别创建一个一维数组,作为各图数据库对象时间属性数组,各图数据库对象时间属性数组长度相同;
S002:根据图数据库中各图数据库对象的时间属性填充各图数据库对象的时间属性数组,各数组中的每一位表示该数组对应的图数据库对象在该位所对应的时间的状态,每一位填充数值0或1,0表示该图数据库对象时间属性不满足该位所表示的时间;1表示该图数据库对象的时间属性满足该位所表示的时间;
S003:根据查询条件创建一维查询条件数组或多个查询条件变量,并初始化查询条件数组各位或查询条件变量为0,所述查询条件为时间,所述一维查询条件数组和所述查询条件变量包括对应于所述查询条件表示的各查询时间点的状态;
S004:根据所述查询条件表示的各查询时间点确定各图数据库对象时间属性数组下标,取出各数组下标中的元素;
S005:根据查询条件填充所述查询条件数组或者多个查询条件变量;
根据步骤S004中确定的数组下标,将所述查询条件数组中对应于所述查询条件表示的各查询时间点的各位填充为1,或多个查询条件变量中对应于所述查询条件表示的各查询时间点的各位填充为1;
S006:将步骤S400中取出的各数组下标中的元素分别与查询条件数组或多个查询条件变量分别做“与”操作,分别得到各图数据库对象的时间属性各查询时间点的查询结果。
优选地,根据图数据库对象的最早时间和最晚时间确定时间区间,步骤S001创建的各图数据库对象的时间属性数组的长度与所述时间区间的长度相同。
优选地,各图数据库对象时间属性数组中的每一位顺序表示该图数据库对象对应的时间状态。
优选地,步骤S006中还包括,根据查询条件中各时间点之间的关系,对各查询时间点的查询结果进行相应的关系计算,得到最终的查询结果。
优选地,各图数据库对象时间属性数组为BYTE型,每个数组下标中的数组元素存储连续的8个时间点的状态;
步骤S003中创建的一维查询条件数组为BYTE型,所述查询条件数组的每个数组下标中的数组元素存储连续的8个时间点的查询条件状态;
或,步骤S300中创建的多个查询条件变量为BYTE型,每个所述查询条件变量存储连续的8个时间点的查询条件状态。
优选地,所述查询条件为时间段时,在步骤S003中创建一维查询条件数组;所述查询条件为时间点时,创建多个查询条件变量。
优选地,当各图数据库对象的时间属性数组为BYTE型,且当步骤S003中创建一维BYTE型查询条件数组时:
步骤S400中,还需要确定各查询时间点在所在字节中的比特位;
步骤S500中,在创建的BYTE型一维查询条件数组中,先根据确定的数组下标确定查询条件数组下标,再根据确定的查询时间点在所在字节在的比特位填充对应位为1;
优选地,当各图数据库对象的时间属性数组为BYTE型,且当步骤S003中创建多个BYTE型查询条件变量时:
步骤S400中,还需要确定各查询时间点在所在字节中的比特位;
步骤S500中,先根据确定的数组下标确定需要填充的查询条件变量,再根据确定的比特位在确定的需要填充的查询条件变量中填充该比特位对应的各查询时间点的状态为1。
优选地,所述时间属性包括日期。
优选地,步骤S001中创建的各图数据库对象时间属性数组为动态一维数组,数组中元素的内容根据图数据库中对象在不同时间的状态进行调整。
与现有技术相对比,本发明的有益效果如下:
(1)本发明采用动态一维字节型数组维护图数据库中对象的时间属性,一个字节中的1个比特位表示一天的状态,既节省存储空间,又方便查询。
(2)本发明根据查询时间所表示的时间查询条件图数据库中各对象的时间属性数组的下标,根据数组下标取数组元素,方法简单,查询速度快。
(3)本发明采用查询条件数组与根据时间查询条件取的各对象时间属性数组中的数组元素做“与”操作,直接获取图数据库中各对象针对查询条件的各时间的状态,查询速度快。
附图说明
图1是本发明的一个实施例的整体流程图;
图2是本发明的一个实施例中图数据库中各对象的一维时间属性数组示意图;
图3是本发明的一个实施例中进行时间查询时的查询条件数组的示意图。
具体实施方式
下面结合附图1-3,对本发明的具体实施方式作详细的说明,首先要说明的是,计算机存储的时间戳指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。而日期格式是可以随意转化成时间戳格式的。如:2020-08-18 00:00:00转时间戳为1597680000。
本发明提供了一种图数据库时间属性的快速查询方法,包括如下步骤:
S001:针对图数据库中每个对象分别创建一个一维数组,作为各图数据库对象时间属性数组,各图数据库对象时间属性数组长度相同;
S002:根据图数据库中各图数据库对象的时间属性填充各图数据库对象的时间属性数组,各数组中的每一位表示该数组对应的图数据库对象在该位所对应的时间的状态,每一位填充数值0或1,0表示该图数据库对象时间属性不满足该位所表示的时间;1表示该图数据库对象的时间属性满足该位所表示的时间;
如果以天为单位,以1970年01月01日为起始日期,则为图数据库中每个对象创建一个动态的一维数组,数组下标1:表示1970年01月01日,2:1970年01月02日,数组中每一位表示该对象对应该日期的状态,按100年进行计算,粗略统计,总共历经约36500天,即需要36500位来表示100年中每一天的状态。实际情况则不需要这么多位,因为从1970年1月1月到至今2020年8月18日,不过50年而已。
如果要表示100年的36500天就需36500个bit,即需要4563个字节(36500%8=4,562.5)。将这4563的字节组成一个数组。每一个bit位分别对应从1970年01月01到2070年01月01日的每一天,每一个bit位为0表示不满足当前bit位指向的日期的条件;1则表示满足。
S003:根据查询条件创建一维查询条件数组或多个查询条件变量,并初始化查询条件数组各位或查询条件变量为0,所述查询条件为时间,所述一维查询条件数组和所述查询条件变量包括对应于所述查询条件表示的各查询时间点的状态;
S004:根据所述查询条件表示的各查询时间点确定各图数据库对象时间属性数组下标,取出各数组下标中的元素;
S005:根据查询条件填充所述查询条件数组或者多个查询条件变量;
根据步骤S004中确定的数组下标,将所述查询条件数组中对应于所述查询条件表示的各查询时间点的各位填充为1,或多个查询条件变量中对应于所述查询条件表示的各查询时间点的各位填充为1;
S006:将步骤S400中取出的各数组下标中的元素分别与查询条件数组或多个查询条件变量分别做“与”操作,分别得到各图数据库对象的时间属性各查询时间点的查询结果。
图数据库对象节点和关系(边)的日期属性都以类似图2的格式存储,根据不同的查询条件进行不同的查询。
作为优选实施方式,根据图数据库对象的最早时间和最晚时间确定时间区间,步骤S001创建的各图数据库对象的时间属性数组的长度与所述时间区间的长度相同。
作为优选实施方式,各图数据库对象时间属性数组中的每一位顺序表示该图数据库对象对应的时间状态。
作为优选实施方式,步骤S006中还包括,根据查询条件中各时间点之间的关系,对各查询时间点的查询结果进行相应的关系计算,得到最终的查询结果。
作为优选实施方式,各图数据库对象时间属性数组为BYTE型,每个数组下标中的数组元素存储连续的8个时间点的状态;
步骤S003中创建的一维查询条件数组为BYTE型,所述查询条件数组的每个数组下标中的数组元素存储连续的8个时间点的查询条件状态;
或,步骤S300中创建的多个查询条件变量为BYTE型,每个所述查询条件变量存储连续的8个时间点的查询条件状态。
为了节省存储空间,各图数据库对象时间属性数组可以是BYTE型数组,相应地,查询时,创建的查询条件数组或查询条件变量也可以是BYTE型,定义为BYTE型时,数组的每个下标中的数组元素为一个字节,存储连续的8个时间点的状态或查询条件状态。
作为优选实施方式,所述查询条件为时间段时,在步骤S003中创建一维查询条件数组;所述查询条件为时间点时,创建多个查询条件变量。
作为优选实施方式,当各图数据库对象的时间属性数组为BYTE型,且当步骤S003中创建一维BYTE型查询条件数组时:
步骤S400中,还需要确定各查询时间点在所在字节中的比特位;
步骤S500中,在创建的BYTE型一维查询条件数组中,先根据确定的数组下标确定查询条件数组下标,再根据确定的查询时间点在所在字节在的比特位填充对应位为1;
当各图数据库对象的时间属性数组为BYTE型,且当步骤S003中创建一维BYTE型查询条件数组时,每个数组下标中的数组元素为一个字节,存储连续的8个时间点的状态或查询条件状态,当查询条件的时间点无法构成一个完整的字节时,需要在数组中找到对应于该时间点的比特位,在查询条件数组中将对应的比特位设置为1,进行计算时,则直接根据数组下标取数组元素进行整个字节的“与”操作,这样计算速度很快,可以直接得到对应查询时间点的查询结果。由于在数组中直接通过下标取数组中元素很快,时间复杂度为O(1),查询的时间不随数据的增加而变的越来越慢,而计算机进行位的“与”操作时,也是非常高效的,这也是本发明采用一维数组存储设计,通过“与”操作进行查询的关键所在。
作为优选实施方式,当各图数据库对象的时间属性数组为BYTE型,且当步骤S003中创建多个BYTE型查询条件变量时:
步骤S400中,还需要确定各查询时间点在所在字节中的比特位;
步骤S500中,先根据确定的数组下标确定需要填充的查询条件变量,再根据确定的比特位在确定的需要填充的查询条件变量中填充该比特位对应的各查询时间点的状态为1。
当各图数据库对象的时间属性数组为BYTE型,且当步骤S003中创建多个BYTE型查询条件变量时,各图数据库对象的时间属性数组中每个数组下标中的数组元素为一个字节,存储连续的8个时间点的状态,每个查询条件变量存储一个字节的查询条件的状态,也就是连续的8个时间点的查询条件的状态,比如每个查询条件变量中为01001000,即置为1的比特位为需要查询的时间点,当查询条件的时间点无法构成一个完整的字节时,先根据时间点确定的数组下标,也就是时间点所在的字节,确定需要填充的查询条件变量,再根据查询时间点在所在字节中的比特位进行相应的填充。计算时,直接根据数组下标取时间属性数组元素分别与各查询条件变量进行整个字节的“与”操作。
作为优选实施方式,所述时间属性包括日期。
作为优选实施方式,步骤S001中创建的各图数据库对象时间属性数组为动态一维数组,数组中元素的内容根据图数据库中对象在不同时间的状态进行调整。
实施例1
根据本发明的一个具体实施方案,查询满足1990年3月10日和1990年12月1日的结果,查询条件为2个时间点,如图2所示。
定义包含4563个字节的BYTE型数组为DD,用于存储一个图数据库对象的时间属性;
1990年3月10日与1970年01月01日相隔7373天,
7373=921*8+5,(1)
1990年12月1日与1970年01月01日相隔7639天,
7639=954*8+7,(2)
查询条件为两个时间点,且不在同一个字节,创建两个BYTE型查询条件变量A和B。
对于查询时间点1990年3月10日:
A各位初始值为0;
计算时间点在对象时间属性数组的下标,1990年3月10日的计算如(1)式所示,计算出来的值为921;
计算时间点对应所在数组字节的BIT位,如(1)式所示,计算得到为5(从左到右算),表示第5位;
然后将变量A的第5位设置为1,此时A=00001000=0x08;
则判断满足1990年3月10日时间点的查询,只需如下一次计算即可:
DD[921]&A=DD[921]&0x08;
结果中对应于查询条件的比特位为1的比特位,表示满足条件1990年3月10日,结果中对应于查询条件的比特位为0,表示不满足条件1990年3月10日;
(注:Ox08是二进制00001000的16进制表示方法)。
对于查询条件变量B也有类似的步骤:
B各位初始值为0;
计算时间点在对象时间属性数组的下标,1990年12月1日的计算如(2)式所示,计算出来的值为954;
计算时间点对应所在数组字节的BIT位,如(2)式所示,计算得到为7(从左到右算),表示第5位;
然后将变量B的第7位设置为1,此时B=00000010=0x02;
则判断满足1990年12月1日时间点的查询,只需如下一次计算即可:
DD[954]&B=DD[954]&0x0;
结果中对应于查询条件的比特位为1,表示满足条件1990年12月1日,结果中对应于查询条件的比特位为0表示不满足条件1990年12月1日;
(注:0x02是二进制00000010的16进制表示方法)。
查询的两个时间点,最后将两个查询结果再进行“与”操作,得到最终结果。
实施例2
根据本发明的一个具体实施方案,输入查询条件是2007年7月5日到2007年7月12日连续日期,查询条件为时间段。
图数据库对象节点和关系(边)的日期属性都以类似图3的格式存储,根据不同的查询条件进行不同的查询。定义包含4563个字节的BYTE型数组为DD,用于存储一个图数据库对象的时间属性。
本实施例在查询时间段,创建一个BYTE型一维查询条件数组X,对于查询条件:
2007年7月5日与1970年01月01日相隔13699天
13699=1712*8+3, (3)
2007年7月12日与1970年01月01日相隔13706天
13706=1713*8+2, (4)
查询条件跨1712字节和1713字节,共2个字节,所以一维查询条件数组X长度为2个字节,然后对查询条件数组X的2个字节进行查询条件设置,将相应的比特位设置为1,查询条件数组X的2个字节分别与图数据库对象的日期属性中的第1712字节和第1713字节(取图3中1712字节和1713字节)进行“与”操作。只要结果不为0,即满足条件。
由于在数组中直接通过下标取数组中元素很快,时间复杂度为O(1),查询的时间不随数据的增加而变的越来越慢,而计算机进行位的“与”操作时,也是非常高效的,这也是本发明采用一维数组存储设计,通过与操作进行查询的关键所在。
具体查询步骤如下:
创建一个BYTE型一维查询条件数组X,长度为2个字节;
将一维查询条件数组X的各位初始化为0;
计算时间点在对象时间属性数组的下标,2007年7月5日的计算如(3)式所示,计算出来的值为1712;2007年7月12日的计算如(4)式所示,计算出来的值为1713;
计算时间点对应所在数组字节的BIT位,2007年7月5日的计算如(3)式所示,计算得到为3(从左到右算),表示第3位;2007年7月12日的计算如(4)式所示,计算得到为2(从左到右算),表示第2位;
然后将查询条件数组X的第一字节的第3位至第二字节的第2为设置为1,此时数组X的第一字节为00111111=Ox3F,第二字节为11000000=0xC0;
我们只需要计算BYTE型数组DD第1712的字节第3bit的位置到数组DD1713字节第2bit之间是否存在为1的值即可,具体计算方式如下:
(DD[1712]&0x3F)||(DD[1713]&0XC0) (5)
结果中对应于查询条件的比特位为1的比特位,表示满足条件2007年7月5日到2007年7月12日。
(注:Ox3F是二进制00111111的16进行表示方法,0xC0是二进制11000000的16进制表示方法)
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均包含在本发明的保护范围之内。

Claims (10)

1.一种图数据库时间属性的快速查询方法,其特征在于,包括如下步骤:
S001:针对图数据库中每个对象分别创建一个一维数组,作为各图数据库对象时间属性数组,各图数据库对象时间属性数组长度相同;
S002:根据图数据库中各图数据库对象的时间属性填充各图数据库对象的时间属性数组,各数组中的每一位表示该数组对应的图数据库对象在该位所对应的时间的状态,每一位填充数值0或1,0表示该图数据库对象时间属性不满足该位所表示的时间;1表示该图数据库对象的时间属性满足该位所表示的时间;
S003:根据查询条件创建一维查询条件数组或多个查询条件变量,并初始化查询条件数组各位或查询条件变量为0,所述查询条件为时间,所述一维查询条件数组和所述查询条件变量包括对应于所述查询条件表示的各查询时间点的状态;所述一维查询条件数组包括多个元素,每个元素对应于一个查询时间点的状态,一个一维查询条件数组对应于一个查询时间段内所有查询时间点的状态;一个查询条件变量对应于一个查询时间点的状态;
S004:根据所述查询条件表示的各查询时间点确定各图数据库对象时间属性数组下标,取出各数组下标中的元素;
S005:根据查询条件填充所述查询条件数组或者多个查询条件变量;
根据步骤S004中确定的数组下标,将所述查询条件数组中对应于所述查询条件表示的各查询时间点的各位填充为1,或多个查询条件变量中对应于所述查询条件表示的各查询时间点的各位填充为1;
S006:将步骤S400中取出的各数组下标中的元素分别与查询条件数组或多个查询条件变量分别做“与”操作,分别得到各图数据库对象的时间属性各查询时间点的查询结果。
2.根据权利要求1所述的图数据库时间属性的快速查询方法,其特征在于,根据图数据库对象的最早时间和最晚时间确定时间区间,步骤S001创建的各图数据库对象的时间属性数组的长度与所述时间区间的长度相同。
3.根据权利要求1所述的图数据库时间属性的快速查询方法,其特征在于,各图数据库对象时间属性数组中的每一位顺序表示该图数据库对象对应的时间状态。
4.根据权利要求1所述的图数据库时间属性的快速查询方法,其特征在于,步骤S006中还包括,根据查询条件中各时间点之间的关系,对各查询时间点的查询结果进行相应的关系计算,得到最终的查询结果。
5.根据权利要求1所述的图数据库时间属性的快速查询方法,其特征在于,各图数据库对象时间属性数组为BYTE型,每个数组下标中的数组元素存储连续的8个时间点的状态;
步骤S003中创建的一维查询条件数组为BYTE型,所述查询条件数组的每个数组下标中的数组元素存储连续的8个时间点的查询条件状态;
或,步骤S300中创建的多个查询条件变量为BYTE型,每个所述查询条件变量存储连续的8个时间点的查询条件状态。
6.根据权利要求5所述的图数据库时间属性的快速查询方法,其特征在于,所述查询条件为时间段时,在步骤S003中创建一维查询条件数组;所述查询条件为时间点时,创建多个查询条件变量。
7.根据权利要求6所述的图数据库时间属性的快速查询方法,其特征在于,当各图数据库对象的时间属性数组为BYTE型,且当步骤S003中创建一维BYTE型查询条件数组时:
步骤S400中,还需要确定各查询时间点在所在字节中的比特位;
步骤S500中,在创建的BYTE型一维查询条件数组中,先根据确定的数组下标确定查询条件数组下标,再根据确定的查询时间点在所在字节在的比特位填充对应位为1。
8.根据权利要求6所述的图数据库时间属性的快速查询方法,其特征在于,当各图数据库对象的时间属性数组为BYTE型,且当步骤S003中创建多个BYTE型查询条件变量时:
步骤S400中,还需要确定各查询时间点在所在字节中的比特位;
步骤S500中,先根据确定的数组下标确定需要填充的查询条件变量,再根据确定的比特位在确定的需要填充的查询条件变量中填充该比特位对应的各查询时间点的状态为1。
9.根据权利要求1所述的图数据库时间属性的快速查询方法,其特征在于,所述时间属性包括日期。
10.根据权利要求1所述的图数据库时间属性的快速查询方法,其特征在于,步骤S001中创建的各图数据库对象时间属性数组为动态一维数组,数组中元素的内容根据图数据库中对象在不同时间的状态进行调整。
CN202011525116.9A 2020-12-22 2020-12-22 一种图数据库时间属性的快速查询方法 Active CN112650887B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011525116.9A CN112650887B (zh) 2020-12-22 2020-12-22 一种图数据库时间属性的快速查询方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011525116.9A CN112650887B (zh) 2020-12-22 2020-12-22 一种图数据库时间属性的快速查询方法

Publications (2)

Publication Number Publication Date
CN112650887A CN112650887A (zh) 2021-04-13
CN112650887B true CN112650887B (zh) 2022-02-18

Family

ID=75358863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011525116.9A Active CN112650887B (zh) 2020-12-22 2020-12-22 一种图数据库时间属性的快速查询方法

Country Status (1)

Country Link
CN (1) CN112650887B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102254012A (zh) * 2011-07-19 2011-11-23 北京大学 一种基于外存的图数据存储方法及子图查询方法
CN106294503A (zh) * 2015-06-09 2017-01-04 阿里巴巴集团控股有限公司 数据的动态存储方法、装置及计算设备
CN110134721A (zh) * 2019-05-17 2019-08-16 智慧足迹数据科技有限公司 基于位图的数据统计方法、装置及电子设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8843499B2 (en) * 2010-12-29 2014-09-23 Sybase, Inc. Accelerating database queries comprising positional text conditions plus bitmap-based conditions
CN102411634B (zh) * 2011-12-27 2016-01-13 北京人大金仓信息技术股份有限公司 一种提升嵌入式数据库实时性的数据存储方法
CN103984695B (zh) * 2014-03-21 2017-06-20 华为技术有限公司 一种数据库中的数据查询方法及装置
CN105488189B (zh) * 2015-12-02 2019-02-12 成都科来软件有限公司 一种基于大数据量的五元组查询方法及装置
CN108140022B (zh) * 2015-12-24 2020-09-18 华为技术有限公司 数据查询方法和数据库系统
CN105824952B (zh) * 2016-03-28 2019-04-19 努比亚技术有限公司 一种处理数据的装置和方法
US10747741B2 (en) * 2016-07-26 2020-08-18 Ebay Inc. Mechanism for efficient storage of graph data
CN108205577B (zh) * 2016-12-20 2022-06-03 阿里巴巴集团控股有限公司 一种数组构建、数组查询的方法、装置及电子设备
EP3637280B1 (en) * 2017-08-03 2023-05-24 Huawei Cloud Computing Technologies Co., Ltd. Data storage method and device, and storage medium
CN108363772A (zh) * 2018-02-08 2018-08-03 竞技世界(北京)网络技术有限公司 一种基于缓存的签到数据存储方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102254012A (zh) * 2011-07-19 2011-11-23 北京大学 一种基于外存的图数据存储方法及子图查询方法
CN106294503A (zh) * 2015-06-09 2017-01-04 阿里巴巴集团控股有限公司 数据的动态存储方法、装置及计算设备
CN110134721A (zh) * 2019-05-17 2019-08-16 智慧足迹数据科技有限公司 基于位图的数据统计方法、装置及电子设备

Also Published As

Publication number Publication date
CN112650887A (zh) 2021-04-13

Similar Documents

Publication Publication Date Title
US9870382B2 (en) Data encoding and corresponding data structure
US7702622B2 (en) Advanced techniques for SQL generation of performancepoint business rules
CN109471905B (zh) 一种支持时间范围和属性范围复合查询的区块链索引方法
US6694325B2 (en) Database method implementing attribute refinement model
US7257599B2 (en) Data organization in a fast query system
CN104809190B (zh) 一种树形结构数据的数据库存取方法
CN106227800A (zh) 一种高度关联大数据的存储方法及管理系统
US9152665B2 (en) Labeling versioned hierarchical data
AU2016345990A1 (en) A system and method for processing big data using electronic document and electronic file-based system that operates on RDBMS
CN110275920A (zh) 数据查询方法、装置、电子设备及计算机可读存储介质
JP2002501256A (ja) データベース装置
CN103561133A (zh) 一种ip地址归属信息索引方法及快速查询方法
US7912869B1 (en) Database component packet manager
CN110990403A (zh) 业务数据的存储方法、系统、计算机设备及存储介质
CN104408128B (zh) 一种基于b+树异步更新索引的读优化方法
CN112650887B (zh) 一种图数据库时间属性的快速查询方法
CN114090631A (zh) 一种数据查询方法、装置、电子设备及存储介质
CN105468792B (zh) 一种基于大数据的模糊查询方法及系统
CN110389953B (zh) 基于压缩图的数据存储方法、存储介质、存储装置和服务器
CN107273443A (zh) 一种基于大数据模型元数据的混合索引方法
CN115080543A (zh) 一种事件计划状态数字孪生方法、装置及设备
CA2731799A1 (en) Process for representing and handling multigraphs based on the use of bitmaps
KR101460950B1 (ko) 비정규 테이블 표기법을 기반으로 한 NoSQL 질의 방법 및 장치
CN101458707A (zh) 一种大数据量记录的存储方法
Tsur Succinct data structure for dynamic trees with faster queries

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
GR01 Patent grant
GR01 Patent grant