Multi-schema-version data management: data independence in the twenty-first century

Multi-schema-version data management: data independence in the twenty-first century
复制标题

多模式版本数据管理:二十一世纪的数据独立性

DOI:
--
复制
发表时间:
2018
期刊:
The VLDB journal
影响因子:
--
通讯作者:
Wolfgang Lehner
Wolfgang Lehner
中科院分区:
--
文献类型:
--
作者:
K. Herrmann;H. Voigt;T. Pedersen;Wolfgang Lehner

文献摘要

被引文献

相似文献

敏捷软件开发允许我们不断地发展和运行软件系统。然而,这在数据库中是不可能的,因为已建立的方法非常昂贵,容易出错,并且远远不够敏捷。我们提出了InVerDa,多模式版本的数据库管理系统(MSVDB)的敏捷数据库开发。MSVDB在一个数据库中实现了共存的模式版本,其中每个模式版本的行为都像常规的单模式数据库,并且写入操作在模式版本之间传播。开发人员使用关系完整的双向数据库演化语言(BiDEL)轻松地将现有模式版本演化为新版本。与手写SQL脚本相比,BiDEL脚本更健壮,数量级更短,并且仅引起很小的性能开销。我们正式保证数据独立性:无论共存模式版本的数据如何物理物化,每个模式版本都保证像常规数据库一样运行。由于所选择的物理物化在很大程度上决定了整体性能,因此我们为数据库管理员配备了一个顾问,该顾问为当前工作负载提出了优化的物化,与原始解决方案相比,它可以将性能提高几个数量级。据我们所知,我们是第一个促进生产数据库敏捷发展的公司,完全支持共存的模式版本,并正式保证数据独立性。
Agile software development allows us to continuously evolve and run a software system. However, this is not possible in databases, as established methods are very expensive, error-prone, and far from agile. We present InVerDa, a multi-schema-version database management system (MSVDB) for agile database development. MSVDBs realize co-existing schema versions within one database, where each schema version behaves like a regular single-schema database and write operations are propagated between schema versions. Developers use a relationally complete and bidirectional database evolution language (BiDEL) to easily evolve existing schema versions to new ones. BiDEL scripts are more robust, orders of magnitude shorter, and cause only a small performance overhead compared to handwritten SQL scripts. We formally guarantee data independence: no matter how the data of the co-existing schema versions is physically materialized, each schema version is guaranteed to behave like a regular database. Since, the chosen physical materialization significantly determines the overall performance, we equip database administrators with an advisor that proposes an optimized materialization for the current workload, which can improve the performance by orders of magnitude compared to naïve solutions. To our best knowledge, we are the first to facilitate agile evolution of production databases with full support of co-existing schema versions and formally guaranteed data independence.