摘要
流行的隔离级别多版本读已提交 (RC) 牺牲了一些强大的可串行化保证,以换取更高的事务吞吐量。有时,事务工作负载可以在 RC 下安全地执行,从而以较低的 RC 成本获得可串行化。这种工作负载被称为对 RC 具有鲁棒性。先前的研究已经产生了一种可处理的程序,用于确定由事务程序建模为事务模板生成的工作负载对 RC 的鲁棒性。这项工作的一个重要见解是,通过更准确地建模事务程序,我们能够将更大的工作负载集识别为鲁棒的。在这项工作中,我们通过为事务模板扩展功能约束来提高其建模能力,这对于捕获外键等数据依赖关系非常有用。我们表明,加入功能约束可以将更多原本不具有鲁棒性的工作负载识别为鲁棒的。尽管我们确定鲁棒性问题在其最一般的形式下变得不可判定,但我们表明,对功能约束的各种限制会导致可判定甚至可处理的片段,这些片段可用于为现实场景建模和测试对 RC 的鲁棒性。
作者:
- Brecht Vandevoort, UHasselt, Data Science Institute, ACSL, Belgium
- Bas Ketsman, Vrije Universiteit Brussel, Belgium
- Christoph Koch, École Polytechnique Fédérale de Lausanne, Switzerland
- Frank Neven, UHasselt, Data Science Institute, ACSL, Belgium