Обновление многотабличных представлений на основе коммутативных преобразований базы данных

Владимир Сергеевич Зыкин, Михаил Леонидович Цымблер

Аннотация


В современных технологиях реляционных баз данных механизм представлений (view) реализует внешний уровень архитектуры ANSI--SPARC, скрывая детали концептуальной структуры базы данных от конечных пользователей. Однако использование данного механизма сопряжено с необходимостью решения задачи корректного обновления представлений: СУБД должна обеспечить корректное выполнение операций вставки, удаления или обновления кортежа в представлении над соответствующими базовыми отношениями данного представления. Для решения указанной задачи в стандарте SQL вводится жесткое ограничение: модифицируемому кортежу представления может соответствовать только один кортеж в базовом отношении. Триггеры, реализующие обновление представлений, обладают рядом недостатков: необходимость создания триггера для каждого представления базы данных, непредсказуемый порядок запуска триггеров, относящихся к одному представлению и др. В статье рассматривается подход к решению данной задачи на основе применения коммутативных преобразований базы данных. При этом не накладывается ограничение единственности кортежа базового отношения, соответствующего обновляемой записи в представлении. Описан Сопроцессор СУБД, который размещается на клиентском компьютере и обеспечивает коммутативные преобразования в отношениях базы данных, хранимых на сервере. Сопроцессор выполняет формирование текста транзакции, реализующей коммутативные преобразования, и осуществляет запуск этой транзакции на сервере. Представлена реализация сопроцессора для свободной СУБД PostgreSQL. Проведены вычислительные эксперименты, подтверждающие эффективность предложенного подхода в приложениях классов OLAP и OLTP.


Ключевые слова


коммутативные преобразования; реляционная алгебра; многотабличные представления; обновление представлений; реляционные СУБД; триггеры

Полный текст:

PDF

Литература


Zykin V.S. Multi-table Data View Editor: Certificate of State Registration of Computer Programs - No. 2018661249; registration date: 04.09.2018; Copyright holder: Omsk State Technical University.

Zykin V.S. Referential Integrity of Data in Corporate Information Systems, Informatics and Applications. 2015. vol. 9. no 3. pp. 119-127.

Zykin S.V., Zykin V.S. Commutative Conversion in the Database when Editing a Multitable Query. Information Technologies. 2018. vol. 24, no. 5. pp. 330-338. DOI: 10.17587/it.24.330-338.

Bancilhon F., Spyratos N. Update Semantics of Relational Views. ACM Trans. Database Syst. 1981. vol. 6, no. 4. pp. 557-575. DOI: 10.1145/319628.319634.

Bertossi L., Salimi B. Causes for Query Answers from Databases: Datalog Abduction, View-updates, and Integrity Constraints. Int. J. Approx. Reason. 2017. vol. 90. pp. 226-252. DOI: 10.1016/j.ijar.2017.07.010.

Dayal U., Bernstein P.A. On the Correct Translation of Update Operations on Relational Views. ACM Trans. Database Syst. 1982. vol. 7, no. 3. pp. 381-416. DOI: 10.1145/319732.319740.

Garcia-Molina H., Ullman J.D., Widom J. Database System Implementation. Prentice Hall, 2000. 653 p.

Ghandeharizadeh S., Yap J. SQL Query to Trigger Translation: A Novel Transparent Consistency Technique for Cache Augmented SQL Systems. Proceedings of the 28th International Workshop on Database and Expert Systems Applications, DEXA 2017, August 28-31, 2017, Lyon, France. pp. 37-41. DOI: 10.1109/DEXA.2017.24.

Gottlob G., Paolini P., Zicari R. Properties and Update Semantics of Consistent Views // ACM Trans. Database Syst. 1988. vol. 13, no. 4. p. 486-524. DOI: 10.1145/49346.50068.

Hayamizu Y., Kawamichi R., Goda K., Kitsuregawa M. Benchmarking and Performance Analysis of Event Sequence Queries on Relational Database. Proceedings of the 10th (TPC) Technology Conference Performance Evaluation and Benchmarking for the Era of Artificial Intelligence, TPCTC, August 27-31, 2018, Rio de Janeiro, Brazil. pp. 110-125. DOI: 10.1007/978-3-030-11404-6_9.

Interim Report: ANSI/X3/SPARC Study Group on Data Base Management Systems. FDT - Bulletin of ACM SIGMOD. 1975. vol. 7, no. 2. pp. 1-140.

ISO/IEC 9075:1987 Information technology. Database languages. SQL. Washington. 1987.

ISO/IEC 9075-11:2016 Information technology. Database languages. SQL. Part 11: Information and Definition Schemas (SQL/Schemata). Washington. 2016. 327 p.

Keller A. Algorithms for Translating View Updates to Database Updates for Views Involving Selections, Projections and Joins. Proceedings of the 4th ACM SIGACT-SIGMOD Symposium on Principles of Database Systems, PODS'85, March 25-27, 1985, Portland, USA. ACM, 1985. pp. 154-163. DOI: 10.1145/325405.325423.

Langerak R. View Updates in Relational Databases with an Independent Scheme. ACM Trans. Database Syst. 1990. vol. 15, no. 1. pp. 40-66. DOI: 10.1145/77643.77645.

Lechtenborger J. The Impact of the Constant Complement Approach Towards View Updating. Proceedings of the 22nd ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems, PODS'03, June 9-11, 2003, San Diego, CA, USA. ACM, 2003. pp. 49-55. DOI: 10.1145/773153.773159.

Li Y., Levine C. Extending TPC-E to Measure Availability in Database Systems. Proceedings of the 10th Technology Conference Measurement and Characterization, August 29 - September 3, 2011, Seattle, WA, USA. pp. 111-122. DOI: 10.1007/978-3-642-32627-1_8.

Masunaga Y. A Relational Database View Update Translation Mechanism. Proceedings of the 10th International Conference on Very Large Data Bases, VLDB'84, August 27-31, 1984, Singapore. pp. 309-320.

Mosin S.V., Zykin S.V. Truth Space Method for Caching Database Queries. Modeling and Analysis of Information Systems. 2015. vol. 22, no 2. pp. 248-258.

Stonebraker M. Triggers and Inference In Database Systems. On Knowledge Base Management Systems (Islamorada). 1985. pp. 297-314.




DOI: http://dx.doi.org/10.14529/cmse190206