NuoDB At a Glance
NuoDB is a distributed cloud native database management system with a rich SQL implementation and full support for (ACID) compliant transactions. NuoDB provides:
-
Scale-out Performance
-
Continuous Availability
-
ANSI-Standard SQL
-
ACID compliance
-
Region Distribution
-
Multi-Tenancy
As a distributed system, a NuoDB installation consists of a collection of hosts, called a domain, that have been provisioned to work together to support one or more NuoDB databases. One or more instances of the following kinds of NuoDB processes are running on the hosts in the domain:
-
Admin Process (AP): Manages domain quorum operations, database processes (SMs and TEs), and TE assignment for each database connection request. The AP is independent of any particular database in the NuoDB system. A domain comprises one or more APs. There is never more than one AP on a host.
-
Transaction Engine (TE): Provides application access to a single NuoDB database by processing SQL commands, caching data, and coordinating transactions with other TEs and SMs.
-
Storage Manager (SM): Reads and writes transactional data to and from disk.
Applications use JDBC or other interfaces to connect to TEs. TEs and SMs communicate with each other as required to process transactions and persist data to the database.
When a client connects to a NuoDB database, the steps in the process are as follows:
-
An application that issues a connection to the database first connects to an AP. The AP communicates with all APs in the domain and has a record of which TEs are available. It uses that information, along with any optional load balancer configuration settings to choose the best TE for each database connection request.
-
The AP communicates to the client the TE that it has designated for its connection. After that, the application no longer communicates with the AP.
-
The client connects directly to that TE.
A domain may consist of one or more databases, and each database may consist of multiple TEs and multiple SMs configured as necessary to support scalability, availability, or redundancy requirements. A minimal deployment of NuoDB database consists of a single TE and single SM. A minimally-redundant database consists of two TEs and two SMs, each TE and SM pair running on separate hosts.
Interested in learning more?