ДОСЛІДЖЕННЯ МЕТОДІВ ПРОГРАМНОЇ РЕАЛІЗАЦІЇ COSMOS DB API НА ПЛАТФОРМІ .NET

Автор(и)

DOI:

https://doi.org/10.30837/ITSSI.2023.24.118

Ключові слова:

база даних; Cosmos DB API; MongoDB; .NET; NoSQL

Анотація

Значна кількість сучасних розробників використовують платформу .NET для створення програм, що працюють із базами даних. Cosmos DB стає все більш популярним вибором як NoSQL-сховище для баз даних. Cosmos DB – гнучка й масштабована система, і правильний вибір відповідного АРІ в програмній реалізації може значно вплинути на продуктивність самих програм. Cosmos DB надає різні API для роботи з усіма типами баз даних. Кожен із цих API може бути використаний за допомогою різних методів програмної реалізації. Предметом дослідження є програмні реалізації на платформі .NET під різні Cosmos DB API. Під час обрання найбільш підхожого Cosmos DB API на платформі .NET розробникам може допомогти не тільки документація, але й результати експериментальних досліджень АРІ, що дасть змогу покращити якість коду й продуктивність самих систем. Мета роботи – підвищити ефективність програмних розробок на платформі .NET, що використовують Cosmos DB API, шляхом створення рекомендацій щодо обрання методів програмної реалізації API на основі результатів експериментального дослідження. Завдання статті: дослідити та порівняти методи програмної реалізації Cosmos DB API шляхом вивчення продуктивності різних типів запитів на цих програмних рішеннях; проаналізувати здобуті результати та розробити рекомендації з використання методів. Методи: багатокритеріальний аналіз Cosmos DB API, логічне моделювання даних, дослідження. Результати: розроблено програмні рішення на основі використання CosmosClient, Entity Framework Core для Cosmos DB API for NoSQL та на основі MongoClient для Cosmos DB API for MongoDB; проведено серію експериментів і вимірювань показників продуктивності для кожного з програмних рішень; проаналізовано здобуті результати та запропоновано рекомендації з використання розглянутих методів програмної реалізацій Cosmos DB API на платформі .NET. Висновки. Загалом вибір програмного підходу залежить від конкретного завдання, але дослідження показали, що Cosmos DB API for NoSQL із застосуванням CosmosClient – це найкращий вибір для незначних проєктів, а з використанням Entity Framework Core Cosmos підходить для проєктів з більшими обсягами інформації та складними запитами. Якщо в проєкті застосовується MongoDB, то відповідне рішення з використанням MongoClient є кращим варіантом, ніж Cosmos DB API for NoSQL.

Біографії авторів

Оксана Мазурова, Харківський національний університет радіоелектроніки

кандидат технічних наук, доцент, доцент кафедри програмної інженерії

Микола Андрущенко, Харківський національний університет радіоелектроніки

магістр кафедри програмної інженерії

Марія Широкопетлєва, Харківський національний університет радіоелектроніки

старший викладач кафедри програмної інженерії

Посилання

Список літератури

Filatov V., Semenets V. Methods for Synthesis of Relational Data Model in Information Systems Reengineering Problems. International Scientific-Practical Conference Problems of Infocommunications. Science and Technology (PIC S&T). IEEE. 2018. URL: https://www.researchgate.net/publication/331418031_Methods_for_Synthesis_of_Relational_Data_Model_in_Information_Systems_Reengineering_Problems

Smelyakov K., Prokopenko O., Chupryna A. Object-Based Image Comparison Algorithm Development for Data Storage Management Systems. CEUR Workshop Proceedings, 2022. № 3171. Р. 1251–1266. URL: https://ceur-ws.org/Vol-3171/paper92.pdf

Mazurova, O., Naboka, A., Shirokopetleva, M. Research of ACID transaction implementation methods for distributed databases using replication technology. Innovative technologies and scientific solutions for industries, № 2 (16). 2021. P. 19–31. DOI: 10.30837/ITSSI.2021.16.019

Mazurova O., Syvolovskyi I., Syvolovska O. NOSQL database logic design methods for MONGODB and NEO4J. Innovative technologies and scientific solutions for industries, № 2 (20), 2022. P. 52–63. DOI: 10.30837/ITSSI.2022.20.052.

Sahatqija K., Ajdari J., Zenuni X., Raufi B., Ismaili F. Comparison between relational and NOSQL databases. 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO). 2018. P. 216–221. DOI: https://doi.org/10.23919/mipro.2018.8400041

Maran M., Paniavin N., Poliushkin I. Alternative Approaches to Data Storing and Processing. V International Conference on Information Technologies in Engineering Education (Inforino). 2020. Р. 1–4. DOI: https://doi.org/10.1109/inforino48376.2020.9111708

Falatiuk H., Shirokopetleva M., Dudar Z. Investigation of Architecture and Technology Stack for e-Archive System. IEEE International Scientific-Practical Conference Problems of Infocommunications, Science and Technology (PIC S&T). 2019. P. 229–235. DOI: 10.1109/PICST47496.2019.9061407

Gomes C., Borba E., Tavares E., Junior M. N. de O. Performability Model for Assessing NoSQL DBMS Consistency. IEEE International Systems Conference (SysCon). 2019. DOI: https://doi.org/10.1109/syscon.2019.8836757

Kuzochkina A., Shirokopetleva M., Dudar Z. Analyzing and Comparison of NoSQL DBMS. International Scientific-Practical Conference on Problems of Infocommunications Science and Technology (PIC S&T). 2018. Р. 560–564. DOI: 10.1109/INFOCOMMST.2018.8632133

Bai Y. SQL Server Database Programming with Visual Basic.NET: Concepts, Designs and Implementations. 2020. 688 p, URL: https://www.wiley.com/en-ie/SQL+Server+Database+Programming+with+Visual+Basic+NET:+Concepts,+Designs+and+Implementations-p-9781119608608

Renée, M. P., Teate SQL for Data Scientists: A Beginner's Guide for Building Datasets for Analysis. 2021. 288 p, URL: https://www.wiley.com/en-us/SQL+for+Data+Scientists%3A+A+Beginner%27s+Guide+for+Building+Datasets+for+Analysis-p-9781119669364

Peretiatko M., Shirokopetleva M., Lesna N. Research of methods to support data migration between relational and document data storage models. Innovative technologies and scientific solutions for industries. № 2 (20). 2022. P. 64–74. DOI: 10.30837/ITSSI.2022.20.064

Palanisamy S., SuvithaVani P. A survey on RDBMS and NoSQL Databases MySQL vs MongoDB. Conference: 2020 International Conference on Computer Communication and Informatics (ICCCI). 2020. URL: https://www.researchgate.net/publication/341812161_A_survey_on_RDBMS_and_NoSQL_Databases_MySQL_vs_MongoDB

Ponniah P. Database Design and Development: An Essential Guide for IT Professionals. 2003. 768 p. URL: http://www.sbu.unicamp.br/bases-nfs/b131/lista_131_4.xlsx

Gruzdo I., Kyrychenko I., Tereshchenko G., Shanidze N. Metrics applicable for evaluating software at the design stage. 5th International Conference on Computational Linguistics and In-telligent Systems (COLINS-2021). Kharkiv, Ukraine,April 22–23, 2021. CEUR Workshop Proceedings, 2021, Volume I. Р. 916–936. URL: https://ceur-ws.org/Vol-2870/paper69.pdf

Perkins B., Panek W. Microsoft Azure Architect Technologies and Design Complete Study Guide: Exams AZ-303 and AZ-304. 2020. 768p. URL: https://www.wiley.com/en-ba/Microsoft+Azure+Architect+Technologies+and+Design+Complete+Study+Guide:+Exams+AZ+303+and+AZ+304-p-9781119559580

References

Filatov, V., Semenets, V. (2018), "Methods for Synthesis of Relational Data Model in Information Systems Reengineering Problems", International Scientific-Practical Conference Problems of Infocommunications. Science and Technology (PIC S&T), IEEE, available at: https://www.researchgate.net/publication/331418031_Methods_for_Synthesis_of_Relational_Data_Model_in_Information_Systems_Reengineering_Problems

Smelyakov, K., Prokopenko, O., Chupryna, A. (2022), "Object-Based Image Comparison Algorithm Development for Data Storage Management Systems", CEUR Workshop Proceedings, No. 3171, P. 1251–1266, available at: https://ceur-ws.org/Vol-3171/paper92.pdf

Mazurova, O., Naboka, A., Shirokopetleva, M. (2021) "Research of ACID transaction implementation methods for distributed databases using replication technology", Innovative technologies and scientific solutions for industries, No. 2 (16), Р. 19–31. DOI: 10.30837/ITSSI.2021.16.019

Mazurova, O., Syvolovskyi, I., Syvolovska, O. (2022) "NOSQL database logic design methods for MONGODB and NEO4J", Innovative technologies and scientific solutions for industries, No. 2 (20), Р. 52–63. DOI: 10.30837/ITSSI.2022.20.052

Sahatqija, K., Ajdari, J., Zenuni, X., Raufi, B., Ismaili, F., (2018), "Comparison between relational and NOSQL databases", 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), P. 216–221. DOI: https://doi.org/10.23919/mipro.2018.8400041

Maran, M., Paniavin, N., Poliushkin, I. (2020), "Alternative Approaches to Data Storing and Processing", V International Conference on Information Technologies in Engineering Education (Inforino), Р. 1–4. DOI: https://doi.org/10.1109/inforino48376.2020.9111708

Falatiuk, H., Shirokopetleva, M., Dudar, Z. (2019), "Investigation of Architecture and Technology Stack for e-Archive System", IEEE International Scientific-Practical Conference Problems of Infocommunications, Science and Technology (PIC S&T), P. 229–235. DOI: 10.1109/PICST47496.2019.9061407

Gomes, C., Borba, E., Tavares, E., Junior, M. N. de O. (2019), "Performability Model for Assessing NoSQL DBMS Consistency", IEEE International Systems Conference (SysCon), DOI: https://doi.org/10.1109/syscon.2019.8836757

Kuzochkina, A., Shirokopetleva, M., Dudar, Z. (2018), "Analyzing and Comparison of NoSQL DBMS", International Scientific-Practical Conference on Problems of Infocommunications Science and Technology PIC S&T, P. 560–564. DOI: 10.1109/INFOCOMMST.2018.8632133

Bai, Y., (2020), "SQL Server Database Programming with Visual Basic.NET: Concepts, Designs and Implementations". 688 p, available at: https://www.wiley.com/en-ie/SQL+Server+Database+Programming+with+Visual+Basic+NET:+Concepts,+Designs+and+Implementations-p-9781119608608

Renée, M. (2021), Teate SQL for Data Scientists: A Beginner's Guide for Building Datasets for Analysis. 288 p. available at: https://www.wiley.com/enus/SQL+for+Data+Scientists%3A+A+Beginner%27s+Guide+for+Building+Datasets+for+Analysis-p-9781119669364

Peretiatko, M., Shirokopetleva, M., Lesna, N. (2022) "Research of methods to support data migration between relational and document data storage models", Innovative technologies and scientific solutions for industries, No. 2 (20), Р. 64–74. DOI: 10.30837/ITSSI.2022.20.064

Palanisamy, S., SuvithaVani, P. (2020), "A survey on RDBMS and NoSQL Databases MySQL vs MongoDB", International Conference on Computer Communication and Informatics (ICCCI), available at: https://www.researchgate.net/publication/341812161_A_survey_on_RDBMS_and_NoSQL_Databases_MySQL_vs_MongoDB

Ponniah, P. (2003), Database Design and Development: An Essential Guide for IT Professionals. 768 p, available at: http://www.sbu.unicamp.br/bases-nfs/b131/lista_131_4.xlsx

Gruzdo, I., Kyrychenko, I., Tereshchenko, G., Shanidze, N. (2021), "Metrics applicable for evaluating software at the design stage", 5th International Conference on Computational Linguistics and In-telligent Systems (COLINS-2021), Kharkiv, Ukraine, April 22–23, CEUR Workshop Proceedings, 2021, Volume I, P. 916–936, available at: https://ceur-ws.org/Vol-2870/paper69.pdf

Perkins, B., Panek, W. (2020), "Microsoft Azure Architect Technologies and Design Complete Study Guide: Exams AZ-303 and AZ-304". 768p. available at: https://www.wiley.com/enba/Microsoft+Azure+Architect+Technologies+and+Design+Complete+Study+Guide:+Exams+AZ+303+and+AZ+304-p-9781119559580

##submission.downloads##

Опубліковано

2023-11-13

Як цитувати

Мазурова, О., Андрущенко, М., & Широкопетлєва, М. (2023). ДОСЛІДЖЕННЯ МЕТОДІВ ПРОГРАМНОЇ РЕАЛІЗАЦІЇ COSMOS DB API НА ПЛАТФОРМІ .NET. СУЧАСНИЙ СТАН НАУКОВИХ ДОСЛІДЖЕНЬ ТА ТЕХНОЛОГІЙ В ПРОМИСЛОВОСТІ, (2 (24), 118–130. https://doi.org/10.30837/ITSSI.2023.24.118