Объектно-ориентированный подход к разработке моделей данных

Аннотация

Современное понимание объектно-ориентированного подхода концентрируется на одной из основных проблем программирования – его автоматизации. В этом направлении достигнуто много важных и практически полезных результатов. Разработаны методы создания объектных библиотек и технологии программирования, существенно облегчающие разработку программного обеспечения. Особенно это проявляется в разработке WEB-приложений. Технология MVC позволила повысить эффективность разработки программ, связывающих удаленные базы данных с клиентскими приложениями. Однако этой и аналогичным ей технологиям присущ один существенный недостаток, проявляющийся в том, что время получения данных их базы часто не удовлетворяет требованиям как разработчика, так и пользователя. На протяжении длительного времени в интернете постоянно ведутся дискуссии на эту тему. Предлагаются различные методы ускорения обращений к БД, которые, как правило, усложняют программирование и представляют собой искусственные приемы, выходящие за рамки основной технологии, применимые при решении частных задач и требующие существенной переработки в каждом конкретном случае.
В статье предполагается, что причина возникновения этих проблем кроется в том, что в программистском сообществе укрепилось мнение, суть которого состоит в том, что реляционная модель данных, служащая основой большинства современных СУБД, не имеет ничего общего с объектно-ориентированной парадигмой. Поэтому разработчики технологий программирования используют промежуточную технологию, называемую объектно-реляционным отображением (ORM), которая, по их мнению, должна связать необъектную БД и объектную программу, обеспечивающую связь клиентского приложения с базой данных.
На самом деле, любой способ организации систем баз данных полностью соответствует объектно-ориентированной парадигме.
Исходя из этих посылок в статье рассматривается объектный метод разработки моделей данных. Для этой цели формулируются свойства моделей данных, необходимые для того, чтобы они были объектными и обеспечивали высокую производительность программ, реализующих обработку данных на их основе. Вводится понятие абстрактной алгебраической машины, которая представляет собой двухосновную алгебраическую систему. Приведены примеры, иллюстрирующие применение абстрактной алгебраической машины для решения различных задач. Рассмотрена возможность и предложен метод для построения алгебраических систем для сложных структур данных, а именно, кортежей, которые могут рассматриваться как элементы таких агрегатов данных как многомерные матрицы, отношения, файлы.
В заключении сделан вывод о том, что предложенный подход позволяет доказать соответствие различных моделей данных, что, в свою очередь, дает возможность эффективной реализации параллельной обработки различных БД на программно-аппаратных комплексах, архитектура которых основана на многомерно-матричной модели вычислений.

Сведения об авторах

Evgenii Petrovich Emelchenkov, Смоленский государственный университет

заведующий кафедрой информатики, физико-математический факультет, кандидат физико-математических наук, доцент

Victor Iosifovich Munerman, Смоленский государственный университет

доцент кафедры информатики, физико-математический факультет, кандидат технических наук, доцент

Daniel Victorovich Munerman, Смоленский государственный университет

лаборант-стажер кафедры информатики, физико-математический факультет

Tatyana Arkadyevna Samoilova, Смоленский государственный университет

доцент кафедры информатики, физико-математический факультет, кандидат технических наук, доцент

Литература

[1] Munerman V., Munerman D. Realization of Distributed Data Processing on the Basis of Container Technology. In: 2019 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (EIConRus). Saint Petersburg and Moscow, Russia; 2019. p. 1740-1744. (In Eng.) DOI: https://doi.org/10.1109/EIConRus.2019.8656766
[2] Kuznetsov S.D. Osnovy baz dannyh [Database Basics]. INTUIT.ru, Moscow; 2005. Available at: https://www.elibrary.ru/item.asp?id=19589854 (accessed 16.08.2020). (In Russ.)
[3] Garcia-Molina H., Ullman J.D., Widom J. Database Systems: The Complete Book. 1st ed. Prentice Hall; 2001. (In Eng.)
[4] Bagui S. Object-Oriented Databases: Achievements and Challenges. Open Systems.DBMS. 2004; (03). Available at: https://www.osp.ru/os/2004/03/184042 (accessed 16.08.2020). (In Russ.)
[5] Munerman V.I., Munerman D.V. Optimization of Processes and Operations of Mass Data Processing. Sistemy komp'yuternoy matematiki i ikh prilozheniya = Computer Mathematics Systems and Their Applications. 2020; (21):172-178. Available at: https://www.elibrary.ru/item.asp?id=44237972 (accessed 16.08.2020). (In Russ., abstract in Eng.)
[6] Liskov B., Zilles S. Programming with abstract data types. ACM SIGPLAN Notices. 1974; 9(4):50-59. (In Eng.) DOI: https://doi.org/10.1145/942572.807045
[7] Date C.J. An Introduction to Database Systems. 8th ed. Pearson; 2003. (In Eng.)
[8] Munerman V.I., Munerman D.V. Algebraic approach to the construction of software and hardware systems to improve the efficiency of mass data processing. Sovremennye informacionnye tehnologii i IT-obrazovanie = Modern Information Technologies and IT-Education. 2015; 11(2):391-396. Available at: https://www.elibrary.ru/item.asp?id=26167520 (accessed 16.08.2020). (In Russ., abstract in Eng.)
[9] Gluschkow W.M., Zeitlin G.E., Justchenko J.L. Algebra. Sprachen. Programmierung. Akademie-Verlag, Berlin; 1980. (In Eng.)
[10] Munerman V.I. Construction of Hardware-Software Complexes Architecture to Improve Massively Data Processing. Highly available systems. 2014; 10(4):3-16. Available at: https://www.elibrary.ru/item.asp?id=22831892 (accessed 16.08.2020). (In Russ., abstract in Eng.)
[11] Emelchenkov E., Levin N., Munerman V. The Algebraic Approach to Optimization of Development and Operation of Data Base Management Systems. Sistemy i sredstva informatiki = Systems and Means of Informatics. 2009; 19(2):114-137. Available at: https://www.elibrary.ru/item.asp?id=13053911 (accessed 16.08.2020). (In Russ., abstract in Eng.)
[12] Yemelchenkov E.P., Kryukov P.P., Malein Yu.S. On the mathematical tools of the informational and logic support of computer-aided process design systems. Avtomatika i Telemekhanika = Automation and Remote Control. 1990; (4):177-183. (In Russ., abstract in Eng.)
[13] Yemelchenkov Y.P., Tsalenko M.S. Functional dependencies in hierarchical structures of data. In: Thalheim B., Demetrovics J., Gerhardt H.D. (ed.) MFDBS 91. MFDBS 1991. Lecture Notes in Computer Science. 1991; 495:258-275. Springer, Berlin, Heidelberg. (In Eng.) DOI: https://doi.org/10.1007/3-540-54009-1_19
[14] Zakharov V., Kirikova A., Munerman V., Samoilova T. Architecture of Software-Hardware Complex for Searching Images in Database. In: 2019 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (EIConRus). Saint Petersburg and Moscow, Russia; 2019. p. 1735-1739. (In Eng.) DOI: https://doi.org/10.1109/EIConRus.2019.8657241
[15] Baroody A.J., DeWitt D.J. An object-oriented approach to database system implementation. ACM Transactions on Database Systems. 1981; 6(4):576-601. (In Eng.) DOI: https://doi.org/10.1145/319628.319645
[16] Zhao L., Roberts S.A. An Object-Oriented Data Model for Database Modelling, Implementation and Access. The Computer Journal. 1988; 31(2):116-124. (In Eng.) DOI: https://doi.org/10.1093/comjnl/31.2.116
[17] Conrad S., Saake G., Schmitt I., Türker C. Database Design: Object-Oriented versus Relational. In: Kaschek R. (ed.) Entwicklungsmethoden für Informationssysteme und deren Anwendung. Teubner-Reihe Wirtschaftsinformatik. Vieweg+Teubner Verlag; 1999. p. 109-125. (In Eng.) DOI: https://doi.org/10.1007/978-3-322-84795-9_7
[18] Zhang Yu., Wang Sh., Sun Y., Ji G., Phillips P., Dong Z. Binary Structuring Elements Decomposition Based on an Improved Recursive Dilation-Union Model and RSAPSO Method. Mathematical Problems in Engineering. 2014; 2014:272496. (In Eng.) DOI: https://doi.org/10.1155/2014/272496
[19] Shih F.Y., Wu Y.-T. Decomposition of binary morphological structuring elements based on genetic algorithms. Computer Vision and Image Understanding. 2005; 99(2):291-302. (In Eng.) DOI: https://doi.org/10.1016/j.cviu.2005.01.001
[20] Zhang Y., Wu L. Recursive Structure Element Decomposition Using Migration Fitness Scaling Genetic Algorithm. In: Tan Y., Shi Y., Chai Y., Wang G. (ed.) Advances in Swarm Intelligence. ICSI 2011. Lecture Notes in Computer Science. 2011; 6728:514-521. Springer, Berlin, Heidelberg. (In Eng.) DOI: https://doi.org/10.1007/978-3-642-21515-5_61
[21] Yatsenko E.A. Overview of Object-Oriented Paradigm in an Appendix to the Development of Databases. Vestnik NSU. Series: Information Technologies. 2019; 17(3):123-134. (In Russ., abstract in Eng.) DOI: https://doi.org/10.25205/1818-7900-2019-17-3-123-134
[22] Hudson S.E., King R. The Efficient Support of Functionally-Defined Data in Cactis. In: Dittrich K.R., Dayal U., Buchmann A.P. (ed.) On Object-Oriented Database Systems. Topics in Information Systems. Springer, Berlin, Heidelberg; 1991. p. 341-355. (In Eng.) DOI: https://doi.org/10.1007/978-3-642-84374-7_21
[23] Thearle R.W. A Survey Of Object Oriented Database Systems. In: Tagg R., Mabon J. (ed.). Object Management. Routledge; 2019. 8 pp. (In Eng.) DOI: https://doi.org/10.4324/9780429441110
[24] Dietrich S.W., Urban S.D. Fundamentals of Object Databases: Object-Oriented and Object-Relational Design. Synthesis Lectures on Data Management. Morgan & Claypool Publishers; 2010. (In Eng.) DOI: https://doi.org/10.2200/S00315ED1V01Y201012DTM012
[25] Hong S., van den Goor G., Brinkkemper S. A formal approach to the comparison of object-oriented analysis and design methodologies. In: [1993] Proceedings of the Twenty-sixth Hawaii International Conference on System Sciences. Wailea, HI, USA. 1993; 4:689-698. (In Eng.) DOI: https://doi.org/10.1109/HICSS.1993.284253
Опубликована
2020-11-30
Как цитировать
EMELCHENKOV, Evgenii Petrovich et al. Объектно-ориентированный подход к разработке моделей данных. Международный научный журнал «Современные информационные технологии и ИТ-образование», [S.l.], v. 16, n. 3, p. 564-574, nov. 2020. ISSN 2411-1473. Доступно на: <http://sitito.cs.msu.ru/index.php/SITITO/article/view/679>. Дата доступа: 25 sep. 2021 doi: https://doi.org/10.25559/SITITO.16.202003.564-574.
Раздел
Параллельное и распределенное программирование, грид-технологии