CN109241155A - 一种rdf流数据和关系数据的联邦查询处理系统及方法 - Google Patents
一种rdf流数据和关系数据的联邦查询处理系统及方法 Download PDFInfo
- Publication number
- CN109241155A CN109241155A CN201810838560.2A CN201810838560A CN109241155A CN 109241155 A CN109241155 A CN 109241155A CN 201810838560 A CN201810838560 A CN 201810838560A CN 109241155 A CN109241155 A CN 109241155A
- Authority
- CN
- China
- Prior art keywords
- query
- data
- module
- rdf
- sparql
- 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
Abstract
本发明涉及一种RDF流数据和关系数据的联邦查询处理系统及方法,其技术特点在于:包括查询解析器模块、通用流查询处理模块、SQL查询执行模块和连接模块;所述查询解析器模块的输出端分别与通用流查询处理模块和SQL查询执行模块相连接,所述通用流查询处理模块的输出端与连接模块相连接,所述SQL查询执行模块的输出端与连接模块相连接,所述连接模块用于执行连接过程,得到最终需要的查询结果。本发明可以支持对RDF流数据和关系型数据的联邦查询。
Description
技术领域
本发明属于异构数据库查询技术领域,涉及异构数据库的联邦查询处理方法,尤其是一种RDF流数据和关系数据的联邦查询处理系统及方法。
背景技术
目前,资源描述框架RDF(resource description framework)是由WWW提出的对万维网(World Wide Web)上信息进行描述的一个框架,它为Web上的各种应用提供信息描述规范。RDF用主语s(subject)、谓词p(predicate)、宾语o(object)的三元组形式来描述Web上的资源。其中,主语一般用统一资源标识符URI(uniform resource identifiers)表示Web上的信息实体(或者概念),谓词描述实体所具有的相关属性,宾语为对应的属性值。这样的表述方式使得RDF可以用来表示Web上的任何被标识的信息,并且使得它可以在应用程序之间交换而不丧失语义信息。SPARQL(SPARQL Protocol and RDF Query Language)是为RDF开发的一种查询语言和数据获取协议。
RDF流作为一种新型的数据集,可以在广泛的应用中为实时和连续的信息建模,例如,环境监测,智能城市等。但是数据流是时变数据元素的无界序列,难以存储,且处理需求高。当今存在的许多处理引擎都是针对静态RDF数据,但是针对RDF流数据的处理引擎很少,且都是基于集中式的处理方式,难以满足大规模RDF流数据处理的需求。
(1)连续查询
由于流数据的信息是不断更新,传统的一次查询方法是不适合的。事实上,当新的RDF流元组到达时,动态信息的查询应该重新执行。我们将这种查询看作连续查询,当前主流的连续查询语言包括三种、即C-SPARQL(Continuous SPARQL)、CQELS(Continuous QueryEvaluation over Linked Streams)和EP-SPARQL(Event Processing SPARQL)。C-SPARQL通过添加新的运算符来扩展SPARQL语言,从而支持RDF流数据的处理。CQELS则更加偏重于多源RDF流数据的处理,EP-SPARQL则偏向于复杂事件处理。这三种语言具有各自的优势,但是由于实现上的差异,使得我们难以在统一的环境下对它们进行比较和查询处理,且他们都是采用集中式的方式进行处理,处理效率有限,这限制了它们的实际应用。如何在统一的框架下对这三种查询语言进行统一处理成为了一个很重要的研究问题。
(2)关系查询
关系型数据库,是采用了关系模型来组织数据的数据库,典型的如SQL server(Structured Query Language server),为了查询关系型数据,提出了一种关系查询语言SQL(Structured Query Language),SQL可以很好的支持关系数据的查询,但是在当前数据分析需求背景下,异构数据库(RDF流数据和关系数据)的联合查询尤为重要,但是SQL只能支持关系数据库的查询,在应用上存在着局限性。
目前,RDF流数据和关系型数据的联邦查询是一个很重要的问题。然而当前对这一问题的研究十分缺乏。基于这一现状,我们提出了一种RDF流数据和关系数据的联邦查询处理方法,并基于该查询方法设计和实现了联邦查询框架。通过该框架,实现了RDF流数据和关系型数据的联邦查询。
发明内容
本发明的目的在于克服现有技术中的缺陷,提供一种设计合理、查询效率高的RDF流数据和关系数据的联邦查询处理系统及方法。
本发明解决其现实问题是采取以下技术方案实现的:
一种RDF流数据和关系数据的联邦查询处理系统,包括查询解析器模块、通用流查询处理模块、SQL查询执行模块和连接模块;所述查询解析器模块的输出端分别与通用流查询处理模块和SQL查询执行模块相连接,用于将输入的FQ连续查询语句解析成连续查询语句和SQL查询语句后,分别输出至通用流查询处理模块和SQL查询执行模块;所述通用流查询处理模块的输出端与连接模块相连接,用于将输入的RDF流数据和连续查询语句执行SPARQL查询后输出第一查询结果至连接模块;所述SQL查询执行模块的输出端与连接模块相连接,用于将输入的SQL查询语句和关系数据执行SQL查询后输出第二查询结果至连接模块;所述连接模块用于接收第一查询结果和第二查询结果后执行连接过程,得到最终需要的查询结果。
而且,所述通用流查询处理模块包括查询处理器模块、触发器模块、数据转换器模块和SPARQL查询执行模块;所述查询处理器模块的输出端与触发器相连接,用于将输入的连续查询语句进行预处理后输出至触发器;所述触发器的输出端与数据转换器相连接,用于将窗口选择器数据输出至数据转换器,该数据转换器用于将输入的RDF流数据连续地转换为静态RDF图数据;该数据转换器的输出端还与SPARQL查询执行模块相连接,用于接收静态RDF图数据;该触发器的输出端还与SPARQL查询执行模块相连接,用于将SPARQL查询语句输出至SPARQL查询执行模块;所述SPARQL查询执行模块用于执行SPARQL查询后输出第一查询结果。
一种RDF流数据和关系数据的联邦查询处理方法,包括以下步骤:
步骤1、根据FQ语言的语法规则,定义联邦查询语言FQ;
FQ查询语言形式化的定义如下所示:
Q=[Q1,...,Qn]
其中,每一个Qi代表一个连续查询语句或一个SQL查询语句;
步骤2、将FQ连续查询语句输出至查询解析器模块,由查询解析器模块将其解析成待查询的连续查询语句和SQL查询语句两种类型的查询语句;
步骤3、将待查询的连续查询语句和RDF流数据输出至通用流查询处理模块进行处理后输出第一查询结果;
步骤4、将SQL查询语句和关系数据输出至SQL查询执行模块进行处理后输出第二查询结果;
步骤5、将第一查询结果和第二查询结果输出至连接模块后执行连接过程,得到最终需要的查询结果。
而且,所述步骤3的具体步骤包括:
(1)查询处理器模块接收查询解析器模块输入的连续查询语句,对其进行预处理操作,分解成为一个五元组{Req,S,w,s,ρ(Q)},其中,Req为注册部分,S为注册的RDF数据流,w为窗口大小,s为步长,ρ(Q)为一个SPARQL查询语句;
(2)触发器模块接收查询处理器模块传输的五元组,并将其分成两个子部分,一部分包括{Req,S,w,s},该部分以参数的形式构成窗口选择器后输出至数据转换器模块;另一部分的ρ(Q)为SPARQL查询语句,该部分以参数的形式输出至SPARQL查询执行模块;
(3)数据转换器接收输入的RDF流数据和窗口选择器中的参数信息,然后使用Esper数据流管理系统管理指定的RDF数据,根据窗口选择器中的窗口和步长将RDF流数据定期的转换为相应的一条条的RDF图数据,并将其输出至SPARQL查询执行模块;
(4)SPARQL查询执行模块接收触发器模块输出的SPARQL查询语句和数据转换器模块输出的RDF图数据,然后调用集中式SPARQL查询引擎或者分布式SPARQL查询引擎执行查询,并输出第一查询结果。
而且,所述步骤4的具体方法为:SQL查询执行模块接收查询解析器模块输出的SQL查询语句,然后从MySQL关系数据库中查询相关的关系表,得到关系数据部分的第二查询结果。
本发明的优点和有益效果:
1、本发明提供一种RDF流数据和关系数据的联邦查询处理方法,既可以用于RDF流数据和关系型数据的联邦查询,又能够支持在统一的系统框架下处理不同的连续查询语言。并基于此方法上设计了联邦查询处理系统FedQL,通过该系统,我们可以支持对RDF流数据和关系型数据的联邦查询,解决了关系数据和RDF流数据的联邦查询这一很重要的研究问题。
2、本发明的通用流查询处理方法可以在统一的框架下支持C-SPARQL、CQELS、EP-SPARQL三种主流连续查询语句的查询处理,也可以在统一的环境下比较不同的连续查询语言的处理效率。此外,我们通过使用分布式SPARQL处理引擎来处理RDF流数据,提高了这三种连续查询语言的查询效率,具有实际使用价值。
3、本发明的通用流查询处理方法可以支持多种SPARQL引擎(包括集中式和分布式)对RDF流数据进行查询,在保持高效处理大规模RDF流数据的同时又保持了这些查询引擎原有的处理特性。
4、本发明基于连续查询和SQL查询的联合形式化地定义了本发明的联邦查询语言FQ,使得本发明的查询语言可以同时表示连续查询以及SQL查询。
附图说明
图1是本发明的FedQL联邦查询处理系统框图;
图2是本发明的FedQL联邦查询处理系统内通用流查询处理模块的组成框图;
图3为是本发明的C-SPARQL查询示意图;
图4为是本发明的CQELS查询语句示意图;
图5为是本发明的EP-SPARQL查询语句示意图;
图6为本发明的FQ查询语句示例图;
图7为本发明的分解后的C-SPARQL查询语句示例图;
图8为本发明的分解后的SQL查询语句示例图;
图9为本发明的SPARQL查询语句示例图;
图10(a)为本发明的C-SPARQL查询性能的数据加载时间指标比较图;
图10(b)为本发明的C-SPARQL查询性能的查询响应时间指标比较图;
图11(a)为本发明的CQELS查询性能的数据加载时间指标比较图;
图11(b)为本发明的CQELS查询性能的查询响应时间指标比较图;
图12(a)为本发明的EP-SPARQL查询性能的数据加载时间指标比较图;
图12(b)为本发明的EP-SPARQL查询性能的查询响应时间指标比较图;
图13(a)为本发明的FedQL系统性能的数据加载时间指标比较图;
图13(b)为本发明的FedQL系统性能的查询响应时间指标比较图;
图13(c)为本发明的FedQL系统性能的join(连接)时间指标比较图;
图13(d)为本发明的FedQL系统性能的总共执行时间指标比较图;
图14为本发明的RDF流数据示例图;
图15为本发明的关系数据库的关系表数据示例图。
图16为本发明的转换过后的起始窗口RDF数据示例图;
图17为本发明的RDF图数据查询结果示例图;
图18为本发明的关系数据查询结果示例图;
图19为本发明的为FQ查询语句查询结果示例图。
具体实施方式
以下结合附图对本发明实施例作进一步详述:
一种RDF流数据和关系数据的联邦查询处理系统,如图1所示,包括查询解析器模块、通用流查询处理模块、SQL查询执行模块和连接模块;所述查询解析器模块的输出端分别与通用流查询处理模块和SQL查询执行模块相连接,用于将输入的FQ连续查询语句解析成连续查询语句(即C-SPARQL)和SQL查询语句后,分别输出至通用流查询处理模块和SQL查询执行模块;所述通用流查询处理模块的输出端与连接模块相连接,用于将输入的RDF流数据和连续查询语句执行SPARQL查询后输出第一查询结果至连接模块;所述SQL查询执行模块的输出端与连接模块相连接,用于将输入的SQL查询语句和关系数据执行SQL查询后输出第二查询结果至连接模块;所述连接模块用于接收第一查询结果和第二查询结果后执行连接过程,得到最终需要的查询结果。
所述通用流查询处理模块,如图2所示,包括查询处理器模块、触发器模块、数据转换器模块和SPARQL查询执行模块;所述查询处理器模块的输出端与触发器相连接,用于将输入的连续查询语句进行预处理后输出至触发器;所述触发器的输出端与数据转换器相连接,用于将窗口选择器数据输出至数据转换器,该数据转换器用于将输入的RDF流数据连续地转换为静态RDF图数据;该数据转换器的输出端还与SPARQL查询执行模块相连接,用于接收静态RDF图数据;该触发器的输出端还与SPARQL查询执行模块相连接,用于将SPARQL查询语句输出至SPARQL查询执行模块;所述SPARQL查询执行模块用于执行SPARQL查询后输出第一查询结果。
一种RDF流数据和关系数据的联邦查询处理方法,包括以下步骤:
步骤1、根据FQ语言的语法规则,定义如图6所示的联邦查询语言FQ(即Federatedquery);
FQ查询语言形式化的定义如下所示:
Q=[Q1,...,Qn]
其中,每一个Qi代表一个连续查询语句或一个SQL查询语句;
步骤2、将FQ连续查询语句输出至查询解析器模块,由查询解析器模块将其解析成待查询的连续查询语句(即C-SPARQL)和SQL查询语句的两种类型的查询语句;
在本实施例中,解析之后会得到两个查询语句,即一个C-SPARQL查询语句(图7所示)和一个SQL查询语句(图8所示)。
步骤3、将待查询的连续查询语句和RDF流数据输出至通用流查询处理模块进行处理后输出第一查询结果;
在本实施例中,所述步骤3的具体步骤包括:
(1)查询处理器模块接收查询解析器模块输入的连续查询语句,对其进行预处理操作,分解成为一个五元组{Req,S,w,s,ρ(Q)},其中,Req为注册部分,S为注册的RDF数据流,w为窗口大小,s为步长,ρ(Q)为一个SPARQL查询语句;
在本实施例中,查询处理器模块为一个预处理工具,用于对输入的连续查询语句进行分解,对于图7的C-SPARQL查询语句Q,分解后得到的信息如下:
–Req(Q)=REGISTER QUERY CarLocation AS;
–S(Q)=GPS;
–w(Q)=30s;
–s(Q)=30s;
-ρ(Q)为SPARQL查询语句(如图9所示)。
(2)触发器模块接收查询处理器模块传输的五元组,并将其分成两个子部分,一部分包括{Req,S,w,s},该部分以参数的形式构成窗口选择器后输出至数据转换器模块;另一部分的ρ(Q)为SPARQL查询语句,该部分以参数的形式输出至SPARQL查询执行模块;
(3)数据转换器接收输入的RDF流数据和窗口选择器中的参数信息,然后使用Esper数据流管理系统管理指定的RDF数据(即参数S),根据窗口选择器中的窗口(即参数w(Q))和步长(即参数s(Q))将RDF流数据定期的转换为相应的RDF图数据(图16所示),并将其输出至SPARQL查询执行模块;Esper系统为当前主流的一款开源数据流管理工具。
在本实施例中,如图14所示,RDF流数据是由一条条的包括时间戳的RDF三元组构成的数据。时间戳用于标记这条RDF数据是何时到达的系统,我们用一个13位的整型数来表示时间戳。
在本实施例中,数据转换器用于对输入的RDF数据流进行管理。数据转换器接收窗口选择器中的参数信息传送给Esper系统,Esper会每过30S将当前30S窗口内的流数据移除时间戳,转换为相应的静态RDF图数据,RDF图数据格由许多条RDF数据组成。并将其输出传送给SPARQL查询执行模块。
(4)SPARQL查询执行模块接收触发器模块输出的SPARQL查询语句和数据转换器模块输出的RDF图数据,然后调用集中式SPARQL查询引擎或者分布式SPARQL查询引擎(如gStore、TriAD等)执行查询,并输出第一查询结果。
在本实施例中,SPARQL查询执行模块主要作为一个接口工具,里面提供了当前主流的SPARQL引擎的接口调用函数。其接收触发器模块输出的SPARQL查询语句(图9所示)和数据转化器模块输出的RDF图数据,然后调用当前最先进的集中式SPARQL查询引擎(如RDF-3X(RDF Triple eXpres),gStore)或者分布式SPARQL查询引擎(如TriAD)执行查询,得到最终的查询结果(图17所示)。
所述步骤3的工作原理为:
为了解决多种连续查询语言在统一框架下处理的问题,我们设计了通用流查询处理框架,并将其作为最终的联邦查询方法中的模块之一。对于输入的连续查询语句,不管是C-SPARQL查询、CQELS查询,还是EP-SPARQL查询,我们的通用流查询处理框架都可以执行查询处理。通用流查询处理框架主要包括四个子模块:查询处理器模块、触发器模块、数据转换器模块、SPARQL查询执行模块。①查询处理器模块接收查询解析器模块输入的连续查询语句,对其进行预处理操作,分解成为一个五元组{Req,S,w,s,ρ(Q)},其中,Req为注册部分,S为注册的RDF数据流,w为窗口大小,s为步长,ρ(Q)为一个SPARQL查询语句。②触发器模块接收查询处理器模块传输的五元组,并将其分成两个子部分,一部分包括{Req,S,w,s},该部分以参数的形式构成窗口选择器后输出至数据转换器模块;另一部分的ρ(Q)为SPARQL查询语句,该部分以参数的形式输出至SPARQL查询执行模块。③数据转换器接收输入的RDF流数据和窗口选择器中的参数信息,然后使用Esper数据流管理系统管理指定的RDF数据,根据窗口选择器中的窗口和步长将RDF流数据定期的转换为相应的RDF图数据,并将其输出至SPARQL查询执行模块。生成格式为一条条的RDF数据的RDF图数据;④SPARQL查询执行模块接收触发器模块输出的SPARQL查询语句和数据转换器模块输出的RDF图数据,然后调用集中式SPARQL查询引擎或者分布式SPARQL查询引擎(如gStore、TriAD等)执行查询,并输出第一查询结果。
步骤4、将SQL查询语句和关系数据输出至SQL查询执行模块进行处理后输出第二查询结果;
所述步骤4的具体方法为:SQL查询执行模块接收查询解析器模块输出的SQL查询语句,然后从关系数据库中查询相关的关系表(图15所示),得到关系数据部分的第二查询结果(图18所示)。
步骤5、将第一查询结果和第二查询结果输出至连接模块后,将第一查询结果和第二查询结果的Latitude和Lontitude变量作为执行join(连接)操作的共享变量,执行连接过程,得到最终需要的查询结果(图19所示)。
本发明的工作原理为:
本发明提出了RDF流数据和关系数据的联邦查询处理系统,可以输入待处理的RDF流数据和联邦查询语句FQ,并输出最终的查询结果。
该系统主要包含了4大模块,即查询解析器模块、通用流查询处理模块、SQL查询执行模块和连接模块。通用流查询处理模块又包括了四个子模块,即查询处理器模块、触发器模块、数据转换器模块、SPARQL查询执行模块。该SPARQL查询执行模块包括集中式处理引擎与分布式处理引擎,用于支持不同连续查询语言的统一处理;
所述查询解析器模块用于解析输入的FQ查询语句;查询处理器模块用于分解传输的连续查询语句;触发器模块用于传输关键参数信息,并触发数据转换器模块开始工作;数据转换器模块负责对输入的RDF数据流执行转换;SPARQL查询执行模块提供处理引擎调用,并使用该处理引擎执行查询过程,输出RDF流数据部分的查询结果;SQL查询执行模块负责对传输来的SQL查询语句执行查询,并输出关系数据部分的查询结果;连接模块负责对传输来的局部查询结果执行连接过程。并得到最终的查询结果。
为了验证本发明的优越性,我们通过两个方面的实验对该方法的性能进行了评估。
为了证明通用流处理框架的优越性,我们选用了纽约公共自行车数据,并将其转换为RDF流数据,主要主要包含四种规模的数据集,HM(半个月的数据量),OM(一个月数据量),OHM(一个半月的数据量),TM(两个月的数据量)。查询语句我们选用了图3、图4、图5提到的C-SPARQL、CQELS和EP-SPARQL查询。我们设计了两个指标:数据加载时间DLT(用于表示RDF流数据加载到系统的时间),查询响应时间QRT(对流数据部分进行查询花费的时间)。实验结果如图10(a)-图12(b)所示。我们可以看出,随着数据规模的不断增加,三种查询语言的数据加载时间和查询响应时间都在不断增加,当数据规模从OHM增加到TM的时候,gStore的加载时间出现下降,这主要是因为数据加载时间过长,导致后续的窗口数据出现了丢失,所以加载时间出现下降,这跟gStore的内部数据存储结构关系很大。分布式处理引擎TriAD的加载时间和查询响应时间明显要小于集中式引擎gStore和RDF-3X,这也体现除了分布式处理引擎的高效性。
最后,为了证明我们的联邦查询框架的优越性,我们设计了如下的实验。我们选用了一个真实世界的租车数据集,我们将车辆的实时GPS位置信息数据转换为RDF流数据,主要包含四种规模的数据集,RD1(一天的数据量),RD10(10天的数据量),RD20(20天的数据量),RD30(30天的数据量)。我们采用MySQL作为我们的关系数据库,数据库中创建了一个地图数据表,表中存储了具体的地点位置信息。查询语句我们选用了图6提到的FQ查询语句。在评价指标方面,我们设计了四个指标:数据加载时间DLT(用于表示RDF流数据加载到系统的时间),查询响应时间QRT(对流数据部分进行查询花费的时间),连接时间JT(流数据部分的查询结果和关系数据部分的查询结果的连接操作时间),总共执行时间TET(整个的查询时间)。
实验结果如图13(a)-图13(d)所示。我们可以看出,随着数据加载率从RD1增加到RD30,在整体上,除了gStoreD以外,我们的框架中所支持的SPARQL处理引擎都能够在实时的时间内得到查询结果,这即证明了我们的框架可以满足大规模RDF流数据和关系数据的联邦查询需求,也同时保留了这些引擎的处理特性(如高效性、可扩展性等)。在细节上,我们可以看到除了gStore之外,其他引擎的DLT和QRT指标都是以一种稳定的趋势在增长,这是由于gStore内部的索引存储机制导致的,gStore需要花费大量的时间来为RDF数据建立索引,这带来极大的时间开销。此外,我们也会发现,所有引擎的连接操作时间都基本一致。
需要强调的是,本发明所述实施例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方式中所述实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。
Claims (5)
1.一种RDF流数据和关系数据的联邦查询处理系统,其特征在于:包括查询解析器模块、通用流查询处理模块、SQL查询执行模块和连接模块;所述查询解析器模块的输出端分别与通用流查询处理模块和SQL查询执行模块相连接,用于将输入的FQ连续查询语句解析成连续查询语句和SQL查询语句后,分别输出至通用流查询处理模块和SQL查询执行模块;所述通用流查询处理模块的输出端与连接模块相连接,用于将输入的RDF流数据和连续查询语句执行SPARQL查询后输出第一查询结果至连接模块;所述SQL查询执行模块的输出端与连接模块相连接,用于将输入的SQL查询语句和关系数据执行SQL查询后输出第二查询结果至连接模块;所述连接模块用于接收第一查询结果和第二查询结果后执行连接过程,得到最终需要的查询结果。
2.根据权利要求1所述的一种RDF流数据和关系数据的联邦查询处理系统,其特征在于:所述通用流查询处理模块包括查询处理器模块、触发器模块、数据转换器模块和SPARQL查询执行模块;所述查询处理器模块的输出端与触发器相连接,用于将输入的连续查询语句进行预处理后输出至触发器;所述触发器的输出端与数据转换器相连接,用于将窗口选择器数据输出至数据转换器,该数据转换器用于将输入的RDF流数据连续地转换为静态RDF图数据;该数据转换器的输出端还与SPARQL查询执行模块相连接,用于接收静态RDF图数据;该触发器的输出端还与SPARQL查询执行模块相连接,用于将SPARQL查询语句输出至SPARQL查询执行模块;所述SPARQL查询执行模块用于执行SPARQL查询后输出第一查询结果。
3.如权利要求1或2所述的一种RDF流数据和关系数据的联邦查询处理系统的处理方法,其特征在于:包括以下步骤:
步骤1、根据FQ语言的语法规则,定义联邦查询语言FQ;
FQ查询语言形式化的定义如下所示:
Q=[Q1,...,Qn]
其中,每一个Qi代表一个连续查询语句或一个SQL查询语句;
步骤2、将FQ连续查询语句输出至查询解析器模块,由查询解析器模块将其解析成待查询的连续查询语句和SQL查询语句两种类型的查询语句;
步骤3、将待查询的连续查询语句和RDF流数据输出至通用流查询处理模块进行处理后输出第一查询结果;
步骤4、将SQL查询语句和关系数据输出至SQL查询执行模块进行处理后输出第二查询结果;
步骤5、将第一查询结果和第二查询结果输出至连接模块后,执行连接过程,得到最终需要的查询结果。
4.根据权利要求3所述的一种RDF流数据和关系数据的联邦查询处理系统的处理方法,其特征在于:所述步骤3的具体步骤包括:
(1)查询处理器模块接收查询解析器模块输入的连续查询语句,对其进行预处理操作,分解成为一个五元组{Req,S,w,s,ρ(Q)},其中,Req为注册部分,S为注册的RDF数据流,w为窗口大小,s为步长,ρ(Q)为一个SPARQL查询语句;
(2)触发器模块接收查询处理器模块传输的五元组,并将其分成两个子部分,一部分包括{Req,S,w,s},该部分以参数的形式构成窗口选择器后输出至数据转换器模块;另一部分的ρ(Q)为SPARQL查询语句,该部分以参数的形式输出至SPARQL查询执行模块;
(3)数据转换器接收输入的RDF流数据和窗口选择器中的参数信息,然后使用Esper数据流管理系统管理指定的RDF数据,根据窗口选择器中的窗口和步长将RDF流数据定期的转换为相应的RDF图数据,RDF图数据由许多条RDF三元组构成,并将其输出至SPARQL查询执行模块;
(4)SPARQL查询执行模块接收触发器模块输出的SPARQL查询语句和数据转换器模块输出的RDF图数据,然后调用集中式SPARQL查询引擎或者分布式SPARQL查询引擎执行查询,并输出第一查询结果。
5.根据权利要求3所述的一种RDF流数据和关系数据的联邦查询处理系统的处理方法,其特征在于:所述步骤4的具体方法为:SQL查询执行模块接收查询解析器模块输出的SQL查询语句,然后从MySQL关系数据库中查询相关的关系表,得到关系数据部分的第二查询结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810838560.2A CN109241155A (zh) | 2018-07-27 | 2018-07-27 | 一种rdf流数据和关系数据的联邦查询处理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810838560.2A CN109241155A (zh) | 2018-07-27 | 2018-07-27 | 一种rdf流数据和关系数据的联邦查询处理系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109241155A true CN109241155A (zh) | 2019-01-18 |
Family
ID=65073068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810838560.2A Pending CN109241155A (zh) | 2018-07-27 | 2018-07-27 | 一种rdf流数据和关系数据的联邦查询处理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109241155A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111352961A (zh) * | 2020-03-16 | 2020-06-30 | 华南师范大学 | 分布式rdf流数据处理方法、系统、装置及介质 |
CN114925072A (zh) * | 2022-06-13 | 2022-08-19 | 深圳致星科技有限公司 | 数据管理方法、装置、系统、设备、介质和程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2755148A1 (en) * | 2013-01-15 | 2014-07-16 | Fujitsu Limited | Data storage system, and program and method for execution in a data storage system |
CN106611046A (zh) * | 2016-12-16 | 2017-05-03 | 武汉中地数码科技有限公司 | 基于大数据技术的空间数据存储处理中间件框架 |
CN107038234A (zh) * | 2017-04-17 | 2017-08-11 | 天津大学 | 一种基于rdf图数据和关系数据的路径查询框架 |
-
2018
- 2018-07-27 CN CN201810838560.2A patent/CN109241155A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2755148A1 (en) * | 2013-01-15 | 2014-07-16 | Fujitsu Limited | Data storage system, and program and method for execution in a data storage system |
CN106611046A (zh) * | 2016-12-16 | 2017-05-03 | 武汉中地数码科技有限公司 | 基于大数据技术的空间数据存储处理中间件框架 |
CN107038234A (zh) * | 2017-04-17 | 2017-08-11 | 天津大学 | 一种基于rdf图数据和关系数据的路径查询框架 |
Non-Patent Citations (3)
Title |
---|
EKASARI NUGRAHENI ET AL.: "Framework of Semantic Data Warehouse for heterogeneous and incomplete data", 《INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS》 * |
GUOZHENG RAO ET AL.: "《FedQL: A Framework for Federated》", 《DASFAA 2018: DATABASE SYSTEMS FOR ADVANCED APPLICATIONS》 * |
刘丹 等: "面向关联数据的学位论文元数据语义化研究", 《大学图书馆学报》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111352961A (zh) * | 2020-03-16 | 2020-06-30 | 华南师范大学 | 分布式rdf流数据处理方法、系统、装置及介质 |
CN111352961B (zh) * | 2020-03-16 | 2023-03-28 | 华南师范大学 | 分布式rdf流数据处理方法、系统、装置及介质 |
CN114925072A (zh) * | 2022-06-13 | 2022-08-19 | 深圳致星科技有限公司 | 数据管理方法、装置、系统、设备、介质和程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6213247B2 (ja) | データ記憶システム、データ記憶システムで実行されるプログラム及び方法 | |
US10311055B2 (en) | Global query hint specification | |
US8655861B2 (en) | Query metadata engine | |
US8195643B2 (en) | Database calculation engine | |
US7917463B2 (en) | System and method for data warehousing and analytics on a distributed file system | |
CN102609451B (zh) | 面向流式数据处理的sql查询计划生成方法 | |
EP2686764A1 (en) | Data source analytics | |
CN106777108A (zh) | 一种基于混合存储架构的数据查询方法和装置 | |
CN103631870A (zh) | 一种用于大规模分布式数据处理的系统及其方法 | |
CN106250519A (zh) | 用于并行数据库的数据查询方法和装置 | |
EP2849089A1 (en) | Virtual table indexing mechanism and method capable of realizing multi-attribute compound condition query | |
CN109815254A (zh) | 基于大数据的跨地域任务调度方法及系统 | |
CN111198898B (zh) | 大数据查询方法及大数据查询装置 | |
CN107688659A (zh) | 一种数据处理方法及装置 | |
CN108009270A (zh) | 一种基于分布式内存计算的文本检索方法 | |
CN109241155A (zh) | 一种rdf流数据和关系数据的联邦查询处理系统及方法 | |
CN109739882A (zh) | 一种基于Presto和Elasticsearch的大数据查询优化方法 | |
CN107818181A (zh) | 基于Plcient交互式引擎的索引方法及其系统 | |
CN105378724A (zh) | 一种数据查询方法、装置及系统 | |
US10521431B2 (en) | Relational conversion of multiprovider operations in a calculation scenario for executing a query | |
CN113568931A (zh) | 一种数据访问请求的路由解析系统及方法 | |
CN110032574A (zh) | Sql语句的处理方法及装置 | |
Yu et al. | Research on knowledge storage and query technology based on general graph data processing framework | |
Liang et al. | Design and Implementation of A Cross-Database Query Tool on Multi-Source Databases. | |
WO2023125718A1 (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190118 |
|
RJ01 | Rejection of invention patent application after publication |