Answering SPARQL queries modulo RDF Schema with paths
SPARQL是RDF图的标准查询语言。在其严格的实例化中,它只提供根据RDF语义的查询,因此会忽略相对于(RDF)模式或(OWL)本体表达的数据的语义。已经提出了对SPARQL的几个扩展来查询RDF数据模RDFS,即,用RDFS语义解释查询和/或考虑外部本体。我们介绍了一个通用的框架,它允许表示查询回答模一个特定的语义在一个同质的方式。在本文中,我们讨论了扩展SPARQL,使用正则表达式来导航RDF图,并可用于回答查询考虑RDFS语义。我们也认为他们的嵌入作为SPARQL的扩展。这些SPARQL扩展解释建议的框架内,他们的缺点。特别是,我们表明,PSPARQL查询语言,一个严格的扩展SPARQL提供传递闭包,允许回答SPARQL查询模RDFS图与SPARQL通过一个简单的转换查询相同的复杂性。我们也考虑语言,除了路径,提供约束。特别是,我们提出并比较nSPARQL和我们的建议CPSPARQL。我们表明,CPSPARQL是足够的表达,以回答完整的SPARQL查询模RDFS。最后,我们比较了nSPARQL和相应的CPSPARQL片段的表达能力和复杂性,我们称之为cpSPARQL。我们表明,这两种语言具有相同的复杂性,通过cpSPARQL,作为一个适当的扩展SPARQL图形模式,是更有表现力比nSPARQL。
2013-11-15 cs.DB
On Defining SPARQL with Boolean Tensor Algebra
资源描述框架(RDF)将信息表示为主语-谓语-宾语三元组。这些三元组通常被解释为有向标号图。我们提出了一种替代方法,将数据解释为3路布尔张量。我们展示了如何SPARQL查询-RDF的标准查询-可以表示为布尔代数中的初等运算,给我们一个完整的重新解释RDF和SPARQL。我们将展示如何布尔张量解释允许新的优化和分析的复杂性SPARQL查询。例如,估计不同连接查询的结果大小变得简单得多。
2015-03-01 cs.DB
Fast Processing of SPARQL Queries on RDF Quadruples
在本文中,我们提出了一种新的方法,快速处理SPARQL查询的大型RDF数据集包含RDF四元组(或四边形)。我们的方法RIQ采用了一种递减和征服策略:RIQ不是索引整个RDF数据集,而是识别相似的RDF图组,并单独索引每组。在查询处理期间,RIQ使用新颖的过滤索引来首先识别可能包含查询的匹配的候选组。在这些候选项上,它使用传统的SPARQL处理器执行优化的查询以产生最终结果。我们最初的性能评估结果是有希望的:使用一个合成的和一个真实的数据集,每个包含约14亿quads,我们表明,RIQ优于RDF-3X和Jena TDB的各种SPARQL查询。
2016-04-14 cs.DB
How Many and What Types of SPARQL Queries can be Answered through Zero-Knowledge Link Traversal?
当前查询Web of Data的实际方法是通过SPARQL协议,其中客户端通过SPARQL端点向服务器发送查询。与HTTP服务器相反,提供和维护一个健壮和可靠的端点需要大量的工作,而不是所有的发布者都愿意或能够做到。另一种查询评估方法是通过链接遍历,其中通过实时的解引用在线Web资源(URI)来回答查询。虽然已经提出了用于这种基于查找的查询评估方法的几种方法,但是不存在对可以在实况Web上直接回答的查询的类型(模式)的分析,而不访问本地或远程端点,并且没有可用数据源的先验知识。在本文中,我们首先提供了一种方法来检查是否可以通过零知识链接遍历(而不访问端点)回答SPARQL查询(SPARQL端点上进行评估),并分析了一个大语料库的真实SPARQL查询日志的频率和分布的可回答和不可回答的查询模式。随后,我们提供了一个算法,用于将应答查询转换为绕过端点的SPARQL-LD查询。我们报告的转换查询的效率的实验结果,并讨论了这种查询评估方法的优点和局限性。
2018-12-13 cs.DB
Provenance for SPARQL queries
确定语义Web中可用数据的信任度对于应用程序和用户来说是至关重要的,特别是对于从SPARQL端点获得的链接开放数据。在文献中有几个建议,从抽象模型的值注释SPARQL查询结果,适应的起源注释关系数据库的开创性工作。我们提供了一种方法,能够提供一个大的和重要的SPARQL 1.1片段的出处信息,包括第一次在多集语义下的主要非单调结构。该方法是基于翻译的SPARQL到关系查询的注释关系的值的最一般的m-半环,并以这种方式也驳斥了文献中的说法,SPARQL的可选结构不能被捕获适当的已知的抽象模型。
2013-03-28 cs.DB
Estimating the Cost of Executing Link Traversal based SPARQL Queries
几乎所有领域的越来越多的组织都开始采用语义Web技术,将其数据发布为开放、链接和互操作(RDF)数据集,可通过SPARQL语言和协议进行查询。链接遍历已经成为一种SPARQL查询处理方法,它利用链接数据原则和Web的动态特性,通过在查询评估期间解析在线资源(URI)来动态地发现与回答查询相关的数据。然而,链接遍历查询的执行时间对于某些查询类型可能变得过高,这是由于在查询执行期间需要访问大量资源。在本文中,我们提出并评估基线方法估计的链接遍历查询的评估成本。这样的方法对于即时决定给定查询所遵循的查询执行策略非常有用,从而减少SPARQL端点的负载并提高查询服务的整体可靠性。为了评估所提出的方法的性能,我们创建了(并公开提供)一个由2,425个查询组成的地面实况数据集。
2022-10-17 cs.DB
Scheduling Refresh Queries for Keeping Results from a SPARQL Endpoint Up-to-Date (Extended Version)
许多数据集会随着时间的推移而变化。因此,缓存并重复使用从SPARQL端点获得的查询结果的长时间运行的应用程序可能会定期重新提交查询,以确保结果的最新性。虽然如果这种定期刷新查询的数量是可管理的,则这种方法可能是可行的,但是随着越来越多的应用程序采用这种方法,SPARQL端点可能会因这种刷新查询而过载。一种更具可伸缩性的方法是使用一个中间件组件,应用程序在该组件上注册其查询,并在结果发生变化时获得更新的查询结果的通知。然后,该中间件可以调度刷新查询的重复执行,而不会使端点过载。在本文中,我们研究了大量的注册查询的调度刷新查询的问题,通过假设一个过载避免上限的长度可用于测试刷新查询的常规时隙。我们调查了各种调度策略,并比较他们的实验中所需的时隙之前,他们认识到的变化和数量的变化,他们错过了。
2016-08-29 cs.DB
ROSIE: Runtime Optimization of SPARQL Queries Using Incremental Evaluation
关系数据库在资源描述框架(RDF)数据管理中得到了广泛的应用。为了有效地进行SPARQL查询评估,需要重新考虑遗留查询优化器。其中一个重要的问题是如何解决由于基数估计容易出错而导致的查询计划不理想的问题。考虑到RDF数据的无模式特性和SPARQL查询的Join密集特性,在实际评估的查询是昂贵的甚至是不可行的之前确定最佳执行顺序,特别是对于大规模数据的复杂查询。在本文中,我们提出了ROSIE,一个迭代优化框架,迭代地重新优化SPARQL查询计划,根据实际基数来自增量部分查询评估。通过引入一种基于启发式的计划生成方法,以及一种在运行时检测基数估计错误的机制,ROSIE以一种有效的方式缓解了有偏基数传播的问题,从而对复杂的查询评估更具弹性。在真实数据和基准数据上进行的大量实验表明,与最先进的技术相比,ROSIE在复杂查询上的表现一直优于几个数量级。
2016-05-23 cs.DB
Algorithms and Analysis for the SPARQL Constructs
随着资源描述框架(RDF)正在成为流行的数据建模标准,有效处理基本图模式(BGP)SPARQL查询(也称为SQL内部连接)在过去几年中一直是研究社区的焦点。在我们最近发表的工作中,我们把社区的注意力带到了SPARQL的另一个同样重要的组件上,即,可选模式查询(也称为SQL左外连接)。我们提出了新的优化技术-第一种-和实验表明,我们的技术表现更好的低选择性查询,并给予在标准杆性能的高选择性查询,相比国家的最先进的方法。BGP和OPTIONAL(BGP-OPT)构成SPARQL查询语言的基本构建块。因此,在本文中,处理我们的BGP-OPT查询优化技术的原语,我们扩展它们来处理其他更广泛的SPARQL组件,如UNION,FILTER和DISTINCT。我们主要集中在这些扩展的程序(算法)方面。我们还提出了几个重要的观察复杂的SPARQL查询与这些条款的任何混合的结构方面,并放宽了一些约束的循环性能的查询之前提出的。我们这样做不会影响结果的正确性,从而在使用BGP-OPT优化技术时提供更多的灵活性。
2018-05-23 cs.DB
SaGe: Web Preemption for Public SPARQL Query Services
为了提供稳定且响应迅速的公共SPARQL查询服务,数据提供者对服务器使用率实施配额。超过这些配额的测试将被中断,并提供部分结果。如果可以在之后恢复查询执行,则这种中断不是问题。不幸的是,Web没有允许暂停和恢复SPARQL查询的抢占模型。在本文中,我们提出了SaGe:一个SPARQL查询引擎基于Web抢占。SaGe允许SPARQL查询在固定的时间段后被Web服务器挂起,并在客户端请求时恢复。Web抢占只有在其时间成本与时间量子相比可以忽略不计时才是易处理的。挑战在于支持完整的SPARQL查询语言,同时保持抢占的成本可以忽略不计。实验结果表明,SaGe优于现有的SPARQL查询处理方法的几个数量级的平均总查询执行时间和第一个结果的时间。
2019-02-13 cs.DB
An Analytical Study of Large SPARQL Query Logs
随着RDF作为关联数据和语义Web的数据模型的采用,来自最终用户的查询规范在SPARQL端点中变得越来越普遍。在本文中,我们进行了深入的分析研究的查询制定的最终用户和收获的大型和最新的查询日志从各种各样的RDF数据源。与以前的研究相反,我们是第一次对大量查询语料库进行评估,跨越了几年,涵盖了许多代表性的SPARQL端点。除了句法结构的查询,表现出已经有趣的结果,在这个广义的语料库,我们钻更深的结构charteristics相关的图和超图表示的查询。我们概述了最常见的形状的查询时,在视觉上显示为伪图,和字符-achts他们的(超)树的宽度。此外,我们通过引入条纹的新概念,即,作为种子查询的后续修改出现的查询序列。我们的研究提供了一些新的见解已经丰富的查询功能的真实SPARQL查询制定的真实用户,并使我们得出一些结论,并指出未来的方向,rections为SPARQL查询评估,查询优化,调优,和基准测试。
2017-08-01 cs.DB
SparqLog: A System for Efficient Evaluation of SPARQL 1.1 Queries via Datalog [Experiment, Analysis and Benchmark]
本文针对数据库与语义网技术语言割裂、互操作困难的问题,提出统一一致的 SparqLog 框架,以通过 Datalog 高效支持 SPARQL 1.1 查询并兼顾两方面需求。
2023-07-11 cs.DB
SPARQL over GraphX
RDF数据模型链接来自异构域的数据的能力导致了RDF数据的爆炸式增长。因此,在大型RDF数据上评估SPARQL查询对于语义Web社区至关重要。然而,由于RDF数据的图形特性,在关系数据库和常见的数据并行系统中评估SPARQL查询需要大量的连接,并且效率低下。另一方面,诸如社交网络数据之类的本质上是图的数据集的复杂性已经导致数据库社区开发图-并行处理系统以有效地支持迭代图计算。在这项工作中,我们利用RDF数据的图形表示,并利用GraphX,一个新的图形处理系统的基础上Spark。我们提出了一个子图匹配算法,兼容GraphX编程模型来评估SPARQL查询。一些实验表明,系统的可扩展性,以处理大型数据集。
2017-01-11 cs.DB
Extending SPARQL to Support Entity Grouping and Path Queries
在大型图中有效地找到给定查询的相关子图和路径的能力在包括科学数据分析、社交网络和商业智能的许多应用中是重要的。目前,有很少的支持,没有有效的方法来表达和执行这样的查询。本文提出了一个数据模型和一个查询语言来解决这个问题。贡献包括支持以下的构造和选择:(i)文件夹节点,表示一组相关实体,以及(ii)路径节点,表示一组路径,其中路径是图中两个或更多个实体的传递关系。路径和路径可以被存储并用于将来的查询。我们介绍FPSPARQL,这是一个扩展的SPARQL支持文件夹和路径节点。我们已经实现了一个查询引擎,支持FPSPARQL和评估结果表明,它的可行性和查询大型图数据集的效率。
2012-11-21 cs.DB
Killing Two Birds with One Stone -- Querying Property Graphs using SPARQL via GREMLINATOR
知识图谱在过去十年中变得流行,并且经常依赖于资源描述框架(RDF)或属性图(PG)数据库作为数据模型。然而,这两种数据模型的查询语言--RDF的SPARQL和PG遍历语言Gremlin --缺乏互操作性。我们介绍Gremlinator,SPARQL(W3C RDF标准化语言)和Gremlin(一种流行的属性图遍历语言)的第一个翻译器。Gremlinator将SPARQL查询转换为Gremlin路径遍历,以便在图数据库上执行图模式匹配查询。这允许精通SPARQL的用户访问和查询各种各样的图数据管理系统(DMS),避免了适应新的图查询语言(GQL)的陡峭学习曲线。Gremlin是一种与图计算系统无关的遍历语言(涵盖OLTP图数据库或OLAP图处理器),使其成为支持查询图DMS的互操作性的理想选择。Gremlinator目前支持SPARQL 1.0的一个子集的翻译,特别是SPARQL SELECT查询。
2018-01-25 cs.DB
The Odyssey Approach for Optimizing Federated SPARQL Queries
通过SPARQL端点联合执行查询需要组合来自多个数据源的数据。在这样的场景中优化查询是特别具有挑战性的,这不仅是因为(i)正确回答查询的各种各样的可能的查询执行计划,而且还因为(ii)对关于远程源的模式和实例数据的统计数据的访问是有限的。为了克服这些挑战,大多数联邦查询引擎依赖于算法来减少可能的查询执行计划的空间,或者依赖于动态规划策略来产生最优计划。然而,这些计划可能仍然表现出大量的中间结果或高执行时间,因为成本估算和不准确的成本估算。在本文中,我们提出了奥德赛,一种方法,使用统计数据,允许更准确的成本估计联邦查询,因此使奥德赛产生更好的查询执行计划。我们的实验结果表明,奥德赛产生的查询执行计划,更好的数据传输和执行时间比国家的最先进的优化。我们使用FedBench基准测试的实验显示,平均执行时间至少增加了25倍。
2017-11-02 cs.DB
Left Bit Right: For SPARQL Join Queries with OPTIONAL Patterns (Left-outer-joins)
SPARQL基本图形模式(BGP)(也称为SQL内部连接)查询优化是一个很好的研究领域。然而,OPTIONAL模式查询的优化(a.k.a. SQL左外连接)由于左外连接的\textit{reordering}上的限制而带来了额外的挑战。这种查询的出现往往高达总查询的50%(例如,DBPedia查询日志)。在本文中,我们提出了\textit{Left Bit Right}(LBR),\textit{well-designed}嵌套BGP和OPTIONAL模式查询的技术。通过LBR,我们提出了一种新的方法来表示这样的查询使用的图的\textit{supernodes},这是用来积极修剪RDF三元组,与压缩索引的帮助下。我们还提出了新的优化策略-第一种,据我们所知-结合在一起的\textit{acyclicity}的查询,\textit{minimality},和\textit{nullification},\textit{best-match}运营商的特点。在本文中,我们专注于没有UNION或FILTER的OPTIONAL模式,但我们也展示了如何使用\textit{query rewrite}使用我们的技术处理UNION和FILTER。我们在8 GB内存的商用笔记本电脑上对多达10亿个三元组的RDF图进行了评估,结果表明,与Virtuoso和MonetDB等最先进的RDF列存储相比,L…
2015-04-01 cs.DB
Efficient Approximation of Well-Designed SPARQL Queries
查询响应时间常常影响现实世界中的用户体验。然而,它可能需要更多的时间来回答一个查询的所有精确解,特别是当它包含OPT操作,因为OPT操作是SPARQL中最不传统的操作。因此,在查询响应时间和其解决方案的准确性之间进行权衡变得至关重要。本文基于查询中OPT操作的深度,提出了一种利用较少的OPT操作深度来获得其所有近似查询的方法。本文主要讨论那些设计良好的查询模式,因为OPT操作在一个设计良好的模式是真正的“可选”。首先,将一个OPT范式模式转换成一棵树,树的内部节点用OPT操作标记,叶子节点用包含AND操作和FILTER操作的模式标记。其次,基于这个精心设计的树,我们删除了“可选”精心设计的子树与OPT操作的深度较小,然后获得近似查询与不同深度的OPT操作。最后,我们评估近似查询效率的近似度。
2016-03-22 cs.DB
STREAK: An Efficient Engine for Processing Top-k SPARQL Queries with Spatial Filters
地理空间数据在应急、运输、农业等关键应用中的重要性,促使许多RDF处理引擎采用最新的GeoSPARQL标准。除了地理空间数据的大型存储库之外,LinkedGeoData、OpenStreetMap等--空间数据也经常在自动构建的知识库中找到,如Yago和WikiData。虽然已经有了在RDF/SPARQL中有效处理空间数据的研究工作,但很少有人致力于构建能够整体处理复杂SPARQL查询以及空间过滤器的端到端系统。在本文中,我们提出了条纹,RDF数据管理系统,旨在支持广泛的查询与空间过滤器,包括复杂的连接,top-k,高阶关系的空间丰富的数据库。Streak引入了各种新颖的功能,例如空间和非空间实体的仔细标识符编码策略,使用语义感知的四叉树索引,允许提前终止和巧妙地使用零计划切换成本的自适应查询处理。我们表明,Streak可以扩展到一些最大的公开可用的语义数据资源,如Yago 3和LinkedGeoData,其中包含空间实体和可量化的谓词,用于结果排名。对于实验评估,我们专注于top-k距离连接查询,并证明Streak优于流行的空间连接算法以及最先进的端到端系统,如Virtuoso和PostgreSQL。
2017-10-20 cs.DB
PRoST: Distributed Execution of SPARQL Queries Using Mixed Partitioning Strategies
RDF图的规模近年来迅速增长,需要分布式存储和并行处理策略。为了使用计算机集群获得高效的查询处理,已经提出了各种不同的方法。与本文中提出的方法相关的是构建在Hadoop HDFS之上的系统,例如使用Apache Accumulo或使用Apache Spark。我们提出了一个新的RDF存储称为PRoST(Spark表上的分区RDF)基于Apache Spark。PRoST引入了一种创新的策略,将垂直分区方法与属性表相结合,这是两种预先存在的用于存储RDF数据集的模型。我们证明,我们的建议优于最先进的系统w.r.t.运行时适用于各种查询类型,无需任何广泛的预计算阶段。
2018-02-16 cs.DB
The Lothbrok approach for SPARQL Query Optimization over Decentralized Knowledge Graphs
虽然Web of Data原则上提供了对广泛的互连数据的访问,但今天的语义Web架构主要依赖于数据提供者通过SPARQL端点来维护对其数据的访问。然而,一些研究表明,这些端点经常会遇到停机时间,这意味着它们维护的数据变得不可访问。虽然基于对等(P2P)技术的分散式系统先前已经显示出增加了知识图谱的可用性,但是即使当大部分节点发生故障时,在这样的设置中处理查询也可能是昂贵的任务,因为回答单个查询所需的数据可能分布在多个节点上。因此,在本文中,我们提出了一种方法来优化SPARQL查询分散的知识图谱,称为Lothbrok。虽然在优化此类查询时可能需要考虑许多方面,但我们专注于三个方面:基数估计,局部感知和数据碎片。我们的经验表明,Lothbrok是能够实现显着更快的查询处理性能相比,最先进的处理具有挑战性的查询时,以及当网络处于高负载下。
2022-08-31 cs.DB
A Context-Based Semantics for SPARQL Property Paths over the Web (Extended Version)
到目前为止,还不存在用于查询Web上的链接数据的标准语言,其中跨分布式数据源的导航是一个关键特性。一个自然的候选者似乎是SPARQL,由于引入了属性路径(PP),它最近已经增强了导航功能。然而,SPARQL的语义限制了通过PP导航到单个RDF图的范围。这种限制限制了PP在Web上的适用性。为了填补这一空白,在本文中,我们提供了正式的基础上评估PP在Web上,从而有助于定义一个查询语言的关联数据。特别是,我们引入了一个查询语义的PP,夫妇在数据级的导航与Web图形上的导航。鉴于这种语义,我们发现,对于一些基于PP的SPARQL查询在Web上的一个完整的评估是不可行的。为了使系统能够识别可以完全评估的查询,我们建立了一个可判定的语法属性,这样的查询。
2015-03-16 cs.DB
The tractability frontier of well-designed SPARQL queries
我们研究了SPARQL查询的查询评估的复杂性。我们专注于设计良好的SPARQL的基本片段,仅限于AND,OPTIONAL和UNION运算符。我们的主要结果是一个结构特征的类设计良好的查询,可以在多项式时间进行评估。特别是,我们引入了一个新的宽度概念,称为支配宽度,它依赖于著名的树宽概念。我们表明,在一些复杂性理论的假设下,设计良好的查询,可以在多项式时间进行评估的类正是那些有界的统治宽度。
2018-03-27 cs.DB cs.DS cs.LO
PHD-Store: An Adaptive SPARQL Engine with Dynamic Partitioning for Distributed RDF Repositories
许多存储库使用通用的RDF模型来发布数据。存储库通常是分布式的并且在地理上是远程的,但是数据是互连的(例如,语义网),并通过SPARQL等语言进行全局查询。由于网络成本和查询的性质,执行时间可能非常高。当前的解决方案试图通过在预处理阶段重新分布所有数据来最小化网络成本,但是存在两个缺点:(i)重新分布是基于可能不会使许多未来查询受益的统计学的;以及(ii)即使对于中等大小的数据集,预处理阶段也非常昂贵。在本文中,我们提出了PHD-Store,一个SPARQL引擎的分布式RDF存储库。我们的系统不假设任何特定的初始数据放置,也不需要验证;因此,它最大限度地减少了启动成本。最初,PHD-Store使用可能较慢的分布式半连接算法来回答查询,但通过增量地重新分配频繁访问的数据来动态地适应查询负载。重分发的方式是,未来的查询可以受益于快速的基于散列的并行执行。我们对合成数据和真实数据的实验验证了PHD-Store可以扩展到非常大的数据集;许多存储库;收敛到与现有方法相当或更好的分区质量;并且执行大型查询负载的速度比我们的竞争对手快1到2个数量级。
2014-05-20 cs.DB
PIWD: A Plugin-based Framework for Well-Designed SPARQL
在现实世界的数据集(例如,DBpedia查询日志)中,构建在仅包含AND和OPT操作符的精心设计的模式(简称WDAO模式)上的查询在所有SPARQL查询中占很大比例。在本文中,我们提出了一个基于插件的框架,所有的选择查询建立在WDAO模式,名为PIWD。该框架是基于一个解析树称为\emph{well-designed AND-OPT tree}(简称,WDAO树),其叶子是基本图形模式(BGP)和内部节点是OPT操作。我们证明了,对于任何WDAO模式,它的解析树可以等价地转化为WDAO树。基于所提出的框架,我们可以采用任何查询引擎来评估BGP评估查询建立在WDAO模式在一个方便的方式。理论上,由于BGP的查询计算等价于子图同态,所以我们可以将WDAO模式的查询计算归结为子图同态和BGP。最后,我们在gStore和RDF-3X上的初步实验表明,PIWD可以有效地回答所有基于WDAO模式的查询。
2016-10-07 cs.DB
On tractable query evaluation for SPARQL
尽管在过去的十年中对SPARQL(RDF数据的标准查询语言)的基本属性做了大量的工作,但对这种语言的易处理性的确切限制却知之甚少。特别是对于包含OPTIONAL-操作符的SPARQL查询,即使它是SPARQL最深入研究的特性之一,情况也是如此。我们的工作的目的是提供一个更全面的图片易处理类SPARQL查询。一般来说,SPARQL查询计算在组合复杂度上是PSPACE-完全的,并且对于只包含OPTIONAL-操作符的查询来说,它仍然是PSPACE-困难的。为了改善这种情况,研究集中在“精心设计的SPARQL查询”和他们最近的推广“弱精心设计的SPARQL查询”。对于这两个片段,评估问题在没有投影的情况下是coNP完全的,否则是SigmaP 2完全的。此外,它们已被证明包含在实际设置中询问的大多数SPARQL查询。在本文中,我们研究了听话类弱良好设计的查询参数化的复杂性,考虑等价的制定模式树。在没有投影的情况下,我们给出了易处理类的完整刻画。此外,我们展示了所有易于处理的类的简单的精心设计的模式树的投影的存在下的特征。
2017-12-24 cs.CC cs.DB cs.LO
Efficient SPARQL Autocompletion via SPARQL
我们将展示如何实现快速自动完成非常大的知识库上的SPARQL查询。在SPARQL查询主体中的任何位置,自动完成都建议匹配主语、谓语或宾语。这些建议是上下文敏感的,因为它们会导致非空结果,并根据它们与已键入的查询部分的相关性进行排名。可以通过前缀搜索所需主语、谓语或宾语的名称和别名来缩小建议范围。所有建议本身都是通过SPARQL查询获得的,我们称之为自动完成查询。对于现有的SPARQL引擎,这些查询在大型知识库上非常慢。我们提出了各种现有的SPARQL引擎的算法和工程改进,使这些自动完成查询有效地执行。我们提供了一个广泛的评估各种建议的方法在三个大的知识库,包括维基数据(6.9B三元组)。我们探讨的建议和自动完成查询的处理时间的相关性之间的权衡。我们比较我们的结果与两个广泛使用的SPARQL引擎,Virtuoso和Blazegraph。在Wikidata上,我们以低于秒的响应时间为超过90%的大型和多样化的数千个自动完成查询实现了完全敏感的建议。完全再现性材料、交互式评估Web应用程序和演示可在https://ad.informatik.uni-freiburg.de/publications上获得。
2021-04-29 cs.DB cs.HC cs.IR
Processing SPARQL Queries Over Distributed RDF Graphs
我们提出了在分布式环境中处理大型RDF图上的SPARQL查询的技术。我们采用“部分评估和组装”框架。查询SPARQL查询Q等价于在RDF图G上找到查询图Q的子图匹配。基于分布式图上子图匹配的性质,我们在RDF图G的每个片段中引入局部部分匹配作为部分答案。对于组装,我们提出了两种方法:集中式组装和分布式组装。我们从理论和实验两方面分析了我们的算法。大量的实验在真实的和基准RDF存储库的数十亿个三元组证实,我们的方法是优于国家的最先进的方法在系统的性能和可扩展性。
2016-03-21 cs.DB cs.DC
A Survey of RDF Stores & SPARQL Engines for Querying Knowledge Graphs
RDF在最近几年中得到了越来越多的采用,促进了RDF的SPARQL查询语言的标准化,以及用于处理SPARQL查询的本地和分布式引擎的开发。这篇调查论文对查询RDF知识图谱的技术和系统进行了全面的回顾。虽然其他评论这个主题往往集中在分布式设置,工作的主要重点是提供一个全面的调查国家的最先进的存储,索引和查询处理技术,有效地评估SPARQL查询在本地设置(在一台机器上)。为了保持调查的独立性,我们还提供了一个简短的讨论,在分布式设置中使用的图分区技术。最后,我们讨论当代研究的挑战,进一步提高SPARQL查询引擎。这个扩展版本还提供了超过100个SPARQL查询引擎及其使用的技术的调查,以及12个基准测试及其功能。
2021-10-13 cs.DB
Using Linguistic Analysis to Translate Arabic Natural Language Queries to SPARQL
The Islamic University of Gaza(伊斯兰大学(加沙))
语义网基于逻辑的机器可理解的框架往往挑战天真的用户,当他们试图查询基于本体的知识库。现有的研究工作已经接近这个问题,通过引入自然语言(NL)接口的本体。这些NL接口具有基于NL用户查询构造SPARQL查询的能力。然而,大多数努力仅限于用英语表达的查询,并且它们通常受益于英语NLP工具的进步。然而,很少有研究已经做了支持查询的阿拉伯语内容的语义Web上使用NL查询。本文提出了一种独立于领域的方法,利用语言分析将阿拉伯语NL查询转换为SPARQL。基于对名词短语(NPs)的特殊考虑,我们的方法使用语言解析器从阿拉伯语解析树中提取NPs和关系,并将它们与底层本体进行匹配。然后,它利用本体中的知识将NP分组为基于三重的表示。通过提取目标和修饰符,并将它们解释为SPARQL,最终生成SPARQL查询。对高级语义特征包括否定、连词和转折修饰语的解释也得到了支持。使用OWL测试数据和查询数据集对该方法进行了验证,结果证实了该方法将阿拉伯语NL查询转换为SPARQL的可行性。
2015-08-06 cs.AI cs.CL cs.DB
A Stitch in Time Saves Nine -- SPARQL querying of Property Graphs using Gremlin Traversals
知识图谱在过去几年中变得流行,并且经常依赖于资源描述框架(RDF)或属性图(PG)作为底层数据模型。然而,这两种数据模型的查询语言--用于RDF的SPARQL和用于属性图遍历的Gremlin--缺乏互操作性。我们提出Gremlinator,一个小说SPARQL Gremlin翻译。Gremlinator将SPARQL查询转换为Gremlin遍历,以便在图数据库上执行图模式匹配查询。这允许使用W3 C标准化的SPARQL查询语言访问和查询各种各样的图数据管理系统(DMS),并避免新的图查询语言的学习曲线。Gremlin是一种与系统无关的遍历语言,覆盖OLTP图形数据库或OLAP图形处理器,因此使其成为支持互操作性wrt的理想选择。查询Graph DMS。我们提出了一个全面的经验评估Gremlinator,并证明其有效性和适用性,通过执行SPARQL查询上领先的图形存储Neo4J,Sparksee和Apache TinkerGraph和比较的性能与RDF存储Virtuoso,4Store和JenaTDB。我们的评估表明,Gremlin同行的SPARQL查询,特别是对于星形和复杂的查询获得了可观的性能增益。
2018-02-12 cs.DB cs.PF
Sapphire: Querying RDF Data Made Simple
链接开放数据(LOD)云中的RDF数据对于许多不同的应用程序都非常有价值。为了释放这些数据的全部价值,用户应该能够对LOD云中的RDF数据集发出复杂的查询。SPARQL可以表达这样复杂的查询,但是构造SPARQL查询对用户来说可能是一个挑战,因为它需要知道被查询的数据集的结构和词汇。在本文中,我们介绍了蓝宝石,一个工具,帮助用户编写语法和语义正确的SPARQL查询,而无需事先了解查询数据集。Sapphire通过根据查询数据提供自动完成建议,以交互方式帮助用户键入查询。在发出查询后,Sapphire会提供更改查询的建议,以更好地满足用户的需求。我们基于性能实验和用户研究对Sapphire进行了评估,并表明它优于竞争方法。
2018-09-13 cs.DB
Star Pattern Fragments: Accessing Knowledge Graphs through Star Patterns
语义Web提供了对通过SPARQL端点访问的大量互联信息的访问。这样的端点提供了一个定义良好的接口来检索复杂SPARQL查询的结果。处理这种SPARQL端点的计算负载提供了对大量互连信息的访问。虽然它们提供了一个定义良好的接口来有效地检索复杂SPARQL查询的结果,但复杂的查询负载很容易使端点过载或崩溃,因为回答查询的所有计算负载都完全驻留在托管端点的服务器上。最近提出的接口,如三重模式片段,因此,在非选择性三重模式的情况下,以增加网络流量为代价,将一些查询处理负载从服务器转移到客户端。因此,本文提出了星型模式片段(SPF),RDF接口,使服务器和客户端之间的一个更好的负载均衡分解成星形的子查询,SPARQL查询,评估他们在服务器端。使用合成数据(WatDiv)和真实数据(DBpedia)的实验表明,SPF不仅显著减少了网络流量,而且在高查询负载下比最先进的接口快两个数量级。
2021-11-09 cs.DB
S2CTrans: Building a bridge from SPARQL to Cypher
本文提出了 S2CTrans 框架,基于图关系代数实现了从 SPARQL 到 Cypher 的翻译,在保持语义一致性的同时,有效提升了使用 SPARQL 查询属性图数据库的互操作性与效率。
2023-04-02 cs.DB
Certain Answers to a SPARQL Query over a Knowledge Base (extended version)
Free University of Bozen-Bolzano(博尔扎诺自由大学)
本体中介查询(OMQA)是一个完善的框架,用于回答RDFS或OWL知识库(KB)上的查询。OMQA最初是为联合查询(UCQ)设计的,并且基于某些答案。最近,OMQA已经扩展到SPARQL查询,但据我们所知,在这个方向上所做的努力(无论是在文献中,或所谓的SPARQL蕴涵制度)是能够捕捉到某些答案UCQ和SPARQL的标准解释在一个普通的图。我们将这些形式化为任何语义都要满足的要求,旨在调和某些答案和SPARQL答案,并定义了三个额外的要求,概括为知识库的SPARQL答案的一些基本属性。然后,我们表明,可以定义一个语义,满足所有要求SPARQL查询与SELECT,UNION和OPTIONAL,和DL与规范模型属性。我们还调查了在这样的语义DL-Lite R KB的查询回答的组合复杂性。特别是,我们表明不同的SPARQL片段,已知的上界查询回答一个普通的图相匹配。
2019-11-21 cs.AI cs.DB
Hierarchical Characteristic Set Merging for Optimizing SPARQL Queries in Heterogeneous RDF
特征集(CS)基于表征其主题节点的属性集来组织RDF三元组。这个概念最近在索引技术中使用,因为它可以捕获RDF数据的隐式模式。虽然大多数基于CS的方法在空间和查询性能方面都有显著的改进,但它们在存在模式异构性的情况下表现不佳,即,当CS的数量变得非常大时,导致高度分区的数据组织。在本文中,我们解决这个问题,通过引入一种新的技术,合并CS的层次结构的基础上。我们的技术采用了一个网格来捕捉CS之间的层次关系,确定密集的CS和合并密集的CS与他们的祖先,从而减少CS的大小以及它们之间的联系。我们实现了我们的算法上的关系骨干,其中每个合并的CS存储在一个关系表中,我们进行了广泛的实验研究,以评估性能和合并的RDF数据集的存储和查询的影响,表明显着的改进。
2018-09-07 cs.DB
Efficient Handling of SPARQL OPTIONAL for OBDA (Extended Version)
OPTIONAL是SPARQL中用于处理缺失信息的一个关键特性。虽然这个操作符被广泛使用,但它也以其复杂性而闻名,这可能会使使用OPTIONAL的查询的有效评估具有挑战性。我们在基于本体的数据访问(OBDA)设置中解决了这个问题,其中数据存储在SQL关系数据库中,并通过R2RML映射作为虚拟RDF图公开。我们从SPARQL片段到SQL的简洁转换开始。它充分尊重包语义和三值逻辑,并依赖于LEFT JOIN运算符和COALESCE函数的广泛使用。然后,我们提出了优化技术,以减少的大小和改进生成的SQL查询的结构。我们的优化捕获JOIN,LEFT JOIN,COALESCE和完整性约束(如属性为空性,唯一性和外键约束)之间的交互。最后,我们在BSBM OBDA基准上实证验证了我们的技术的有效性。
2018-06-18 cs.DB
An Evolutionary Algorithm to Learn SPARQL Queries for Source-Target-Pairs: Finding Patterns for Human Associations in DBpedia
University of Kaiserslautern(凯泽斯劳滕大学);DFKI GmbH(德国人工智能研究中心)
由于需要领域专家制定正确的SPARQL查询来回答问题,因此通常会阻碍对关联数据社区提供的知识的有效使用。对于新的问题,他们必须决定哪些数据集是合适的,以及用什么术语和建模风格来表达SPARQL查询。在这项工作中,我们提出了一个进化算法,以帮助这一具有挑战性的任务。给定源-目标节点对示例的训练列表,我们的算法可以从SPARQL端点学习模式(SPARQL查询)。学习到的模式可以可视化以形成进一步调查的基础,或者它们可以用于预测新源节点的目标节点。除此之外,我们将我们的算法应用于数百个人类关联的数据集(如“圆形-正方形”),以在DBpedia中找到它们的模式。我们通过在一个装载了超过79亿个三元组的SPARQL端点上运行该算法来展示其可扩展性。此外,我们使用得到的SPARQL查询来模拟人类关联,平均平均精度(MAP)为39.9%,Recall@10为63.9%。
2016-09-13 cs.AI cs.DB cs.NE
Towards a theory of Façade-X data access: satisfiability of SPARQL basic graph patterns
Università Telematica San Raffaele(圣拉法埃勒远程大学);The Open University(开放大学)
本文构建了Façade-X数据访问的理论框架,研究SPARQL基本图模式的可满足性,提出算法和实验验证,为知识图谱的数据集成系统优化提供基础。
2026-05-08 cs.DB
Efficient Cloud-edge Collaborative Approaches to SPARQL Queries over Large RDF graphs
Hunan University(湖南大学);University of Waterloo(滑铁卢大学);Peking University(北京大学)
本文提出一种高效云边协同方法,通过引入模式诱导子图和混合整数非线性规划模型,优化大规模RDF图SPARQL查询的性能。
2026-01-26 cs.DB
Fast Dual Simulation Processing of Graph Database Queries (Supplement)
图数据库查询语言具有表达性强但计算开销大的模式匹配能力。例如,在SPARQL中插入可选查询子句会立即呈现查询求值问题的Pspace完全性。因此,轻量级图模式匹配关系,例如模拟,最近已经被研究为更昂贵的查询机制的有希望的替代方案,例如,计算子图同构。尽管如此,图模式匹配本身缺乏表达查询能力:所有模式都是由通常的连接结构组合在一起的,为了使解决方案对新兴应用程序有用,更复杂的功能是不可避免的。在本文中,我们通过引入一个新的双模拟SPARQL查询操作过程来弥合这一差距。除了支持SPARQL查询的完整语法结构外,它还具有多项式时间模式匹配的功能,可以计算来自数据库的查询结果的过度近似。此外,为了实现与最先进的数据库系统的运行时竞争,我们开发了一种新的算法解决方案,双模拟图模式匹配,基于一个系统的不等式,允许几个优化算法。最后,我们实现了我们的SPARQL查询,包括UNION,AND和OPTIONAL操作符的过程中,不限于精心设计的模式的合理性。我们的合成和真实世界的图形数据的实验,保证了一个明确的增益图数据库系统时,将新的双重模拟技术。在这篇补充论文中,我们详细介绍了第35届IEEE国际数据工程会议(ICDE 2019)论文集中包含的原始论文“图数据库的快速双重模拟处理”的所有证明,实验结果的讨论和复杂性分析,中国澳门。
2018-10-22 cs.DB
On The Marriage of SPARQL and Keywords
虽然SPARQL已经成为RDF图的主要查询语言,但仅使用SPARQL语法不能很好地捕获某些查询意图。另一方面,关键词搜索由于其指定信息需求的直观方式而得到广泛使用,但存在精度低的问题。为了最大限度地发挥SPARQL和关键字搜索的优势,我们引入了一种新的范式,将两者结合起来,并提出了一个混合查询(称为SK查询),集成SPARQL和关键字搜索。为了有效地回答SK查询,设计了一个结构索引,在此基础上提出了一种新的集成查询算法。我们评估我们的方法在大型真实RDF图和实验证明我们的方法的有效性和效率。
2014-11-30 cs.DB
SP2Bench: A SPARQL Performance Benchmark
最近,用于RDF的SPARQL查询语言已经达到了W3C推荐标准。为了响应这个新兴的标准,数据库社区目前正在探索RDF数据的有效存储技术和SPARQL查询的评估策略。要对这些方法进行有意义的分析和比较,就必须有一个全面和普遍的基准平台。为此,我们开发了SP^2Bench,这是一个公开可用的、特定于语言的SPARQL性能基准。SP^2Bench是DBLP场景中的解决方案,它包括一个用于创建任意大的类DBLP文档的数据生成器和一组精心设计的基准查询。生成的文档反映了原始DBLP数据集中遇到的关键特征和社交世界分布,而查询则在此数据之上实现了有意义的请求,涵盖了各种SPARQL操作符星座和RDF访问模式。作为概念验证,我们将SP^2Bench应用于现有引擎,并讨论其优势和劣势,这些优势和劣势直接来自基准测试结果。
2008-10-21 cs.DB cs.PF
Soundness and Completeness of SPARQL Query Containment Solver SpeCS
SPECS工具实现了一种高效的自动化方法来推理SPARQL查询包含问题。在本文中,我们证明了这种方法的正确性。给出了SPARQL语言核心子集的精确语义。我们简要地讨论了用于减少到一个正式的逻辑框架的查询包含问题的过程。我们证明,这种减少是健全的和完整的合取查询,也为一些重要的情况下,非合取查询包含操作工会,操作员可选,和子查询。可靠性和完整性证明被认为是在遏制和包容的形式。
2022-10-13 cs.DB cs.LO
Path discovery by Querying the federation of Relational Database and RDF Graph
用于检测路径的查询的类别是重要的,因为它们可以提取输入图的节点上的隐式二元关系。RDF社区使用的大多数路径查询语言,如W3C SPARQL 1.1中的属性路径和nSPARQL中的嵌套正则表达式都是基于正则表达式的。联合查询允许将图模式和关系数据库组合在一起,从而能够在单个查询中对多个异构数据资源进行评估。W3C SPARQL 1.1中的联邦查询目前在不同的SPARQL端点上进行评估。本文提出了一种联邦路径查询语言,作为常规路径查询语言的扩展,以支持RDF图与关系数据库的集成。联邦路径查询语言绝对比嵌套正则表达式和无否定属性路径更具表达力。其额外的表达能力可以用于捕获嵌套的正则路径查询的合取和联合。尽管表达能力的增加,我们也表明,联邦路径查询仍然享有低计算复杂性,可以有效地进行评估。
2016-10-25 cs.DB
SPARQL in N3: SPARQL CONSTRUCT as a rule language for the Semantic Web (Extended Version)
本文提出将 SPARQL CONSTRUCT 查询用作语义网逻辑规则,并翻译为 N3 规则语言以支持一般递归和现有推理机制,从而提升规则推理的表达力、可交换性与性能。
2025-08-18 cs.DB cs.LO
Efficient Analytical Queries on Semantic Web Data Cubes
由于诸如开放数据和开放政府数据等倡议,在语义网(SW)上发布的多维数据量不断增加。因此,需要能够有效获取有价值信息的模型、语言和工具。多维数据通常表示为数据立方体,并使用联机分析处理(OLAP)技术进行开发。RDF数据立方体词汇表,也表示QB,是当前W3C标准,以表示统计数据的SW。由于QB不包括OLAP分析所需的关键功能,在以前的工作中,我们提出了一个扩展,表示QB4OLAP,以克服这个问题,而不需要修改已经发布的数据。一旦数据立方体在软件上表示,我们就需要工具来分析它们。然而,在SW多维数据集上编写高效的分析查询需要深入了解RDF和SPARQL。这些技能在典型的分析用户中并不常见。此外,像MDX这样的OLAP语言远不能被最终用户容易地理解。缺乏友好的工具来利用软件上的多维数据是一个需要打破的障碍,以促进此类数据的发布。我们在本文中解决这个问题。我们的方法是基于允许分析用户编写查询使用多维数据集的OLAP操作,而不处理SW标准。为此,我们设计了CQL(Cube查询语言的缩写),这是一种对多维数据集进行操作的简单、高级查询语言。使用QB4OLAP提供的元数据,我们将CQL查询转换为SPARQL。然后,我们提出了查询改进策略,以产生有效的SPARQL查询,适应SPARQL查询优化技术。我们评估我们的方法使用星模式基准,表明我们的建议优于其他人。一个允许使用CQL查询SW数据立方体的W…
2017-03-21 cs.DB
BARQ: A Vectorized SPARQL Query Execution Engine
本文介绍了向量化SPARQL查询执行引擎BARQ,通过批处理元组优化关键操作,成功集成到Stardog平台,在CPU密集型查询上实现大幅提速且不牺牲磁盘密集型查询性能。
2025-04-06 cs.DB
A Novel Approach for Generating SPARQL Queries from RDF Graphs
Université De Tunis El Manar(突尼斯埃尔马纳尔大学);Faculté Des Sciences De Tunis(突尼斯理学院);Faculté des Sciences Économiques et de Gestion de Tunis(突尼斯经济与管理科学学院);Faculté des Sciences juridique Économique et de Gestion de Jendouba(坚杜拜法律经济与管理科学学院)
这项工作是作为一个研究硕士论文项目的一部分。目标是根据用户提供的关键字生成SPARQL查询,以查询RDF图。为此,我们首先将输入本体转换为RDF图,该图反映了本体中表示的语义。随后,我们将此RDF图存储在Neo4j图形数据库中,以确保RDF数据的高效和持久管理。在询问时,我们研究了用户最初提出的请求的不同可能和期望的解释。我们还建议在两种查询语言SPARQL和Cypher之间进行某种转换,这是Neo4j特有的。这使我们能够在各种各样的BD-RDF上实现我们的系统架构,提供它们的查询语言,而不改变系统的任何其他组件。最后,我们使用不同的测试库对我们的工具进行了测试和评估,结果表明,我们的工具是全面的,有效的,足够强大。
2020-05-30 cs.AI cs.DB
Time travel for knowledge graphs: live queries over RDF change histories
University of Bologna(博洛尼亚大学)
本文提出Time Agnostic Library,实现对RDF数据集的实时时间穿越查询,支持六种时间检索需求,并在多版本模式下实现高效的查询和更新。
2026-04-26 cs.DB
Revealing Secrets in SPARQL Session Level
Southeast University(东南大学);Leipzig University(莱比锡大学);University of Paderborn(帕德博恩大学);Tongji University(同济大学)
知识图谱基于语义Web技术,通过SPARQL服务帮助用户发现感兴趣的信息。搜索者经常反复检查中间结果,并在搜索会话中反复修改SPARQL查询。在这种情况下,理解用户行为是有效的意图预测和查询优化的关键。然而,这些行为还没有在SPARQL会话级别进行系统的研究。本文通过对大量真实SPARQL查询日志的全面调查,揭示了会话级用户搜索行为的秘密。特别是,我们彻底评估用户w.r.t.查询的变化。SPARQL查询的结构和数据驱动功能。为了说明我们的研究结果的潜力,我们采用了一个应用程序的例子,如何使用我们的研究结果,这可能是有价值的设计高效的SPARQL缓存,自动完成,查询建议,近似和放松技术在未来。
2020-11-02 cs.AI cs.DB
TrQuery: An Embedding-based Framework for Recommanding SPARQL Queries
Tianjin University(天津大学);Tianjin Key Laboratory of Cognitive Computing and Application(天津市认知计算与应用重点实验室)
在本文中,我们提出了一个基于嵌入的框架(TrQuery)的建议解决方案的SPARQL查询,包括近似的解决方案时,确切的查询解决方案是不可用的,由于不完整或不一致的现实世界的RDF数据。在这个框架内,嵌入应用到评分解决方案与编辑距离,使我们可以获得更细粒度的建议比那些建议通过编辑距离。例如,在我们提出的框架中,可以区分具有相似结构的两个查询解决方案的图,而取决于结构差异的编辑距离变得无法。为此,我们提出了一种新的分数模型,建立在嵌入系统中产生的向量空间,计算近似子图匹配和整个图匹配之间的相似度。最后,我们在大型RDF数据集DBpedia和YAGO上对我们的方法进行了评估,实验结果表明,TrQuery在有效性和效率方面都表现出出色的行为。
2018-06-16 cs.AI cs.DB
Q${}^2$Forge: Minting Competency Questions and SPARQL Queries for Question-Answering Over Knowledge Graphs
Univ. Côte d'Azur(普罗旺斯大学);Inria(法国国家科学研究中心);ICN(信息与通信网络研究所);I3S(信息科学与系统研究所);CNRS(法国国家科学研究中心)
Q²Forge通过生成知识图谱的胜任问题和对应的SPARQL查询,解决非专家用户生成高质量查询的挑战,提供开放源代码的模块化解决方案。
2025-12-12 cs.AI cs.DB cs.IR
SPARQL for Networks of Embedded Systems
语义Web(或Web of Data)代表了在Web上链接和共享数据的成功尝试。Web of Data的基石是作为数据格式的RDF和作为事实标准查询语言的SPARQL。最近的趋势显示了数据网络向物联网的演变,集成了嵌入式设备和智能对象。来自这些设备的数据不共享通用格式,使得集成和查询变得不可能。为了克服这个问题,我们提出了我们的方法,使嵌入式系统的物联网的一流公民。我们的框架从单个部署中抽象出来,将它们表示为符合语义Web背后思想的公共数据源。这包括对来自嵌入式设备池和/或外部数据源的数据执行任意SPARQL查询。在嵌入式网络中处理冗长的RDF数据和执行SPARQL查询对最小化所涉及的处理和通信成本提出了重大挑战。因此,我们提出了一个网络查询处理器,旨在推动设备上的处理步骤。我们展示了我们的框架的实际应用和潜在的好处,在一个全面的评估,使用现实世界的部署和一系列的SPARQL查询源于一个常见的用例的Web的东西。
2014-02-28 cs.DB cs.DC