多关系数据库中的一致性查询应答

IF 0.8 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS
Dominique Laurent , Nicolas Spyratos
{"title":"多关系数据库中的一致性查询应答","authors":"Dominique Laurent ,&nbsp;Nicolas Spyratos","doi":"10.1016/j.ic.2025.105279","DOIUrl":null,"url":null,"abstract":"<div><div>Traditionally, to verify the consistency of a multi-relation database with respect to a set of functional dependencies, one applies the well-known Chase algorithm, which derives new tuples as long as no conflict with some dependency arises. Therefore, the Chase algorithm uses dependencies both as inference rules and as tools to check consistency. If no conflicts occur, the database is declared consistent else inconsistent. If the database is consistent then query answering proceeds as usual, otherwise extracting consistent information from the inconsistent database is an issue, known as consistent query answering.</div><div>To address this issue, we consider the set <span><math><mi>T</mi></math></span> of all tuples built from constants occurring in the database, and we use set theoretic semantics to characterize tuples in <span><math><mi>T</mi></math></span> in two orthogonal ways: true/false and conflicting/non-conflicting. Calling ‘consistent’ a tuple which is true and non-conflicting, a ‘repair’ is defined to be a maximal subset of true tuples that satisfies the dependencies and in which as many consitent tuples as possible are true. A query <em>Q</em> is of the form <span>select</span> <em>X</em> <span>where</span> <span><math><mi>C</mi><mi>o</mi><mi>n</mi><mi>d</mi><mi>i</mi><mi>t</mi><mi>i</mi><mi>o</mi><mi>n</mi></math></span>, and a tuple <em>x</em> of <span><math><mi>T</mi></math></span> is in the consistent answer of <em>Q</em> if <em>x</em> is in the answer of <em>Q</em> in every repair.</div><div>Our main contributions are: (a) a novel approach to consistent query answering in multi-relation databases; (b) a modified Chase algorithm to compute true/false and conflicting/non-conflicting tuples; (c) for acyclic functional dependencies, a polynomial-time algorithm computing the exact or approximate consistent answers; (d) a detailed discussion comparing our approach with other related approaches.</div></div>","PeriodicalId":54985,"journal":{"name":"Information and Computation","volume":"303 ","pages":"Article 105279"},"PeriodicalIF":0.8000,"publicationDate":"2025-01-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Consistent query answering in multi-relation databases\",\"authors\":\"Dominique Laurent ,&nbsp;Nicolas Spyratos\",\"doi\":\"10.1016/j.ic.2025.105279\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><div>Traditionally, to verify the consistency of a multi-relation database with respect to a set of functional dependencies, one applies the well-known Chase algorithm, which derives new tuples as long as no conflict with some dependency arises. Therefore, the Chase algorithm uses dependencies both as inference rules and as tools to check consistency. If no conflicts occur, the database is declared consistent else inconsistent. If the database is consistent then query answering proceeds as usual, otherwise extracting consistent information from the inconsistent database is an issue, known as consistent query answering.</div><div>To address this issue, we consider the set <span><math><mi>T</mi></math></span> of all tuples built from constants occurring in the database, and we use set theoretic semantics to characterize tuples in <span><math><mi>T</mi></math></span> in two orthogonal ways: true/false and conflicting/non-conflicting. Calling ‘consistent’ a tuple which is true and non-conflicting, a ‘repair’ is defined to be a maximal subset of true tuples that satisfies the dependencies and in which as many consitent tuples as possible are true. A query <em>Q</em> is of the form <span>select</span> <em>X</em> <span>where</span> <span><math><mi>C</mi><mi>o</mi><mi>n</mi><mi>d</mi><mi>i</mi><mi>t</mi><mi>i</mi><mi>o</mi><mi>n</mi></math></span>, and a tuple <em>x</em> of <span><math><mi>T</mi></math></span> is in the consistent answer of <em>Q</em> if <em>x</em> is in the answer of <em>Q</em> in every repair.</div><div>Our main contributions are: (a) a novel approach to consistent query answering in multi-relation databases; (b) a modified Chase algorithm to compute true/false and conflicting/non-conflicting tuples; (c) for acyclic functional dependencies, a polynomial-time algorithm computing the exact or approximate consistent answers; (d) a detailed discussion comparing our approach with other related approaches.</div></div>\",\"PeriodicalId\":54985,\"journal\":{\"name\":\"Information and Computation\",\"volume\":\"303 \",\"pages\":\"Article 105279\"},\"PeriodicalIF\":0.8000,\"publicationDate\":\"2025-01-31\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Information and Computation\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/S089054012500015X\",\"RegionNum\":4,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q3\",\"JCRName\":\"COMPUTER SCIENCE, THEORY & METHODS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Information and Computation","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S089054012500015X","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0

摘要

传统上,为了验证多关系数据库相对于一组功能依赖项的一致性,可以应用著名的Chase算法,只要不与某些依赖项发生冲突,该算法就派生出新的元组。因此,Chase算法使用依赖关系作为推理规则和检查一致性的工具。如果没有冲突发生,则将数据库声明为一致,否则声明为不一致。如果数据库是一致的,那么查询回答照常进行,否则从不一致的数据库中提取一致的信息就是一个问题,称为一致查询回答。为了解决这个问题,我们考虑由数据库中出现的常量构建的所有元组的集合T,并且我们使用集合理论语义以两种正交的方式来表征T中的元组:真/假和冲突/非冲突。将“一致”元组定义为真实且无冲突的元组,“修复”定义为满足依赖关系的真元组的最大子集,其中尽可能多的一致元组为真。查询Q的形式为select X where Condition,如果X在每次修复中都在Q的答案中,则T的元组X在Q的一致答案中。我们的主要贡献有:(a)在多关系数据库中实现一致查询应答的新方法;(b)用于计算真/假和冲突/非冲突元组的改进Chase算法;(c)对于非循环函数依赖,计算精确或近似一致答案的多项式时间算法;(d)详细讨论将我们的方法与其他相关方法进行比较。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Consistent query answering in multi-relation databases
Traditionally, to verify the consistency of a multi-relation database with respect to a set of functional dependencies, one applies the well-known Chase algorithm, which derives new tuples as long as no conflict with some dependency arises. Therefore, the Chase algorithm uses dependencies both as inference rules and as tools to check consistency. If no conflicts occur, the database is declared consistent else inconsistent. If the database is consistent then query answering proceeds as usual, otherwise extracting consistent information from the inconsistent database is an issue, known as consistent query answering.
To address this issue, we consider the set T of all tuples built from constants occurring in the database, and we use set theoretic semantics to characterize tuples in T in two orthogonal ways: true/false and conflicting/non-conflicting. Calling ‘consistent’ a tuple which is true and non-conflicting, a ‘repair’ is defined to be a maximal subset of true tuples that satisfies the dependencies and in which as many consitent tuples as possible are true. A query Q is of the form select X where Condition, and a tuple x of T is in the consistent answer of Q if x is in the answer of Q in every repair.
Our main contributions are: (a) a novel approach to consistent query answering in multi-relation databases; (b) a modified Chase algorithm to compute true/false and conflicting/non-conflicting tuples; (c) for acyclic functional dependencies, a polynomial-time algorithm computing the exact or approximate consistent answers; (d) a detailed discussion comparing our approach with other related approaches.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
Information and Computation
Information and Computation 工程技术-计算机:理论方法
CiteScore
2.30
自引率
0.00%
发文量
119
审稿时长
140 days
期刊介绍: Information and Computation welcomes original papers in all areas of theoretical computer science and computational applications of information theory. Survey articles of exceptional quality will also be considered. Particularly welcome are papers contributing new results in active theoretical areas such as -Biological computation and computational biology- Computational complexity- Computer theorem-proving- Concurrency and distributed process theory- Cryptographic theory- Data base theory- Decision problems in logic- Design and analysis of algorithms- Discrete optimization and mathematical programming- Inductive inference and learning theory- Logic & constraint programming- Program verification & model checking- Probabilistic & Quantum computation- Semantics of programming languages- Symbolic computation, lambda calculus, and rewriting systems- Types and typechecking
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信