Performance Analysis and Improvement for CRUD Operations in Relational Databases from Java']Java Programs Using JPA, Hibernate, Spring Data JPA

被引:4
作者
Bonteanu, Alexandru Marius [1 ]
Tudose, Catalin [1 ,2 ]
机构
[1] Natl Univ Sci & Technol Politehn Bucharest, Fac Automat Control & Comp, Bucharest 060042, Romania
[2] Luxoft Romania, Bucharest 060042, Romania
来源
APPLIED SCIENCES-BASEL | 2024年 / 14卷 / 07期
关键词
!text type='Java']Java[!/text; relational databases; CRUD operations; !text type='Java']Java[!/text] Persistence API; Hibernate; Spring Data JPA; database performance;
D O I
10.3390/app14072743
中图分类号
O6 [化学];
学科分类号
0703 ;
摘要
The role of databases is to allow for the persistence of data, no matter if they are of the SQL or NoSQL type. In SQL databases, data are structured in a set of tables in the relational database model, grouped in rows and columns. CRUD operations (create, read, update, and delete) are used to manage the information contained in relational databases. Several dialects of the SQL language exist, as well as frameworks for mapping Java classes (models) to a relational database. The question is what we should choose for our Java application, and why? A comparison of the most frequently used relational database management systems, mixed with the most frequently used frameworks should give us some guidance about when to use what. The evaluation is conducted based on the time taken for each CRUD operation to run, from thousands to hundreds of thousands of entries, using the possible combinations in the relational database system and the framework. Aiming to assess and improve the performance, the experiments included the possibility of warming-up the Java Virtual Machine before the execution of queries. Also, the research investigated the time spent using different methods of code to determine the critical regions (bottlenecks). Thus, the conclusions provide a comprehensive overview of the performances of Java applications accessing databases depending on the suite decisions considering the database type, the framework in use, and the type of operation, with clear comparisons between the alternatives, the key findings of the advantages and drawbacks of each of them, and supporting architects and developers in their technological decisions and improving the speed of their programs.
引用
收藏
页数:32
相关论文
共 45 条
  • [1] Hibernate and spring - An analysis of maintainability against performance
    Alejandro Alvarez-Eraso, Danny
    Arango-Isaza, Fernando
    [J]. REVISTA FACULTAD DE INGENIERIA-UNIVERSIDAD DE ANTIOQUIA, 2016, (80): : 97 - 108
  • [2] Priority-Driven Differentiated Performance for NoSQL Database-as-a-Service
    Andreoli, Remo
    Cucinotta, Tommaso
    De Oliveira, Daniel Bristot
    [J]. IEEE TRANSACTIONS ON CLOUD COMPUTING, 2023, 11 (04) : 3469 - 3482
  • [3] Anghel JI, 2022, U POLITEH BUCH SER C, V84, P45
  • [4] [Anonymous], 1993, Relational Database Theory
  • [5] Arnold K., 2005, The Java Programming Language
  • [6] Aspin A., 2022, Querying SQL Server: Run T-SQL Operations, Data Extraction, Data Manipulation, and Custom Queries to Deliver Simplified Analytics
  • [7] Babu C, 2016, 2016 INTERNATIONAL CONFERENCE ON ADVANCES IN COMPUTING, COMMUNICATIONS AND INFORMATICS (ICACCI), P2549, DOI 10.1109/ICACCI.2016.7732441
  • [8] Boicea A., 2012, P 2012 3 INT C EMERG
  • [9] Boicea A., 2010, P ANN DAAAM 2010 21, V21
  • [10] Boicea A, 2009, ANN DAAAM, V20, P1371