CN108762915A - 一种在gpu内存中缓存rdf数据的方法 - Google Patents
一种在gpu内存中缓存rdf数据的方法 Download PDFInfo
- Publication number
- CN108762915A CN108762915A CN201810356556.2A CN201810356556A CN108762915A CN 108762915 A CN108762915 A CN 108762915A CN 201810356556 A CN201810356556 A CN 201810356556A CN 108762915 A CN108762915 A CN 108762915A
- Authority
- CN
- China
- Prior art keywords
- key
- gpu
- predicate
- value
- memory
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种在GPU内存中缓存RDF数据的方法,包括如下步骤:将RDF三元组数据集加载到内存中,以键值对形式存储成一张哈希表,哈希表被划分成多个区域;在GPU内存中分配一块区域用来缓存RDF数据,将内存区域划分成固定大小的块;对于每个谓词段,计算其需要多少个GPU内存块来存储其中的键值对数据;服务端接收查询请求,将查询请求分解成多个查询步骤;对于每个查询步骤的三元组,找到其中的谓词在哈希表中对应的谓词段,为其分配所需的GPU内存块;将谓词段中的键值对拷贝到GPU内存块中,并且将映射表中与该谓词段对应的信息拷贝到GPU内存中;在GPU上处理一个查询步骤时,通过映射表和映射函数找到某对特定的键值对在GPU内存中的存储位置,完成数据访问。
Description
技术领域
本发明涉及内存计算领域,特别是涉及一种在GPU内存中缓存RDF数据的方法。
背景技术
资源描述框架RDF是万维网联盟W3C推荐使用的一个标准,用于表示万维网Web上互相关联的数据。RDF把互相关联的数据表示成三元组的集合,一个三元组由主体subject,谓词predicate,客体object构成。RDF被广泛应用于许多互联网应用中,如谷歌Google的知识图谱和许多公开的知识库中,如DBpedia,Wikidata。为了能用一种统一的方式来查询以RDF格式组织的数据,W3C设计了一种名为SPARQL的查询语言。一个SPARQL查询请求中通常包含多个RDF三元组。随着互联网规模的急剧膨胀,Web上的数据量也变得非常庞大,对于使用RDF来表示数据的互联网应用来说,如何在庞大的RDF数据集上高效地处理SPARQL查询请求成了一个巨大的挑战。
一方面,硬件技术的不断发展使得大容量内存条的价格变得足够低廉,于是现有系统为了降低SPARQL查询请求的延迟,都会把RDF数据存放到内存中,从而利用到内存访问延迟低的特性。另一方面,图形处理单元GPU相比中央处理单元CPU有更多的核心,从总体上看,GPU的计算能力比CPU强,但是GPU配备的内存容量比CPU小得多。在主流的服务器配置中,CPU配备的内存容量一般在64GB~256GB之间,而GPU配备的内存容量在4GB~12GB之间。此外,在GPU上执行计算任务之前,需要先把计算任务所需的数据传输到GPU内存中,否则计算任务无法执行。这项数据准备工作直接影响到执行计算任务所需的时间。因此使用GPU来加速处理SPARQL查询面临着两个挑战:一是GPU有限的内存容量;二是要充分利用CPU与GPU之间的传输带宽,减少数据准备工作的耗时。
因此如何设计一种在GPU内存中缓存RDF数据的方法,能够克服GPU的内存容量限制,充分利用CPU与GPU之间的传输带宽,已成为使用GPU来加速SPARQL查询的技术难题。
发明内容
本发明的目的是提供一种在GPU内存中缓存RDF数据的方法,能够克服GPU的内存容量限制,充分利用CPU与GPU之间的传输带宽,使得采用GPU来加速SPARQL查询的技术方案得以实施。
根据本发明提供的一种在GPU内存中缓存RDF数据的方法,其特征在于,包括如下步骤:
步骤S1:将RDF三元组数据集加载到内存中,以键值对key-value的形式存储成一张哈希表,其中,哈希表被划分成多个区域,每个区域里存储的key-value都具有相同的谓词,每个区域称为一个“谓词段”segment;
步骤S2:在GPU内存中分配一块区域用来缓存RDF数据,将这块内存区域划分成固定大小的块block,并给每个block编号;
步骤S3:对于每个谓词段,计算其需要多少个GPU内存块来存储其中的key-value数据;
步骤S4:服务端接收查询请求,将查询请求分解成多个查询步骤,每个查询步骤是一个包括主体、谓词、客体的三元组;
步骤S5:对于每个查询步骤的三元组,找到其中的谓词在哈希表中对应的谓词段,为其分配所需的GPU内存块;
步骤S6:将谓词段中的key-value拷贝到GPU内存块中,并且将映射表中与该谓词段对应的信息拷贝到GPU内存中;
步骤S7:在GPU上处理一个查询步骤时,通过映射表和映射函数找到某对特定的key-value在GPU内存中的存储位置,从而完成数据访问。
上述技术方案中,所述步骤S1包括:步骤S101:key中包含RDF三元组的主体id和谓词的id,value是由key中的主体和谓词对应的所有客体组成的一个列表,在将RDF三元组数据集加载到内存中时,具有相同谓词id的key会被存放到哈希表的同一个segment中,在加载数据集的时候静态地将哈希表划分成segment;
步骤S102:为了保证value能够连续地存放,开辟一块连续的内存空间作为value的专有存储区域,每次插入一个key的时候都从这块区域中分配一块连续的内存,用来存储这个key的value,每个key中编码一个指向它的value的指针,同时必须遵守一个约束:在完全插完一个谓词的key-value之后,才能开始插入另外一个谓词的key-value。在完成一个谓词的key-value插入之后,需要把segment在内存中的起始地址和终止地址存入元数据表中。
上述技术方案中,所述步骤S2中,所有的GPU内存块按照内存起始地址的升序编号,第一个块的序号是0。
上述技术方案中,所述步骤S3中,根据谓词段中key和value所占用的内存空间大小,计算各自所需的GPU内存块数量,记录到元数据表中。
上述技术方案中,所述步骤S4中,服务端接收到查询请求后,会解析SPARQL查询语句,分解成多个三元组。
上述技术方案中,所述步骤S5中,处理SPARQL查询时,逐条处理其中的三元组,对于每个三元组中的谓词,根据元数据表中的记录,分配足够多的block给key和value,然后把所分配的block的编号记录到映射表中,其中,映射表中存储了每个谓词对应的segment总共需要的block数量,所分配到的block的编号,以及每个block在GPU内存中对应的起始地址。
上述技术方案中,所述步骤S6中,根据元数据表中记录的segment在内存中的起始地址,以及映射表中记录的分配给segment的每个block在GPU内存中的起始地址,将key和value拷贝到所分配的block中,以及将映射表中与该segment相关的信息拷贝到GPU内存中。
上述技术方案中,所述步骤S7中,对某个key使用映射函数和映射表在GPU内存中定位到key在GPU内存中的位置,进而找到key对应的value,完成数据访问。
与现有技术相比,本发明具有如下的有益效果:
本发明提出的一种在GPU上缓存RDF数据的方法,在将RDF数据加载到内存时将具有相同谓词的三元组聚集成“谓词段”segment,既保留了key-value存储能够快速查找的优点,同时能够以segment为单位在GPU内存中缓存RDF数据。通常一个segment的大小往往小于GPU内存容量,从而克服了GPU的内存容量的限制。
本发明提出的一种在GPU上缓存RDF数据的方法,将RDF数据在内存中聚集成segment,避免了以key-value为单位在CPU与GPU之间进行数据传递会造成的带宽浪费,从而充分利用了CPU与GPU之间的带宽。
本发明提出的一种在GPU上缓存RDF数据的方法,克服了利用GPU来加速SPARQL所面临的挑战,为之后采用GPU来加速SPARQL查询的技术方案提供了借鉴意义。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明提供的在GPU内存中缓存RDF数据的流程示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
如图1所示,根据本发明提供的一种在GPU内存中缓存RDF数据的方法,包括如下步骤:
步骤S1:将RDF三元组数据集加载到内存中,以键值对key-value的形式组织成一张哈希表,哈希表被划分成多个区域,每个区域里存储的key-value数据都具有相同的谓词,这样的一个区域称为“谓词段”segment。其中,内存能够完全容纳RDF数据集。
步骤S2:在GPU内存中分配一块区域用来缓存RDF数据,将这块内存区域划分成固定大小的块block,并给每个block编号;
步骤S3:对于每个谓词段,计算其需要多少个GPU内存块来存储其中的key-value数据;
步骤S4:服务端接收查询请求,将查询请求分解成多个查询步骤,每个查询步骤是一个包括主体、谓词、客体的三元组;
步骤S5:对于每个查询步骤的三元组,找到其中的谓词在哈希表中对应的谓词段,为其分配所需的GPU内存块;
步骤S6:将谓词段中的key-value拷贝到GPU内存块中,并且将映射表中与该谓词段对应的信息拷贝到GPU内存中;
步骤S7:在GPU上处理一个查询步骤时,通过映射表和映射函数找到某对特定的key-value在GPU内存中的存储位置,从而完成数据访问。
所述步骤S1包括:
步骤S101:key中包含RDF三元组的主体id和谓词的id,value是由key中的主体和谓词对应的所有客体组成的一个列表,在将RDF三元组数据集加载到内存中时,具有相同谓词id的key会被存放到哈希表的同一个segment中,在加载数据集的时候静态地将哈希表划分成segment;
步骤S102:为了保证value能够连续地存放,开辟一块连续的内存空间作为value的专有存储区域,每次插入一个key的时候都从这块区域中分配一块连续的内存,用来存储这个key的value,每个key中编码一个指向它的value的指针,同时必须遵守一个约束:在完全插完一个谓词的key-value之后,才能开始插入另外一个谓词的key-value。在完成一个谓词的key-value插入之后,需要把segment在内存中的起始地址和终止地址存入元数据表中。
所述步骤S2中,所有的GPU内存块按照其内存起始地址的升序进行编号,第一个block的序号是0。
所述步骤S3包括:根据谓词段中key-value所占用的内存空间大小,分别计算key和value各自所需的block数量,记录到元数据表中。
所述步骤S4中,服务端接收到查询请求后,将SPARQL查询语句分解成多个三元组,每个三元组是一个查询步骤,假设每个三元组的谓词部分都是已知的。假定用户已给出SPARQL查询语句中每个三元组的谓词。
所述步骤S5中,处理SPARQL查询的过程会逐条处理查询中的每个步骤,对于每个步骤中的谓词,根据元数据表中记录的信息,为其分配足够多的block给key和value,同时把所分配的block编号记录的映射表中。映射表中存储了每个segment总共需要的block数量,分配给segment的所有block的编号,以及每个block在GPU内存中对应的起始地址。
所述步骤S6中,根据元数据表中记录的segment在内存中的起始地址,以及映射表中记录的分配给segment的每个block在GPU内存中的起始地址,将谓词的key-value拷贝到所分配的block中,以及将映射表中与该segment相关的信息拷贝到GPU内存中(简称映射表)。
所述步骤7包括:使用映射函数和映射表在GPU内存中查找segment中某对key-value的存储位置。具体为使用如下数量关系来定位key在GPU中的存储位置:
keyOffset=Hash(key)mod(Nblock*Nkey_per_block)
keyId=MappingTable[keyOffset/Nkey_per_block]+keyOffset mod Nkey_per_block
从而在GPU上完成数据访问。其中,keyOffset是key在segment中的偏移量;Nkey_per_block是每个block能够容纳的key的数量;MappingTable是映射表;Nblock是segment的key部分所占用的GPU内存块数量。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。
Claims (8)
1.一种在GPU内存中缓存RDF数据的方法,其特征在于,包括如下步骤:
步骤S1:将RDF三元组数据集加载到内存中,以键值对key-value的形式存储成一张哈希表,其中,哈希表被划分成多个区域,每个区域里存储的key-value都具有相同的谓词,每个区域称为一个“谓词段”segment;
步骤S2:在GPU内存中分配一块区域用来缓存RDF数据,将这块内存区域划分成固定大小的块block,并给每个block编号;
步骤S3:对于每个谓词段,计算其需要多少个GPU内存块来存储其中的key-value数据;
步骤S4:服务端接收查询请求,将查询请求分解成多个查询步骤,每个查询步骤是一个包括主体、谓词、客体的三元组;
步骤S5:对于每个查询步骤的三元组,找到其中的谓词在哈希表中对应的谓词段,为其分配所需的GPU内存块;
步骤S6:将谓词段中的key-value拷贝到GPU内存块中,并且将映射表中与该谓词段对应的信息拷贝到GPU内存中;
步骤S7:在GPU上处理一个查询步骤时,通过映射表和映射函数找到某对特定的key-value在GPU内存中的存储位置,从而完成数据访问。
2.根据权利要求1所述的一种在GPU内存中缓存RDF数据的方法,其特征在于,所述步骤S1包括:
步骤S101:key中包含RDF三元组的主体id和谓词的id,value是由key中的主体和谓词对应的所有客体组成的一个列表,在将RDF三元组数据集加载到内存中时,具有相同谓词id的key会被存放到哈希表的同一个segment中,在加载数据集的时候静态地将哈希表划分成segment;
步骤S102:为了保证value能够连续地存放,开辟一块连续的内存空间作为value的专有存储区域,每次插入一个key的时候都从这块区域中分配一块连续的内存,用来存储这个key的value,每个key中编码一个指向它的value的指针,同时必须遵守一个约束:在完全插完一个谓词的key-value之后,才能开始插入另外一个谓词的key-value;在完成一个谓词的key-value插入之后,需要把segment在内存中的起始地址和终止地址存入元数据表中。
3.根据权利要求1所述的一种在GPU内存中缓存RDF数据的方法,其特征在于,所述步骤S2中,所有的GPU内存块按照内存起始地址的升序编号,第一个块的序号是0。
4.根据权利要求1所述的一种在GPU内存中缓存RDF数据的方法,其特征在于,所述步骤S3中,根据谓词段中key和value所占用的内存空间大小,计算各自所需的GPU内存块数量,记录到元数据表中。
5.根据权利要求1所述的一种在GPU内存中缓存RDF数据的方法,其特征在于,所述步骤S4中,服务端接收到查询请求后,会解析SPARQL查询语句,分解成多个三元组。
6.根据权利要求1所述的一种在GPU内存中缓存RDF数据的方法,其特征在于,所述步骤S5中,处理SPARQL查询时,逐条处理其中的三元组,对于每个三元组中的谓词,根据元数据表中的记录,分配足够多的block给key和value,然后把所分配的block的编号记录到映射表中,其中,映射表中存储了每个谓词对应的segment总共需要的block数量,所分配到的block的编号,以及每个block在GPU内存中对应的起始地址。
7.根据权利要求1所述的一种在GPU内存中缓存RDF数据的方法,其特征在于,所述步骤S6中,根据元数据表中记录的segment在内存中的起始地址,以及映射表中记录的分配给segment的每个block在GPU内存中的起始地址,将key和value拷贝到所分配的block中,以及将映射表中与该segment相关的信息拷贝到GPU内存中。
8.根据权利要求1所述的一种在GPU内存中缓存RDF数据的方法,其特征在于,所述步骤S7中,对某个key使用映射函数和映射表在GPU内存中定位到key在GPU内存中的位置,进而找到key对应的value,完成数据访问。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810356556.2A CN108762915B (zh) | 2018-04-19 | 2018-04-19 | 一种在gpu内存中缓存rdf数据的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810356556.2A CN108762915B (zh) | 2018-04-19 | 2018-04-19 | 一种在gpu内存中缓存rdf数据的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108762915A true CN108762915A (zh) | 2018-11-06 |
CN108762915B CN108762915B (zh) | 2020-11-06 |
Family
ID=64011329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810356556.2A Active CN108762915B (zh) | 2018-04-19 | 2018-04-19 | 一种在gpu内存中缓存rdf数据的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108762915B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109062929A (zh) * | 2018-06-11 | 2018-12-21 | 上海交通大学 | 一种查询任务通信方法及系统 |
CN110515860A (zh) * | 2019-08-30 | 2019-11-29 | 苏州浪潮智能科技有限公司 | 一种内存中存储数据的地址标识方法、系统及装置 |
CN112445713A (zh) * | 2019-08-15 | 2021-03-05 | 辉达公司 | 用于对内存有效分区的技术 |
CN114461406A (zh) * | 2022-04-13 | 2022-05-10 | 麒麟软件有限公司 | DMA OpenGL优化方法 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2002346510A1 (en) * | 2001-11-21 | 2003-06-10 | Metatomix, Inc. | System for querying a relational database using schema-less queries |
WO2008026794A1 (en) * | 2006-08-28 | 2008-03-06 | Korea Institute Of Science & Technology Information | System for providing service of knowledge extension and inference based on dbms, and method for the same |
US20080177864A1 (en) * | 2007-01-22 | 2008-07-24 | Minborg Invent I Goeteborg Ab | Method and Apparatus For Obtaining Digital Objects In A Communication Network |
US20120047124A1 (en) * | 2010-08-17 | 2012-02-23 | International Business Machines Corporation | Database query optimizations |
US8175617B2 (en) * | 2009-10-28 | 2012-05-08 | Digimarc Corporation | Sensor-based mobile search, related methods and systems |
CN103699656A (zh) * | 2013-12-27 | 2014-04-02 | 同济大学 | 一种基于GPU的面向海量多媒体数据的MapReduce平台 |
CN105608228A (zh) * | 2016-01-29 | 2016-05-25 | 中国科学院计算机网络信息中心 | 一种高效的分布式的rdf数据存储方法 |
CN105653708A (zh) * | 2015-12-31 | 2016-06-08 | 中国科学院深圳先进技术研究院 | 一种异构集群的Hadoop矩阵处理方法及系统 |
CN105677486A (zh) * | 2016-01-08 | 2016-06-15 | 上海交通大学 | 数据并行处理方法及系统 |
CN106599091A (zh) * | 2016-11-24 | 2017-04-26 | 上海交通大学 | 基于键值存储的rdf图结构存储和索引方法 |
CN106775598A (zh) * | 2016-12-12 | 2017-05-31 | 温州大学 | 一种基于gpu的压缩稀疏矩阵的对称矩阵构造方法 |
EP3164808A4 (en) * | 2014-07-04 | 2017-07-19 | Microsoft Technology Licensing, LLC | Personalized trending image search suggestion |
-
2018
- 2018-04-19 CN CN201810356556.2A patent/CN108762915B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2002346510A1 (en) * | 2001-11-21 | 2003-06-10 | Metatomix, Inc. | System for querying a relational database using schema-less queries |
WO2008026794A1 (en) * | 2006-08-28 | 2008-03-06 | Korea Institute Of Science & Technology Information | System for providing service of knowledge extension and inference based on dbms, and method for the same |
US20080177864A1 (en) * | 2007-01-22 | 2008-07-24 | Minborg Invent I Goeteborg Ab | Method and Apparatus For Obtaining Digital Objects In A Communication Network |
US8175617B2 (en) * | 2009-10-28 | 2012-05-08 | Digimarc Corporation | Sensor-based mobile search, related methods and systems |
US20120047124A1 (en) * | 2010-08-17 | 2012-02-23 | International Business Machines Corporation | Database query optimizations |
CN103699656A (zh) * | 2013-12-27 | 2014-04-02 | 同济大学 | 一种基于GPU的面向海量多媒体数据的MapReduce平台 |
EP3164808A4 (en) * | 2014-07-04 | 2017-07-19 | Microsoft Technology Licensing, LLC | Personalized trending image search suggestion |
CN105653708A (zh) * | 2015-12-31 | 2016-06-08 | 中国科学院深圳先进技术研究院 | 一种异构集群的Hadoop矩阵处理方法及系统 |
CN105677486A (zh) * | 2016-01-08 | 2016-06-15 | 上海交通大学 | 数据并行处理方法及系统 |
CN105608228A (zh) * | 2016-01-29 | 2016-05-25 | 中国科学院计算机网络信息中心 | 一种高效的分布式的rdf数据存储方法 |
CN106599091A (zh) * | 2016-11-24 | 2017-04-26 | 上海交通大学 | 基于键值存储的rdf图结构存储和索引方法 |
CN106775598A (zh) * | 2016-12-12 | 2017-05-31 | 温州大学 | 一种基于gpu的压缩稀疏矩阵的对称矩阵构造方法 |
Non-Patent Citations (8)
Title |
---|
BIN WANG ET AL: "A User Mode CPU-GPU Scheduling Framework for Hybrid Workloads", 《FUTURE GENERATION COMPUTER SYSTEMS》 * |
CHANG LIU ET AL: "Efficient RDF stream reasoning with graphics processing units (GPUs)", 《IN PROC. COMPANION PUBLICATION 23RD INT. CONF. WORLD WIDE WEB COMPANION》 * |
MINHO BAE ET AL: "Efficient RDF Representation and Parallel Join Processing Algorithm on General Purpose Many-core", 《INTERNATIONAL SYMPOSIUM ON COMPUTER IEEE》 * |
XIAOPENG GAO ET AL: "Accelerate Demodulation of Quadrature Amplitude Modulation Using GPU", 《APPLIED MECHANICS AND MATERIALS》 * |
YUNHAO ZHANG ET AL: "Sub-millisecond Stateful Stream Querying over Fast-evolving Linked Data", 《26TH ACM SYMPOSIUM ON OPERATING SYSTEMS PRINCIPLES》 * |
张军昭: "基于GPU的分子动力学模拟方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
徐芳芳 等: "基于列数据库和图缓存的海量RDF管理", 《武汉大学学报( 理学版)》 * |
邓海龙: "基于列数据库和图缓存的海量RDF管理", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109062929A (zh) * | 2018-06-11 | 2018-12-21 | 上海交通大学 | 一种查询任务通信方法及系统 |
CN112445713A (zh) * | 2019-08-15 | 2021-03-05 | 辉达公司 | 用于对内存有效分区的技术 |
CN110515860A (zh) * | 2019-08-30 | 2019-11-29 | 苏州浪潮智能科技有限公司 | 一种内存中存储数据的地址标识方法、系统及装置 |
CN114461406A (zh) * | 2022-04-13 | 2022-05-10 | 麒麟软件有限公司 | DMA OpenGL优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108762915B (zh) | 2020-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108762915A (zh) | 一种在gpu内存中缓存rdf数据的方法 | |
EP3026577B1 (en) | Dual data storage using an in-memory array and an on-disk page structure | |
US10198363B2 (en) | Reducing data I/O using in-memory data structures | |
US20110138123A1 (en) | Managing Data Storage as an In-Memory Database in a Database Management System | |
CN107423422B (zh) | 基于网格的空间数据分布式存储及检索方法和系统 | |
TWI262406B (en) | System, method and program storage device for dynamic caching of data based on queries performed by a local application | |
US9495398B2 (en) | Index for hybrid database | |
US10417257B2 (en) | Non-blocking database table alteration | |
US20150142733A1 (en) | System and method for efficient management of big data in a database using streaming tables | |
US20120323971A1 (en) | Optimizing data storage and access of an in-memory database | |
US20090037365A1 (en) | Product join dynamic partition elimination for multilevel partitioning | |
US20080319967A1 (en) | Method and System for Executing a Database Query | |
US20070226176A1 (en) | Apparatus and method for optimizing a query to a partitioned database table using a virtual maintained temporary index that spans multiple database partitions | |
EP3401807B1 (en) | Synopsis based advanced partition elimination | |
US7899839B2 (en) | Query rewrite with a remote object | |
US20100274795A1 (en) | Method and system for implementing a composite database | |
CN101876983A (zh) | 数据库分区方法与系统 | |
WO2010120457A2 (en) | Dynamic hash table for efficient data access in a relational database system | |
US20120290595A1 (en) | Super-records | |
US20190332695A1 (en) | System and methods for providing a schema-less columnar data store | |
CN109690522B (zh) | 一种基于b+树索引的数据更新方法、装置及存储装置 | |
US20100036799A1 (en) | Query processing using horizontal partial covering join index | |
US20230185806A1 (en) | Data system configured to transparently cache data of data sources and access the cached data | |
US20190354516A1 (en) | Single-level, multi-dimension, hash-based table partitioning | |
Cruz et al. | A scalable file based data store for forensic analysis |
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 |