Using Program Analysis to Improve Database Applications

Using Program Analysis to Improve Database Applications
复制标题

使用程序分析改进数据库应用程序

DOI:
--
复制
发表时间:
2014
期刊:
IEEE Data Engineering Bulletin
影响因子:
--
通讯作者:
A. Myers
A. Myers
中科院分区:
--
文献类型:
--
作者:
Alvin Cheung;S. Madden;Armando Solar;Owen Arden;A. Myers

文献摘要

被引文献

相似文献

与数据库管理系统(DBMS)互动的应用程序无处不在。此类数据库应用程序通常托管在应用程序服务器上,并通过网络对托管在数据库服务器上的DBM进行许多小型访问,以检索用于处理的数据。几十年来,数据库和编程系统研究社区一直从不同的角度优化此类应用程序:数据库研究人员已经建立了高效的DBMS,并且编程系统研究人员开发了专门的编译器和运行时系统来托管应用程序。但是,相对较少的工作可以通过考虑这些专业系统组合并寻找跨越它们的优化机会来优化数据库应用程序。在本文中,我们强调了三个项目,这些项目通过以整体方式查看编程系统和DBM来优化数据库应用程序。通过仔细重新审视DBMS与应用程序之间的接口,并应用声明性数据库优化和现代程序分析技术的混合,我们表明,在现实世界中,可以加快多个数量级的速度。
Applications that interact with database management systems (DBMSs) are ubiquitous. Such database applications are usually hosted on an application server and perform many small accesses over the network to a DBMS hosted on the database server to retrieve data for processing. For decades, the database and programming systems research communities have worked on optimizing such applications from different perspectives: database researchers have built highly efficient DBMSs, and programming systems researchers have developed specialized compilers and runtime systems for hosting applications. However, there has been relatively little work that optimizes database applications by considering these specialized systems in combination and looking for optimization opportunities that span across them. In this article, we highlight three projects that optimize database applications by looking at both the programming system and the DBMS in a holistic manner. By carefully revisiting the interface between the DBMS and the application, and by applying a mix of declarative database optimization and modern program analysis techniques, we show that a speedup of multiple orders of magnitude is possible in real-world applications.