Navigation:  Introduction >

Advantages of the NexusDB engine

Previous pageReturn to chapter overviewNext page

The NexusDB has been engineered to be faster, more stable and have a higher degree of flexibility than any other comparable database engine on the market

 

Engineered to be faster

 

NexusDB's performance is outstanding for several reasons:

 

The core engine is fully threaded and takes advantage of multi processor systems.
A custom memory manager that has been carefully crafted to allocate memory without contention on SMP systems and to minimize memory fragmentation.
Interchangeable transports that work with a variety of protocols to ensure that the communication between client and server works as fast as possible in embedded or network server deployments.
An innovative and elegant implementation within the buffer manager ensures that block reads and writes are done correctly and efficiently.

 

These reasons all add up to real performance that can be measured. Benchmarks clearly show that the NexusDB engine out-performs and out-scales the competition.

 

Scalability

 

The NexusDB engine is very scalable due to its elegant design. Every line of code has been tuned for optimal scalability and performance.

 

As your database usage grows in the future, the NexusDB engine demonstrates terrific scalability in these areas:

 

User connections - capable of hundreds of concurrent connections
Massive Data storage - only limited by your OS and disk space; supports terabytes (might be limited by your OS) of data comfortably
Record capacity - store millions and millions of records
Multi-processor Server Systems?
 NexusDB utilizes Symmetric Multi-Processor systems completely.

 The overall affect is a higher server performance - work gets done at the server in a shorter period of time.        

 Throughput is maximized due to three reasons:

         Fully threaded core.

         New memory manager improves allocation/deallocation and reduces memory fragmentation.

         Designed to minimize single-threaded serialization points.

 

Security

 

Multi level security

 

The NexusDB engine implements security on many levels. There are three main areas of that are secured: data files, transports and user access.

 

Data Encryption

 

The NexusDB engine supports any number of encryption sub-engines to encrypt your data files. Different algorithms can be implemented within each sub-engine to find the best balance of encryption strength and speed.

 

Transport encryption

 

If required data transport can be encrypted.

 

User access

 

User Access is controlled by three security tokens within the NexusDB engine: Admin, read and write. Each user can have any combination of these tokens within the server. The Admin token enables users to restructure databases, modify aliases and general administrative tasks. The write token grants permission for the user to add data to tables. The read token permits viewing of the data. The combination of the write and read tokens enable modification to existing data within the tables.

 

Stability

 

Transactions are built into the core of the NexusDB engine. Every (data manipulating) interaction with the engine occurs within the context of a transaction. Using transactions maintains the integrity of the data within the engine and allows multiple changes to be committed in a unified operation or, in the event of an error or exceptional condition, rollback all the changes cleanly.

 

Snapshot transactions

 

The NexusDB engine has taken transactions to the next level with Snapshot transactions. A NexusDB engine exclusive, Snapshot transactions enable a consistent view of the database without locks of any kind. It works by creating a snapshot of the buffer blocks when subsequent transactions modify data. Using Snapshot transactions, writing does not block reading and reading does not block writing. Maximum concurrency and throughput is achieved without compromising data consistency. Snapshot transactions are used in SQL SELECT statements so the benefits a gained automatically.

 

Nested transactions

 

The NexusDB engine also supports nested transactions, this allows complex data manipulation logic that requires several alternative paths.

 

Fail-safe needed?

 

In addition, the NexusDB engine supports a complete implementation of the two-phase commit protocol to ensure data integrity under the most rigorous conditions. Using the optional fail-safe transactions, the NexusDB engine writes to a journal file first and then updates the core database. This means that even if you pull the plug, your data will be brought back to a consistent state: reconstructed from the journal or rolled back to the previous values.