Implement a Distributed Database to Your Java Application

Implement a Distributed Database to Your Java Application

Implement a Distributed Database to Your Java Application. Interference is a simple Java framework that enables you to run a distributed database service within your Java application.

i.o.cluster, also known as interference open cluster, is a simple Java framework that enables you to launch a distributed database service within your Java application.

Brief Description

i.o.cluster, also known as interference open cluster, is a simple Java framework that enables you to launch a distributed database service within your Java application, using JPA-like interface and annotations for structure mapping and data operations. This software inherits its name from the interference project, within which its mechanisms were developed.

 i.o.cluster is a open source, pure Java software.

The basic unit of the i.o.cluster service is a node – it can be a standalone running service, or a service running within some Java application.

Each i.o.cluster node has own persistent storage and can considered and used as a local database with the following basic features:

  • operates with simple objects (POJOs).
  • uses base JPA annotations (@Table@Column@Transient@Index@GeneratedValue) for object mapping directly to persistent storage.
  • supports transactions.
  • supports SQL queries with READ COMMITTED isolation level.
  • uses persistent indices for fast access to data and increase performance of SQL joins.
  • allows flexible management of in-memory data for stable operation of the node in any ratio of storage size/available memory.

 Each of the nodes includes several mechanisms that ensure its operation:

  • core algorithms (supports structured persistent storage, supports indices, custom serialization, heap management, local and distributed sync processes).
  • SQL and CEP processor.
  • event transport, which is used to exchange messages between nodes, as well as between a node and a client application.

Nodes can be joined into a cluster, at the cluster level with inter-node interactions, we get the following features: 

  • allows you to insert data and run SQL queries from any node included in the cluster.
  • support of horizontal scaling SQL queries.
  • support of transparent cluster-level transactions.
  • support of complex event processing (CEP) and simple streaming SQL.
  • i.o.cluster nodes does not require the launch of any additional coordinators. 

i.o.cluster implements the most simple data management model, which is based on several standard JPA-like methods of the Session object: 

  • persist() - placing an object in a storage.
  • find() - find an object by a unique identifier.
  • execute() - execution of a SQL query.
  • commit() - committing a transaction.
  • rollback() - rollback a transaction.

As well, i.o.cluster software includes a remote client that provides the ability to remotely connect to any of the cluster nodes using internal event transport and execute standard JPA-like commands (persist, find, execute, commit, rollback).

java sql java framework sql queries interference

What is Geek Coin

What is GeekCash, Geek Token

Best Visual Studio Code Themes of 2021

Bootstrap 5 Tutorial - Bootstrap 5 Crash Course for Beginners

Nest.JS Tutorial for Beginners

Hello Vue 3: A First Look at Vue 3 and the Composition API

Introduction to Structured Query Language SQL pdf

SQL stands for Structured Query Language. SQL is a scripting language expected to store, control, and inquiry information put away in social databases. The main manifestation of SQL showed up in 1974, when a gathering in IBM built up the principal model of a social database. The primary business social database was discharged by Relational Software later turning out to be Oracle.

How to Install OpenJDK 11 on CentOS 8

What is OpenJDK? OpenJDk or Open Java Development Kit is a free, open-source framework of the Java Platform, Standard Edition (or Java SE).

7 Test Frameworks To Follow in 2021 for Java/Fullstack Developers

It is time to learn new test frameworks in 2021 to improve your code quality and decrease the time of your testing phase. Let's explore 6 options for devs. 7 Test Frameworks To Follow in 2021 for Java/Fullstack Developers.

Why We Need Collection Framework in Java?

Why We Need Collection Framework in Java? What's special about it? Let's explore it with us now.

Top 10 Popular Java Frameworks Every Developer Should Know in 2021

Top 10 Popular Java Frameworks Every Developer Should Know in 2021. Java frameworks provide users with scores of advantages. Here are some of the significant advantages of Java frameworks listed.