Who are your largest customers?
Beyond our strategic customer / investor relationship with Dassault Systemes, the second largest software vendor in Europe, NuoDB customers include a growing number of enterprises like AutoZone as well as smaller size companies such as Zombie Studies, Platform 28, and Dropship Commerce, who have adopted the NuoDB distributed database.
In addition, NuoDB has built a very successful freemium model for the free download, evaluation, and deployment limited to 2-hosts per NuoDB Domain. To date, over 14,000 unique visitors have downloaded the free version, resulting in hundreds of deployments of NuoDB.
How long have you been around?
NuoDB, the leader in webscale distributed database technology, was first envisioned by industry-renowned database architect and innovator Jim Starkey in 2008. In 2010 he was joined by enterprise software CEO Barry Morris to launch a company that has re-defined relational database technology to tackle modern customer requirements.
To quote Jim: “When I started what became NuoDB, the time for variations on existing themes was past. If databases were to scale, a whole new approach was required, one unsaddled by ancient assumptions."
What are NuoDB’s product editions?
NuoDB is available in four editions. With the exception of Free Edition, all other NuoDB editions are licensed on an annual subscription basis unless specified otherwise:
- Developer Edition – allows you to develop and test your database application for free on one or multiple hosts per domain.
- Free Edition – this edition is free forever and allows you to develop, test, and deploy NuoDB on up to 2 hosts per domain.
- Pro Edition – this commercial edition allows you to deploy NuoDB across a number of licensed hosts per domain running in a single region. The minimum commercial configuration of the Pro Edition is 5 hosts.
- Enterprise Edition – this commercial edition allows you to deploy NuoDB on across a number of licensed hosts per domain running across multiple geographic regions. The minimum commercial configuration of the Enterprise Edition is 5 hosts.
What is a NuoDB Domain?
A NuoDB Domain is a collection of hosts (physical or virtual) that have been provisioned to work together. Each domain is centrally managed by the NuoDB management console and enables users to run one or more single, logical databases across hosts.
How much does your software cost/what is the licensing model?
NuoDB is licensed for a number of hosts within an administrative domain. The annual subscription price starts at $20,000 for single-region and at $30,000 for multi-region datacenter deployments. These starter packages enable deployment of any number of databases on up to 5 hosts. Additional annual host licenses can be purchased at $4,000 for single-region and $5,000 for multi-region deployments.
In addition to NuoDB’s commercial deployment packages, NuoDB offers a free forever version of the software that can be deployed on up to 2 hosts per domain. It also offers an unrestricted 12-month developer edition of the product.
How does your pricing compare to Oracle's /MySQL/MS SQLServer, etc.?
NuoDB offers free and commercial editions of its distributed database system. The free 2-host version of NuoDB is a very competitive product offering and provides many product benefits over open source database systems like MySQL including scale out performance, high-availability and built-in data redundancy.
The commercial editions of NuoDB are priced competitively against commercial database systems like Oracle and SQL Server. A 4-core Itanium Oracle Enterprise perpetual license typically costs up to $100,000 in license fees plus 22% annual maintenance. As a result, over a 4-year period, Oracle software plus maintenance fees will be about $50,000/year.
Compared to a single NuoDB host license at $4,000/ year, you will see a significant cost advantage from NuoDB as compared to other commercial RDBMS. If you assume a 5-host Pro Edition license of NuoDB (which is our starter configuration at $20,000/year), you will see that NuoDB is less than 50% of a single server Oracle Enterprise license.
Note also that NuoDB’s host licensing is not tied to the size of a server/number of cores per server. Please call us if you have any further questions on software pricing and support or email us at firstname.lastname@example.org.
How do you compare to Oracle/MySQL/MS SQL...etc?
There are many functional dimensions to consider when comparing the NuoDB distributed database with traditional client/server RDBMS like MySQL. We’ve created two high-level comparison sheets, one comparing NuoDB with MySQL and MongoDB, and a second one comparing NuoDB against traditional RDBMS. Click here to review those.
How do you handle replication? How is data replicated between 2 datacenters?
NuoDB’s three-tier architecture includes a storage tier, which is primarily responsible for data durability. Each storage process, referred to as NuoDB Storage Manager (SM), holds a complete copy of the data. So, if you want to replicate a SM in NuoDB, you simply add another SM and replication will happen instantaneously and transparently.
“Behind the scenes” NuoDB replicates your data and once all data has been replicated, the replica SM will become an active peer in NuoDB’s distributed database system.
The new replica will automatically give you high availability (HA) in case your other storage manager goes down. It will give you disaster recovery in the event your entire datacenter goes down and you have had at least one storage manager running in some other geographic location.
Running a peer-to-peer SM in a geographically distributed deployment will help you achieve low-latency database access for your application.
How does the NuoDB solution handle disaster recovery?
NuoDB’s unique distributed architecture provides built-in data redundancy across datacenter and regional boundaries. You can rely on NuoDB’s distributed approach to keep your data safe and recover from failures when needed.
It’s simple. You can have as many Storage Managers as you like (see question above). They secretly stash away data in a durable store. And, unless you configure it not to, each SM might as well store all the objects. Which means that you have as many redundant copies of the whole database as you want. In consequence the NuoDB architecture is resilient to the loss of SMs.
How is your performance compared to other DBMS? Does NuoDB have any benchmark reports?
We have been published benchmarks throughout 2013 and will be releasing more DBT-2 benchmark results in Fall 2014. If you are interested in 2013 benchmark results, visit: for our YCSB benchmark results, and for previous DBT-2 results.
How easily can I migrate my data from another RDBMS to NuoDB?
To answer this question, there are various things to consider. First, how difficult is it to migrate your database schema from X to NuoDB.
Second, is your application closely tied to the syntax and functions of a particular DBMS or are you issuing standard ANSI SQL compliant queries to X? Are you using vendor-specific stored procedure syntax and functions?
Third, how easy is it to move the data from X to NuoDB.
So, coming back to the original question, here are some guidelines that will help guide you in your decision-making:
- Migrating database schemes is easy and straightforward.
- Migrating your app code is straight forward particularly if you using ANSI standard SQL queries and rely on standard object-relational mapping (ORM) technology.
- If your existing app relies on vendor-specific functions and stored procedures, you will have to rewrite these unless NuoDB has already implemented the vendor specific functions.
- As for the data, NuoDB provides migration tools that allow you to migrate existing schemas and data from major RDBMS systems to NuoDB. Moreover, NuoDB is working with third parties such as Pentaho to provide ETL style data transformation capabilities to get data in an out of NuoDB.
What migration tools/database tools does NuoDB support?
NuoDB offers a comprehensive data migration tool for exporting and importing data from leading RDBMS to NuoDB. The tool automatically exports and imports schemas and data, and automatically takes care of data type conversions.
NuoDB also supports 3rd party data integration tools such as Pentaho Data Integration. In addition, NuoDB supports real-time data replication tools such as Tungsten and GammaSoft, to move transaction data from X to NuoDB in real-time. The Tungsten integration currently only support data replication from MySQL to NuoDB.
Does NuoDB work on Amazon EC2, the Azure cloud, etc.?
By default, NuoDB runs on any PaaS environment. The company currently provides various degrees of platform integration support for Amazon, Azure, Google Compute Engine, Rackspace, and IBM SoftLayer.
NuoDB’s strategy is to seamlessly plug in into all major DBaaS stacks over time. To date, NuoDB provides comprehensive database provisioning and deployment support for Amazon AWS. The NuoDB solution is currently available on both the AWS Marketplace and the IBM Cloud Marketplace.
Which 3rd party tools do you support for data analytics?
NuoDB is an ANSI SQL compliant database management system. You access NuoDB through JDBC or ODBC the same way you would use any other relational DBMS. Therefore, by default, any JDBC or ODBC compliant tool works to varying degree out of the box with NuoDB.
For deeper integrations with 3rd party tools, NuoDB works with a number of technology partners. On the analytics side, NuoDB has an established partnership with Pentaho, which provides a comprehensive set of data analytics tools.
What happens if the NuoDB database is larger than a Transaction Engine’s memory?
NuoDB is a memory-centric database system based on a Distributed Durable Cache (DDC) architecture. The system allocates a Transaction Engine’s (TE) memory for objects (NuoDB refers to them as Atoms) that support the processing of a specific transaction. It de-allocates memory according to a "least recently used" heuristic. As the system determines which Atoms can be dropped, it also determines the correct order for them to be removed. Garbage collection then begins to remove Atoms no longer referenced by a current transaction from the Transaction Engine (TE) memory in Least Recently Used order.
How can the same data element be updated on several TE without the system thrashing?
NuoDB’s DDC architecture is uniquely designed to operate in a peer-to-peer fashion. A NuoDB client application starts a transaction by recording a start event on a TE, which is referred to as the local TE. Similarly, when the transaction completes, the TE records a transaction end event. All TEs record all start and end events, making it possible for all transactions to be visible across the database.
All TEs for a particular database communicate with each other by means of batched, asynchronous messages; messages about transaction state changes require no acknowledgement. When two transactions are operating independently (for example, inserting values into different tables) they do not communicate at all.
Conflicts can occur on specific pieces of data, such as trying to update to the same record, or inserting the same values into unique indexes. If multiple copies of an atom are in circulation, and there is a conflict, a single instance of the Atom is designated as the Atom Chairman.
The Atom Chairman acts as referee and resolves the conflict of operations on data. The steps in this kind of conflict resolution are as follows:
- The local records or index atom instance sends a change request to the records or index atom chairman.
- The chairman receives change requests and determines if there is a conflict.
- During this communication process, each change is stalled.
- Consequently the transaction thread stalls until the atom chairman responds.
- If the change does not conflict with concurrent changes the transaction proceeds.
For more on NuoDB’s distributed architecture, download the NuoDB Technical Whitepaper.
How does NuoDB scale without the need for sharding?
To understand how NuoDB works, you need to set aside the notion of a traditional disk-centric database system. NuoDB is the opposite of that; it is a memory-centric database system.
In order to scale a NuoDB system without sharding, you elastically scale out and in the transactional layer (TE layer) of NuoDB. You can add (or remove) new TEs to a running database, and by doing so the database can handle more (or less) simultaneous transactions. In practice, NuoDB has shown to scale out to dozens of hosts and can achieve hundred of thousands to millions of transactions per second (TPS) depending on the workload. The higher the ratio between reads and writes, the higher the TPS numbers tend to be for a given deployment scenario.
Underlying NuoDB is an innovative, patented database design that guarantees that the system is ACID compliant. The design allows the system to manage any conflicts that may occur when for example a copy of the same data record resides in different local memory caches and needs to be updated at the same time.