学术界忽视了哪些重要的数据系统问题?(2024)

Lobsters Hottest 新闻

摘要

一篇博客文章,总结了荷兰-比利时数据库日的一个小组讨论,该讨论探讨了学术研究常常忽视的实际数据系统问题,例如变长字符串处理、不切实际的基准测试以及网络挑战。

<p><a href="https://lobste.rs/s/xmio29/what_are_important_data_systems_problems">评论</a></p>
查看原文
查看缓存全文

缓存时间: 2026/05/29 09:54

# 数据库研究忽视了哪些重要的数据系统问题? 来源:http://databasearchitects.blogspot.com/2024/12/what-are-important-data-systems.html 去年11月,我有幸参加了荷兰-比利时数据库日(https://cwida.github.io/dbdbd2024/program/),并主持了一场关于数据库研究中常被忽视的实际挑战的专题讨论会。我们的杰出嘉宾包括Allison Lee(Snowflake创始工程师)、Andy Pavlo(CMU教授)和Hannes Mühleisen(DuckDB联合创作者、CWI研究员),与会者也积极参与讨论并分享观点。本文将尝试总结这次讨论,希望能激励年轻(以及心态年轻)的研究者去攻克这些挑战。此外,我还会附上一些论文链接,作为这些研究方向的动机和起点。 多位嘉宾提出的一个重要但研究不足的问题是**变长字符串**的处理。对真实世界分析查询的任何分析都会发现,字符串无处不在(https://www.cs.cit.tum.de/fileadmin/w00cfj/dis/papers/getreal.pdf)。例如,Amazon Redshift最近报告(https://www.vldb.org/pvldb/vol17/p3694-saxena.pdf)称大约50%的列都是字符串。由于字符串通常比数值数据更大,这意味着字符串占据了真实世界数据的绝大多数。处理字符串面临两大挑战。首先,由于字符串变长以及动态分配的时间/空间开销,查询处理通常很慢。其次,针对数据库专用的高效字符串压缩方面的研究少得惊人。鉴于字符串对真实世界查询性能和存储消耗的重要性,这一领域的研究之少令人惊讶(仅有少数例外:https://sigmodrecord.org/publications/sigmodRecord/2103/pdfs/16_och-gubner.pdf、https://15721.courses.cs.cmu.edu/spring2020/papers/09-compression/muller-edbt2014.pdf、https://www.vldb.org/pvldb/vol13/p2649-boncz.pdf)。 Allison强调了一个相关问题:标准基准测试(如TPC-H)过于简单,这或许部分解释了为什么字符串处理研究不足。TPC-H查询很少涉及复杂的字符串处理,也不使用字符串作为连接或聚合键。此外,TPC-H字符串有静态上限,可以当作固定大小对象处理。这回避了变长字符串及其复杂操作的真实挑战。更广泛地说,标准基准测试未能反映真实工作负载,因为它们缺少高级关系运算符(例如窗口函数、CTE)和复杂表达式。要推动有意义的进展,我们可能需要新的、更现实的基准测试。尽管与会者在大多数观点上达成一致,但分布式查询处理是一个特别有趣的讨论话题。Allison指出,许多查询处理论文忽略了分布式处理,这使它们难以被工业系统采用。然而Hannes认为,大多数用户工作负载可以在单机上处理,这应该是公共资助研究的主要关注点。我个人认为单节点和分布式处理都很重要,有足够的空间去应对这两方面的挑战。 虽然数据库研究者常常聚焦于数据库引擎架构,但Andy认为,网络连接处理(https://www.vldb.org/pvldb/vol16/p3335-butrovich.pdf)(例如数据库代理)等周边话题尽管实际重要,却很少受到关注。令人惊讶的是,关于调度数据库工作负载和优化网络栈的研究也有限,尽管通信瓶颈(https://www.cs.cit.tum.de/fileadmin/w00cfj/dis/papers/LookingGlass2_CIDR25.pdf)常常制约高效的OLTP系统。多语句存储过程虽是一种潜在解决方案,但并未被广泛采用,在实践中也无法解决这个问题。我认为,探索如何更好地构建应用与数据库系统之间的接口,存在重要的研究机会。 关于SIGMOD和VLDB等主要数据库会议,一个引人注目的事实是:涉及实际数据库系统问题的论文少之又少。根据我个人经验,我认为这对追求学术和现实世界影响的研究者来说是一个重要机遇。上述问题(以及许多其他问题)的解决方案很可能引起工业界关注并被实际数据库系统采用。此外,随着DuckDB、DataFusion、LeanStore和PostgreSQL等开源系统的可用性,进行系统研究比以往任何时候都更容易。

相似文章

无人测试的系统

Hacker News Top

作者讲述了在巴西联邦系统中发现重大数据漏洞的经历,并讨论了未经测试的AI环境和机器学习中强化学习扩展所带来的日益增长的网络安全风险。

重新思考数据库编程

Hacker News Top

本文探讨了新的视角,挑战了数据库编程中的传统方法,并提出了提高效率和设计的创新建议。