【24h】

Efficient Detection of Empty-Result Queries

机译:高效检测空结果查询

获取原文
获取原文并翻译 | 示例

摘要

Frequently encountered in query processing, empty query results usually do not provide users with much useful information. Yet, users might still have to wait for a long time before they disappointingly realize that their results are empty. To significantly reduce such unfavorable delays, in this paper, we propose a novel method to quickly detect, without actual execution, those queries that will return empty results. Our key idea is to remember and reuse the results from previously-executed, empty-result queries. These results are stored in the form of so-called atomic query parts so that the (partial) results from multiple queries can be combined together to handle a new query without incurring much overhead. To increase our chance of detecting empty-result queries with only a limited storage, our method (1) stores the most "valuable" information about empty-result queries, (2) removes redundant information among different empty-result queries, (3) continuously updates the stored information to adapt to the current query pattern, and (4) utilizes a set of special properties of empty results. We evaluate the efficiency of our method through a theoretical analysis and an initial implementation in PostgreSQL. The results show that our method has low overhead and can often successfully avoid executing empty-result queries.
机译:在查询处理中经常遇到的是,空查询结果通常不会为用户提供很多有用的信息。但是,用户可能仍需要等待很长时间才能失望地意识到自己的结果是空的。为了显着减少这种不利的延迟,在本文中,我们提出了一种新颖的方法来快速检测那些没有返回结果的查询,而无需实际执行。我们的主要思想是记住并重用以前执行的空结果查询的结果。这些结果以所谓的原子查询部分的形式存储,以便可以将多个查询的(部分)结果组合在一起以处理新查询,而不会产生太多开销。为了增加仅用有限的存储空间检测空结果查询的机会,我们的方法(1)存储有关空结果查询的最“有价值”的信息,(2)删除不同空结果查询之间的冗余信息,(3)不断更新存储的信息以适应当前的查询模式,并且(4)利用空结果的一组特殊属性。我们通过理论分析和PostgreSQL的初始实现来评估我们方法的效率。结果表明,我们的方法开销较低,并且通常可以成功地避免执行空结果查询。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号