Thank god it's in the cloud else how would business latch on to this idea and tell us to use it ?!
NuoDB, a start-up which claims to be offering the industry’s only "emergent" elastically scalable database, has made the firm's beta trial available to the public via a freemium business model. It plans to launch the product by the end of the year. NuoDB was founded by relational database guru Jim Starkey and CEO Barry Morris …
Until the second-to-last paragraph I had absolutely no idea what the product was about at all, and there's nothing in here to differentiate it from other large databases. The content to fluff ratio was extremely small.
I'm quite firmly of the opinion now that this product is nothing but a potentially interesting small project encapsulated in buzzword bingo.
Elastic means that certain portions of the database can be brought online or offline depending on demand. It also means that if you distribute your database across two different datacenters, one of the the two datacenters can fail completely without bringing down your database. All provisioning or shutting down of database resources is done through a single web console.
My name is Wiqar Chaudry and I am the Technology Evangelist for NuoDB. Thanks for your feedback on this article. Your opinion and comments are welcomed and respected.
NuoDB is not JUST for the cloud. NuoDB can be deployed in a heterogeneous environment. In fact, you can provision a single database and have some portion of its processes running in the cloud and other processes running in a local datacenter. Its also available at no cost. You can download a copy to try it for yourself at www.nuodb.com.
It's nice to see a representative of the company turn up in the Reg's comments barrel!
Looking at the NuoDB website, I see a lot of verbiage, but not a lot of detail. I'm not sure I see how NuoDB differs materially from, for example, a MySQL replication arrangement with suitable frontend query distribution and management accessories, except perhaps in that it has a somewhat lighter-weight backend requirement -- a simple key-value store, as opposed to a full-up MySQL engine instance.
Given the long and well-proven track record of a relatively venerable open-source RDBMS such as MySQL or PostgreSQL compared to a brand-new entrant into the field such as NuoDB, and given how generally mission-critical database reliability tends to be, can you suggest some good reasons why someone considering which RDBMS to use should prefer NuoDB over something that's already well established in the field?
Thanks in advance for a thought-provoking response!
Thanks for the question.
I have personally worked for companies that used MySQL as their OLTP database that was replicated for reporting and warehousing, so I have some background with the scenario you describe.
Using your example, here is why you should use NuoDB:
1. Highly available
2. No need to replicate
3. No need to shard
4. Redundancy is built in
5. Super easy administration
To truly appreciate how NuoDB accomplishes this you have to look at the architecture. When you download and install NuoDB the first thing you have to establish is a NuoDB Domain. A Domain is simply a collection of host machines that you want to run NuoDB on. At any time, you can add a machine to the Domain by running a NuoDB Agent process, or you can remove a machine by shutting down a NuoDB Agent. An Agent is a tiny process that you run on a host to participate in a NuoDB Domain. At least one of these Agents needs to run in Broker mode. You can have multiple Brokers to eliminate a single point of failure. Brokers act as global agents to keep track of the network topology and orchestrate client requests to the most available NuoDB processes.
Next you can provision NuoDB Transaction Engines (TE) on one or more machine within a Domain. A TE is just an in-memory process responsible for caching your data and executing SQL. TEs have the ability to talk to each other asynchronously and can request data from each other. (This is a whole other conversation).
Finally you can also provision one or more NuoDB Storage Managers (SM) to make you data durable. SMs can persist your data currently on the File System, Amazon S3, or HDFS. The plan in the future is to make it an arbitrary key value store. You should run at least two SMs to make your data redundant. SM also communicate with each other asynchronously.
If you are looking for more performance, simply add another TE and you will instantly get more performance. If you have idle TEs and want to reallocate your hardware to some other process, no problem, simply shutdown the NuoDB processes and you can reuse the hardware for something else.
With NuoDB everything fails independently. If you have two datacenters, an entire datacenter can go down and your database will still be running.
Hope that helps.
NuoDB Tech Evangelist
I too have had a look at the site, and it is indeed a bit thin on detail. If NuoDB delivers on its claims though, then it's a seriously interesting proposition.
A couple of questions for Wiqar Chaudry.
If I run multiple Brokers, how does the application decide which one to use and how does the application know which Broker to move to if the Broker it's using fails? Are we basically talking DNS round robin?
You say that the storage manager implements a distributed database. By distributing/replicating the data each node will maintain a full copy of the database. Won't this cause scaling problems with data volumes compared to federating the database. As the volume of data grows, we can't just add more nodes, we need to upgrade each and every node in the domain so that it maintains enough storage capacity.
well done nuodb ! power of relational model with true scalability - will be fantastic if works as promised and adds some key sql standards capability which i think is missing at the moment - a few minutes googling so i may be wrong - particularly - recursive common table expressions - windows aggregate functions - range types - exclusion constraint - oracle or postgres procedural language - user defined sql functions - ill be watching progress with a keen interest - a big opportunity for nuodb i think - especially when no sql nonsense comes home to roost.
I would like to ask something. I have yet to see the video because my Galaxy Tab 10.1 says "Sorry, this video cannot be played". Do you provide content in Vimeo format? Maybe it is a firewall issue built into this device as I cannot download formZ exes or rar or even the Mac binary.
Anyway, do you offer a GUI front-end, or do users provide their own? How difficult would it be for non-developer users to bolt on a GUI that mimics, say, Lotus Approach? Do you provide extension types of tools to extend the product for those at the cubicle? For years, I have seen database products arrive, but often hardly provided any front end and those who made front ends painfully shoved out things that would not survive usability studies. So far, to be blunt, no vendor or open source supplier has made a front end that is as easy to use as is Lotus Approach. It, its stuck in 1997, cannot produce standalone executables, and requires Lotus Smart Suite for others to install in order to use the database front end features to see forms as created by a designer.
So, can your product be used as far down in power scales as Approach, MS Access, Filemaker, Alpha 5, Sesame, and others, but, provide a powerful yet user-friendly GUI like Approach, and not be sued or threatened by larger companies? Or, is it aimed squarely at the upper end and for server and developers instead?
And, importantly to me, is your product something that might compete well with msql or the embedded ones, and be attractive to CAD vendors who may be tempted to bake in BOMs, parts trees, robust, time and event based stamps and histories? Then, companies like Punch! Software and Autodessys, and others could give me more of what i want in CAD product that costs less than USD $1,000.
Thanks for reading this.
Biting the hand that feeds IT © 1998–2021