CN102270232B - 一种存储优化的语义数据查询系统 - Google Patents
一种存储优化的语义数据查询系统 Download PDFInfo
- Publication number
- CN102270232B CN102270232B CN201110205140A CN201110205140A CN102270232B CN 102270232 B CN102270232 B CN 102270232B CN 201110205140 A CN201110205140 A CN 201110205140A CN 201110205140 A CN201110205140 A CN 201110205140A CN 102270232 B CN102270232 B CN 102270232B
- Authority
- CN
- China
- Prior art keywords
- data
- module
- semantic
- storage
- inquiry
- 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.)
- Expired - Fee Related
Links
Images
Abstract
本发明公开了一种存储优化的语义数据查询系统,包括语义数据导入模块、语义数据存储管理模块、存储数据持久化模块和语义数据查询模块。本系统支持了多种规范描述的资源描述框架数据的导入,并可以将存储模型映射到磁盘中,可以实现内存存储模型的快速重现。系统通过对语义数据查询进行转换和处理,形成底层存储模型可操作的查询图模型;通过对底层存储数据进行统计,建立了查询连接操作的代价模型,并使用贪婪算法实现了语义数据查询的优化模块,对查询的先后顺序进行了调整,提高了查询的性能。
Description
技术领域
本发明属于语义网的资源描述框架数据存储及其查询领域,具体涉及一种包含优化的存储模型和基于该优化模型基础上的语义数据查询系统。
背景技术
语义网是由万维网的创始人Tim Berners-Lee提出的关于下一代互联网的设想。它通过定义相应的描述标准使得数据更加结构化,通过向数据添加规则和语义,使得这些数据能够被机器处理。在七层语义网架构中,可扩展标识语言(Extensible Markup Language,XML)作为基本的语法层,而资源描述框架(Resource Description Framework,RDF)作为描述语义网数据的通用语言,是语义网描述数据的基础,资源描述框架的层次架构之上可以使用资源描述框架模式(Resource Description Framework Schema,RDFS)和网络本体语言(Web Ontology Language,OWL),通过一些内建的推理规则,能够对资源描述框架数据进行逻辑推理操作。语义数据查询语言(Simple Protocol and Query Language,SPARQL)已经成为查询资源描述框架数据的推荐标准,语法和结构化查询语言(Structured QueryLanguage,SQL)相似,但又有不同的特点。因此,如何在特定的存储模型上实现语义数据查询并对其进行查询的优化成为研究的热点。
传统的存储资源描述框架数据的方式为三元组表,这些方式主要有基于关系数据库的存储方式和基于磁盘的本地文件存储方式。测试表明,三元组表或相似的方式存储空间利用率和查询效率都不是很高。垂直分割方式为了优化三元组的方式提出了按照属性进行分割,每个属性对应一个表,使得存储空间可以大大的较少,在查询单值属性可以快速的得到特定属性的所有结果。同时注意到资源描述框架数据一般拥有相关的模式信息,可以使用模式信息对分割方式进行进一步的优化。而随着硬件技术的不断发展,内存容量也越来越大,构建大规模的基于内存的资源描述框架数据存储系统成为可能。首先内存能够提供相当快的访问速度,可以对数据进行实时的操作,节省磁盘的开销,如果在内存中设计一个存储结构良好的资源描述框架存储系统,可以进一步的提高查询和分析的效率。基于内存的资源描述框架存储结构仍然处于不断的研究和完善阶段,构建一个基于内存的优化的存储模型和查询系统还是相当具有研究意义。
研究表明,查询语句的执行顺序对查询的性能影响较大。而语义数据查询中基本图模式(Basic Graph Pattern,BGP)是语义数据查询语言非常重要的组成部分,因此优化的主要工作是对基本图模式的优化。传统的使用关系数据库作为后端的资源描述框架数据存储系统,由于直接将语义数据查询语言转化为结构化查询语言,因此一般不需要直接对语义数据查询语言进行优化,直接使用关系数据库的结构化查询语言优化引擎来实现。在优化的过程中,一般使用选择性评估来估计查询的代价大小。基于不同的存储模型有不同的选择性评估方法。
一般的资源描述框架数据都有相应的模式信息,模式信息定义了实例空间数据使用的词汇。可以使用模式空间的词汇对实例空间的存储结构进行优化。本发明提出的基于内存的存储系统利用模式信息对存储结构进行存储优化的方法可以达到提高存储空间利用率,并且达到提高查询的性能。同时通过支持语义数据查询语言,并对查询的过程使用选择性评估和贪婪算法生成优化的查询计划,可以大大提高查询的速度。
实验表明,使用模式信息对实例空间的数据进行组织存储在保证存储空间利用率的前提下,可以提高查询的效率。而在特定的优化存储模型上进行语义数据查询的优化可以进一步提高系统的查询效率。
发明内容
本发明的目的在于提供一种存储优化的语义数据查询系统,该系统可以使得资源描述框架数据能够高效地存储并被快速地查询。
本发明提供的一种存储优化的语义数据查询系统,其特征在于,该系统包括语义数据导入模块、语义数据存储管理模块、存储数据持久化模块和语义数据查询模块;
语义数据导入模块用于将各种格式的数据转换成合适的格式,并和数据存储管理模块进行交互完成数据的导入工作;
语义数据存储管理模块负责整个系统的资源描述框架数据的存储和管理;它接受来自于语义数据导入模块做产生的格式化数据,将数据存入语义数据存储管理模块当中;它与语义数据查询模块进行交互,接受来自语义数据查询模块的数据查询请求,并将符合条件的结果记录返回给语义数据查询模块;它与存储数据持久化模块进行交互,在整个系统退出前,将要序列化的数据传输给存储数据持久化模块,并在整个系统初始化的过程中,将序列化的数据直接映像到内存中;
存储数据持久化模块用于与语义数据存储管理模块进行交互,在系统退出时,将内存数据存储到文件系统中,以保证数据的持久性;在系统初始化时,将文件数据传递给模块;
语义查询优化模块用于将用户的查询语句转换成系统能执行的特定格式,并将数据请求发送给语义数据存储管理模块,得到符合条件的记录,并将结果返回给用户。
本发明将资源描述框架数据存储优化模型和语义数据查询优化相结合,提出了一种高效的数据查询系统。该系统具有以下特点和优势:(1)基于主存的方法,将三元组转化为标识符(整型ID)进行存储,采用基于属性的垂直分割方法并利用模式数据的信息来组织存储结构,极大的提高了存储空间的利用率,同时方便查询的操作;(2)将语义数据查询语句进行查询图的转换,并对底层数据进行统计,利用贪婪算法实现了优化的查询计划,提高了语义数据查询的性能。
附图说明
图1为语义数据查询系统的总体结构示意图;
图2为语义数据导入模块示意图;
图3为语义数据存储模型管理模块示意图;
图4为字符串与标识符映射模块数据结构示意图;
图5为资源描述框架数据存储优化模型示意图;
图6为实例空间中谓词为特定类型(rdf:type)的三元组的划分方式;
图7为数据查询模块示意图;
图8为语义数据查询语句的连接操作转换示意图;
具体实施方式
下面结合附图对本发明作进一步详细的说明。
如图1所示,本发明主要包括四个模块:语义数据导入模块1、语义数据存储管理模块2、存储数据持久化模块3和语义数据查询模块4。
语义数据存储管理模块2主要负责整个系统的资源描述框架数据的存储和管理。它接受来自于语义数据导入模块1做产生的格式化数据,将数据存入语义数据存储管理模块2当中;它与语义数据查询模块4进行交互,接受来自语义数据查询模块4的数据查询请求,并将符合条件的结果记录返回给语义数据查询模块4;它与存储数据持久化模块3进行交互,在整个系统退出前,将要序列化的数据传输给存储数据持久化模块3,并在整个系统初始化的过程中,将序列化的数据直接映像到内存中。
数据导入模块1主要将各种格式的数据转换成统一的格式,并和数据存储管理模块2进行交互完成数据的导入工作。
存储数据持久化模块3的主要作用是与语义数据存储管理模块2进行交互,在系统退出时,将内存数据存储到文件系统中,以保证数据的持久性;在系统初始化时,将文件数据传递给模块2。
查询优化模块4将用户的查询语句转换成系统能执行的特定格式,并将数据请求发送给数据存储管理模块2,得到符合条件的记录,并将结果返回给用户。
下面分别举例说明上述各个部件的具体构成。
如图2所示,语义数据导入模块1包括语义数据解析模块1.1、数据分类模块1.2和数据格式化模块1.3。
由于语义数据的格式各种各样,语义数据解析模块1.1的作用是将各种格式的实例数据解析成系统可接受的形如<主体,谓词,客体>这样的三元组格式,并将该格式的数据和模式数据传递给数据分类模块1.2。
数据分类模块1.2将模块1.1传来的三元组格式数据根据模式数据划分成不同的类别的数据,并将分类之后的数据传递给数据格式化模块1.3。
数据格式化模块1.3的主要作用是将接收的数据格式化成可以存储的数据格式。
如图3所示,语义数据存储管理模块包括数据存储器2.1,数据查询器2.2,字符串管理器2.3,索引管理器2.4,统计信息管理器2.5,实例数据管理器2.6,以及存储空间管理器2.7。
数据存储管理模块2是整个系统的核心模块,主要的所用是从格式化的数据建立起优化的存储模型,并提供数据检索的功能。
数据存储器2.1在接收语义数据导入模块1所产生的格式化数据之后,首先将三元组的各个分量传递给字符串管理器2.3,再将该三元组按照模式数据分别传递给索引管理器2.4、统计信息管理器2.5和实例数据管理器2.6。
统计信息管理器2.5统计各个三元组的各个分量的出现情况,并存储统计信息;
索引管理器2.4主要的作用是建立实例数据的索引,以便加快数据的查询。
在字符串管理器2.3中,主要建立的是字符串与其标识符之间的映射:从字符串到标识符,从标识符到字符串都需要能够快速地进行转换。图5展示了字符串管理器2.3所采用的数据结构。
字符串/标识符映射表采用基于内存的存储长度可变记录的数据结构来实现。表头的元数据存储部分(Metadata)记录该结构的使用情况的信息。变长表可以通过偏移值(offset)逐条访问记录。其中每条记录包含了该记录的长度(length),该字符串映射的标识符(ID),该记录的字符串值(string)。
标识符/偏移映射表采用基于内存的存储长度固定记录的数据结构来实现。表头的元数据存储部分(Metadata)记录该结构的使用情况的信息。由于表格中每条记录都是固定长度的,因此每条记录不需要单独存储该记录的长度,记录的长度由表格的元数据统一存储。表格中的每条记录包含了标识符(ID)和该标识符在字符串与标识符映射表中的起始偏移值(offset)。因此可以通过标识符/偏移映射表可以快速通过标识符得到字符串。
字符串哈希映射表采用内存缓冲区来实现,一般将装填因子设计低于0.5就可以构建冲突率较小的哈希表。表中存储的哈希到对应位置的字符串在字符串/标识符映射表中的偏移值(offset)。通过计算一个字符串的哈希值(hash(string)),便可得到哈希表的偏移值,进而得到该字符串在字符串/标识符映射表中的偏移值(offset),就可以得到该字符串的标识符。
插入字符串时,其中各个表的工作流程为:(1)当要向字符串表中添加一条新的记录时,首先在字符串与标识符映射表中找到下一个偏移位置,然后在标识符/偏移映射表中分配一个新的标识符值,将该标识符值和字符串的长度以及字符串,并将它们组成一条记录,插入到字符串/标识符映射表中;(2)将得到的标识符值和记录在字符串/标识符映射表中的偏移值形成新的记录,插入到标识符/偏移映射表中;(3)对字符串进行哈希得到一个哈希值,根据该哈希值可以得到字符串哈希映射表的一个存储位置,将(1)中在字符串/标识符表得到的偏移值存储于该位置上。
查询字符串的标识符时,各个表格的工作流程为:(1)通过线性哈希函数对字符串进行哈希作为字符串哈希映射表的偏移值;(2)从字符串哈希映射表中得到存储该字符串在字符串/标识符表格中的偏移值;(3)从字符串/标识符表格中得到字符串的标识符。从标识符到字符串的转换,可以直接从标识符/偏移映射表中得到字符串在字符串/标识符表中的偏移,其过程不再赘述。
实例数据管理器2.6的主要作用是将得到的实例数据进按照从模式数据提取出来的元数据行优化存储,建立一个数据存储优化模型。
数据存储优化模型如图5所示,建立数据存储优化模型步骤为:
①将实例数据按照谓词进行分组,将谓词相同的实例数据存储在一起,按照谓词的不同分别执行②③④。
②对于谓词为类型(rdf:type)的实例数据按照客体的不同进一步划分。过程如图6所示,将客体相同的实例数据存储在一起,并将省略客体的存储;
③对于谓词为客体属性类型(Object Property)的实例数据,按照传统的垂直分割的方式进行存储,即:以按照谓词、主体、客体的方式进行存储。由于这类谓词描述的实例数据一般具有多个客体,因此可以同时建立<谓词,客体,主体>和<谓词,主体,客体>类型的表格,以便能够同时快速的支持由谓词和客体查找主体或者由谓词和主体查找客体这两种查询。
④对于属于数据类型属性(Datatype Property)的谓词所描述的实例数据,只做匹配和信息检索操作。因此如果不需要进行精确匹配操作,可以只存储<谓词,主体,客体>类型的表格,可以进一步的减少存储的空间。
数据查询器2.2的主要作用是:(1)响应语义数据查询模块4的字符串-标识符查询的请求,将字符串转换成标识符或者将标识符转换成字符串返回给模块4;(2)响应语义数据查询模块4的统计信息查询的请求,与统计信息管理器2.5交互,将所要求查询的统计信息返回给模块4;(3)将符合语义数据查询模块4传递来的模式返回给模块4。字符串-标识符映射的查询前面已经描述,这里不再赘述。这里主要描述模式查询的流程:①根据谓词定位到相应的存储块,若主体和客体都未知则返回该存储块的所有数据,否则执行步骤②;②若主体已知,执行步骤③,否则执行步骤④;③查询<谓词,主体,客体>表,进行二分查找定位到第一个主体,将后续主体等于已知标识符的记录返回;④查询<谓词,客体,主体>表,进行二分查找定位到第一个客体,将后续客体等于已知标识符的记录返回。统计信息的查询与根据模式查询的流程相似,不再赘述。
存储空间管理器2.7的主要功能是负责整个系统的内存空间的分配,管理整个系统的存储空间,并与数据存储持久化模块3进行交互。
如图7所示语义数据查询模块4的主要由查询语言解析器4.1,查询语言转换器4.2,查询计划生成器4.3,以及查询计划执行器4.4组成。
查询语言解析器4.1主要作用是:首先,将用户输入的查询语句转化为分词(Token)的格式;然后从这些分词中获取查询关键词,识别查询语句中所有变量,识别投影变量及查询条件等。
查询语言转换器4.2目的是为了能够方便对底层存储结构的操作,根据查询语句进行查询,从而形成存储和查询的交互接口。查询转换主要功能包括:结果变量的收集和转换;查询语句中基本查询图模式(Basic GraphPattern,BGP)的转换;查询连接操作的表示。
(1)变量的收集。首先,将所有的变量进行标识符编码,存储变量与标识符之间的映射关系;然后,解析选择(SELECT)语句之后的投影变量,从前面得到的变量标识符之间的映射关系找到相应的标识符。
(2)基本查询图模式的转换。对查询语句中的三元组结点(Triple Node)进行转换的主要目的是使查询的基本图模式和底层的存储模型联系起来,实现查询和底层存储结构的相互操作。将查询语句中每一个三元组结点使用一个数据结构进行表示,主要的作用是标识该节点中的主体、谓词、客体以及主体、谓词、客体是否为变量并用一个标识符标识该三元组节点。使用这些信息,就可可以确定单个三元组节点(模式)查询的类型。
(3)查询连接操作的表示。根据三元组结点的标识符和变量关系,可分析查询语句中三元组结点之间的连接操作。如果三元组结点之间存在相同的变量,那么两个三元组之间就需要进行连接操作。将其中的任意一个三元组节点标为起始三元组节点,另一个为终止三元组节点。则该连接操作可以用包含起始三元组节点,终止三元组节点和两节点共同变量标识符来的结构体来表示。查询系统通过使用该结构(连接操作边)表示三元组结点之间的连接操作。通过遍历所有的结点,建立相应结点之间的连接操作关系。如图8(1)中的查询语句,可以形成图8(2)的查询连接操作。
查询计划生成器4.3的主要作用是生成查询计划,并存储在查询计划信息结构中,并对该查询计划进行优化,使得查询能够正确高效地执行。查询计划信息结构主要包括三元组节点先后执行的顺序、投影变量和维度(投影变量在结果集中的位置)之间的关系和三元组节点的连接信息。
三元组结点的执行顺序的生成,主要是保存三元组结点的执行顺序,以便查询能够顺序的执行。
投影变量和维度之间的关系,主要是保存查询连接操作之后结果集和投影变量之间的关系,以便进行下一步的操作。
三元组节点的连接操作信息,主要保存和中间结果进行连接操作的三元组的信息,主要包含:变量的个数,执行连接操作的的类型和共同变量的标识符。
查询计划的形成的主要步骤是:首先,选取基本查询图模式中的第一个三元组结点,然后根据该三元组结点的标识符,查找和该三元组结点进行连接操作的相关的的结点,加入到查询计划的结点执行顺序表中;同时对查询连接操作后的变量进行收集,并且形成变量和结果集的对应关系。连接操作执行完后根据查询图给出的投影操作,进行投影变量的获取,最后形成查询计划的工作流。
语义数据查询优化主要是利用统计信息来建立代价模型,利用该模型调整模式查询和连接的执行顺序。代价模型主要包含两方面:三元组节点(模式)的选择性(selectivity)的计算;查询连接操作选择性的计算。下面分别介绍其流程。
1)三元组结点的选择性计算。①判断三元组节点中变量的个数,如果为1则执行②,否则执行③;②根据已知的两个常量对底层<谓词,客体,主体>表进行查询。由于<谓词,客体,主体>表已经排序,通过二分查找可以迅速的得到结果集的大小;③对于有两个变量的三元组结点,由于本系统已经对相应的结果集进行统计并存储,而存储的统计信息格式为<谓词标识符(pid),数量(count)>,因此,可以在相应的统计信息表中得到相关的统计信息。这样就可以得出每个三元组节点的选择性:三元组节点的选择性为三元组节点的预估的结果集大小。
2)连接操作的选择性计算。连接操作选择性的估计主要是为了实现查询连接操作顺序的调整,以便提高查询的性能。因此需要计算查询图中各个连接操作边的选择性大小。计算方法如下:
连接操作边的选择性=起始三元组结点的结果集大小×终止三元组结点的结果集大小。
下面使用贪婪算法形成优化的查询计划,步骤如下:
①如果查询基本图模式(Basic Graph Pattern)中三元组结点只有一个,那么直接将结点加入到查询计划信息结构中,并且建立变量之间的关系;查询计划生成完毕,直接返回。
②如果查询的基本图模式(Basic Graph Pattern)中三元组结点个数大于一个,按照上面介绍的计算三元组结点和连接操作边选择性方法计算三元组结点的选择性和连接操作的选择性。
③从连接操作中根据选择性选取代价最少的连接,获取连接操作包含的两个三元组结点,并按照三元组结点的选择性进行排序,按三元组结点的选择性从小到大的顺序将结点插入到查询计划信息结构中;如果三元组结点的个数为两个,查询计划生成完毕,直接返回;否则,转步骤④。
④从已经加入查询计划的三元组结点与未加入查询计划的三元组结点的连接操作中选取选择性最小的操作,并将该连接操作中未加入查询计划的三元组结点加入到查询计划中。
⑤循环执行步骤④,当所有的三元组结点都加入到查询计划中,查询计划生成完毕,返回。
查询执行器4.4的主要作用是根据生成的查询计划图,执行相关的查询操作。由于查询计划是个一颗树,所以可以从树的根节点开始遍历树的所有节点完成查询。具体的流程为:①如果当前节点的左儿子和右儿子都不为空,并且当前为根节点执行步骤②,若不为根节点执行步骤③,若当前节点为叶子节点,执行步骤④;②分别对左儿子和右儿子分别执行步骤①,再执行投影操作操作(得出最后的结果)并退出;③分别对左儿子和右儿子执行步骤①,再执行连接操作;④将三元组节点传递给数据存储管理模块2,进行模式查询。经过这几个步骤,就可以得出最后的结果。
本发明不仅局限于上述具体实施方式,本领域一般技术人员根据本发明公开的内容,可以采用其它多种具体实施方式实施本发明,因此,凡是采用本发明的设计结构和思路,做一些简单的变化或更改的设计,都落入本发明保护的范围。
Claims (5)
1.一种存储优化的语义数据查询系统,其特征在于,该系统包括语义数据导入模块(1)、语义数据存储管理模块(2)、存储数据持久化模块(3)和语义数据查询模块(4);
语义数据导入模块(1)用于将各种格式的数据转换成统一的格式,并和语义数据存储管理模块(2)进行交互完成数据的导入工作;
语义数据存储管理模块(2)负责整个系统的资源描述框架数据的存储和管理;它接受来自于语义数据导入模块(1)做产生的格式化数据,将数据存入语义数据存储管理模块(2)当中;它与语义数据查询模块(4)进行交互,接受来自语义数据查询模块(4)的数据查询请求,并将符合条件的结果记录返回给语义数据查询模块(4);它与存储数据持久化模块(3)进行交互,在整个系统退出前,将要序列化的数据传输给存储数据持久化模块(3),并在整个系统初始化的过程中,将序列化的数据直接映像到内存中;
存储数据持久化模块(3)用于与语义数据存储管理模块(2)进行交互,在系统退出时,将内存数据存储到文件系统中,以保证数据的持久性;在系统初始化时,将文件数据传递给语义数据存储管理模块(2);
语义查询优化模块(4)用于将用户的查询语句转换成系统能执行的格式,并将数据请求发送给语义数据存储管理模块(2),得到符合条件的记录,并将结果返回给用户。
2.根据权利要求1所述的存储优化的语义数据查询系统,其特征在于,语义数据导入模块(1)包括语义数据解析模块(1.1)、数据分类模块(1.2)和数据格式化模块(1.3);
语义数据解析模块(1.1)用于将各种格式的实例数据解析成系统可接受的三元组格式,并将该格式的数据和模式数据传递给数据分类模块(1.2);
数据分类模块(1.2)将语义数据解析模块(1.1)传来的三元组格式数据根据模式数据划分成不同的类别的数据,并将分类之后的数据传递给数据格式化模块(1.3);
数据格式化模块(1.3)用于将接收的数据格式化成能够存储的数据格式。
3.根据权利要求1或2所述的存储优化的语义数据查询系统,其特征在于,语义数据查询模块(4)包括查询语言解析器(4.1)、查询语言转换器(4.2)、查询计划生成器(4.3)和查询计划执行器(4.4);
查询语言解析器(4.1)用于将用户输入的查询语句转化为分词的格式;然后从这些分词中获取查询关键词,识别查询语句中所有变量,识别投影变量及查询条件;
查询语言转换器(4.2)根据查询语句进行查询,形成存储和查询的交互接口;
查询计划生成器(4.3)的主要作用是生成查询计划,并存储在查询计划信息结构中,并对该查询计划进行优化,使得查询能够正确高效地执行。
4.根据权利要求1或2所述的存储优化的语义数据查询系统,其特征在于,语义数据存储管理模块(2)包括数据存储器(2.1),数据查询器(2.2),字符串管理器(2.3),索引管理器(2.4),统计信息管理器(2.5),实例数据管理器(2.6),以及存储空间管理器(2.7);
数据存储器(2.1)用于在接收语义数据导入模块(1)所产生的格式化数据之后,首先将三元组的各个分量传递给字符串管理器(2.3),再将该三元组按照模式数据分别传递给索引管理器(2.4)、统计信息管理器(2.5)和实例数据管理器(2.6);
统计信息管理器(2.5)用于统计各个三元组的各个分量的出现情况,并存储统计信息;
索引管理器(2.4)用于建立实例数据的索引,以便加快数据的查询;
字符串管理器(2.3)用于建立的是字符串与其标识符之间的映射;
实例数据管理器(2.6)用于将得到的实例数据按照从模式数据提取出来的元数据行优化存储,建立一个数据存储优化模型;
数据查询器(2.2)用于响应语义数据查询模块(4)的字符串-标识符查询的请求,将字符串转换成标识符或者将标识符转换成字符串返回给语义数据查询模块(4);还用于响应语义数据查询模块(4)的统计信息查询的请求,与统计信息管理器(2.5)交互,将统计信息返回给语义数据查询模块(4);并将符合语义数据查询模块(4)传递来的模式返回给语义数据查询模块(4);
存储空间管理器(2.7)负责整个系统的内存空间的分配,管理整个系统的存储空间,并与数据存储持久化模块(3)进行交互。
5.根据权利要求4所述的存储优化的语义数据查询系统,其特征在于,实例数据管理器(2.6)建立一个数据存储优化模型的过程为:
将实例数据按照谓词进行分组,将谓词相同的实例数据存储在一起,按照谓词的不同分别执行下述过程A、B或C:
A对于谓词为类型的实例数据按照客体的不同进一步划分;
B对于谓词为客体属性类型的实例数据,按照传统的垂直分割的方式进行存储;
C对于属于数据类型属性的谓词所描述的实例数据,只做匹配和信息检索操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110205140A CN102270232B (zh) | 2011-07-21 | 2011-07-21 | 一种存储优化的语义数据查询系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110205140A CN102270232B (zh) | 2011-07-21 | 2011-07-21 | 一种存储优化的语义数据查询系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102270232A CN102270232A (zh) | 2011-12-07 |
CN102270232B true CN102270232B (zh) | 2012-09-26 |
Family
ID=45052537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110205140A Expired - Fee Related CN102270232B (zh) | 2011-07-21 | 2011-07-21 | 一种存储优化的语义数据查询系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102270232B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521299B (zh) * | 2011-11-30 | 2014-03-26 | 华中科技大学 | 资源描述框架数据的处理方法 |
CN103167399A (zh) * | 2011-12-13 | 2013-06-19 | 金锰 | 一种基于标识号和语义信息的信息处理方法 |
CN102609451B (zh) * | 2012-01-11 | 2014-12-17 | 华中科技大学 | 面向流式数据处理的sql查询计划生成方法 |
CN103793467B (zh) * | 2013-09-10 | 2017-01-25 | 浙江鸿程计算机系统有限公司 | 一种基于超图和动态规划的大数据实时查询优化方法 |
CN104216975A (zh) * | 2014-08-29 | 2014-12-17 | 天津大学 | 面向大规模rdf数据的高效语义索引的构建方法 |
CN106156238B (zh) * | 2015-04-27 | 2019-09-03 | 科大讯飞股份有限公司 | 本体信息查询方法及系统 |
CN105224649B (zh) * | 2015-09-29 | 2019-03-26 | 北京奇艺世纪科技有限公司 | 一种数据处理方法和装置 |
CN107239541B (zh) * | 2017-06-02 | 2020-02-14 | 星环信息科技(上海)有限公司 | 一种代价估计的方法及设备 |
CN107679055B (zh) * | 2017-06-25 | 2021-04-27 | 平安科技(深圳)有限公司 | 信息检索方法、服务器及可读存储介质 |
CN107729523A (zh) * | 2017-10-27 | 2018-02-23 | 平安科技(深圳)有限公司 | 数据服务方法、电子装置及存储介质 |
CN108376287A (zh) * | 2018-03-02 | 2018-08-07 | 复旦大学 | 基于CN-DBpedia的多值属性分割装置及方法 |
CN109101550B (zh) * | 2018-07-09 | 2022-05-03 | 广州极天信息技术股份有限公司 | 语义网管理系统、方法、设备以及存储介质 |
CN110866033B (zh) * | 2018-08-28 | 2022-06-21 | 北京国双科技有限公司 | 一种用于预测查询资源占用量的特征确定方法及装置 |
CN111026963A (zh) * | 2019-12-04 | 2020-04-17 | 贝壳技术有限公司 | 数据查询的方法及装置、配置信息的设置方法及装置 |
CN111177043B (zh) * | 2019-12-26 | 2021-07-06 | 苏州浪潮智能科技有限公司 | 加快读取现场可更换单元信息的方法、系统、设备及介质 |
CN111259062B (zh) * | 2020-01-15 | 2023-08-01 | 山东省电子口岸有限公司 | 一种能够保证分布式数据库全表查询语句结果集顺序的方法和装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101950297A (zh) * | 2010-09-10 | 2011-01-19 | 北京大学 | 一种海量语义数据的存储和查询方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070198541A1 (en) * | 2006-02-06 | 2007-08-23 | International Business Machines Corporation | Method and system for efficiently storing semantic web statements in a relational database |
-
2011
- 2011-07-21 CN CN201110205140A patent/CN102270232B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101950297A (zh) * | 2010-09-10 | 2011-01-19 | 北京大学 | 一种海量语义数据的存储和查询方法及装置 |
Non-Patent Citations (1)
Title |
---|
吴琴霞等.语义Web中RDF元数据的存储与管理.《微计算机信息(管控一体化)》.2007,第23卷(第11-3期),144-145. * |
Also Published As
Publication number | Publication date |
---|---|
CN102270232A (zh) | 2011-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102270232B (zh) | 一种存储优化的语义数据查询系统 | |
CN106227800B (zh) | 一种高度关联大数据的存储方法及管理系统 | |
CN103064875B (zh) | 一种服务化空间数据分布式查询方法 | |
CN103646032B (zh) | 一种基于本体和受限自然语言处理的数据库查询方法 | |
CN105630881B (zh) | 一种rdf的数据存储方法和查询方法 | |
CN1858737B (zh) | 一种数据搜索的方法和系统 | |
CN103177094B (zh) | 一种物联网数据清洗方法 | |
CN103970902A (zh) | 一种大量数据情况下的可靠即时检索方法及系统 | |
CN101710318A (zh) | 蔬菜供应链知识智能获取系统 | |
CN106874425B (zh) | 基于Storm的实时关键词近似搜索算法 | |
CN107943952A (zh) | 一种基于Spark框架进行全文检索的实现方法 | |
CN106095951B (zh) | 基于负载均衡和查询日志的数据空间多维索引方法 | |
CN103678550A (zh) | 一种基于动态索引结构的海量数据实时查询方法 | |
CN102819600B (zh) | 面向电力生产管理系统关系数据库的关键词搜索方法 | |
CN106599052A (zh) | 一种基于ApacheKylin的数据查询系统及其方法 | |
Novikov et al. | Querying big data | |
Ravat et al. | Efficient querying of multidimensional RDF data with aggregates: Comparing NoSQL, RDF and relational data stores | |
CN109063114B (zh) | 能源云平台的异构数据集成方法、装置、终端及存储介质 | |
CN107025298A (zh) | 一种大数据实时计算处理系统及方法 | |
CN112231351A (zh) | 一种pb级海量数据的实时查询方法和装置 | |
CN106484815B (zh) | 一种基于海量数据类sql检索场景的自动识别优化方法 | |
CN104156431A (zh) | 一种基于实体图社团结构的rdf关键词查询方法 | |
CN108241709A (zh) | 一种数据集成方法、装置和系统 | |
CN114385670A (zh) | 复杂产品变型设计的案例推理方法 | |
CN104809210B (zh) | 一种基于分布式计算框架下海量数据加权top‑k查询方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120926 Termination date: 20150721 |
|
EXPY | Termination of patent right or utility model |