3

When the Database Flirts with Java

 8 months ago
source link: https://devm.io/java/java-database-services
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Suitable for daily use or not?

When the Database Flirts with Java


Everyone shows their best side while flirting. But the litmus test only comes after the initial spark. Then it remains to be seen if the full-bodied promises are actually kept in practice. For instance, whether a database is actually capable of making Java developers and administrators’ work easier, more refined, and nicer.

Java applications run on premises as well as the cloud and increasingly, in multi- and hybrid cloud scenarios. Therefore, the first prerequisite for a database here is having corresponding general capabilities like high performance, horizontal and vertical scalability during operation, and availability as a managed service. Java is basically database agnostic, as long as a suitable driver for the JDBC interface or a corresponding SDK is available. This can be a relational SQL, a document-oriented NoSQL, or even a cloud database from your hyperscaler of choice. The corresponding Java client will allow applications to access the database. In terms of high performance and flexibility, it’s helpful if it also provides both synchronous and asynchronous APIs.

But the real value of a database for Java development can only be seen in three elementary parameters. First, the quantity and quality of the services it provides. Second, ease of handling is important. And third, how fast it helps Java applications is decisive. In these respects, various database types differ considerably as well as the functional scopes of databases of the same type (Fig. 1).

Fig.1

Fig. 1: Overview of a database’s most important data services. Image source: Couchbase

An ideal starting point for Java developers is if all the necessary services are provided by a single database. Since only one API is required, the complexity is reduced, work is easier, and the number of possible error sources is reduced. The amount of solutions in question is also reduced to a highly manageable number of suitable database platforms. For many reasons, the more modern NoSQL databases are considered especially suitable for developing Java applications. They’re agile and flexible, highly scalable, and support microservices. Therefore, the following considerations focus on how this type of database supports the development and operation of Java applications.

Data services

Data Services are the basis for data management in Java. They manage access to all available data in working memory or on storage media. In order to accelerate data access, and therefore the application itself, in-memory cache can...


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK