Database Reference
In-Depth Information
NOTE
There are several other nonrelational databases that I don't discuss, generally because they are less pop-
ular, are specialized projects, or are not yet very far along in their implementation and production use.
One of these is the “semi-relational” database Drizzle, which is based on MySQL. Microsoft's cloud
database platform based on SQL Server is called SQL Server Data Services (SDS). Yahoo!'s PNUTS
is definitely worth taking a look at. You can read the PNUTS paper at http://research.yahoo.com/
iles/pnuts.pdf . For a more comprehensive list, visit Alex Popescu's wonderful site MyNoSQL at ht-
tp://nosql.mypopescu.com .
You might be reading this topic because you have already selected Cassandra for a database
project. But perhaps you've simply heard of its use at popular web properties such as Twitter
and Facebook and want to gain a better understanding of what it is. If that's the case, it may
prove helpful to understand some of the competing products so you can see what they emphas-
ize, where they differ, and how Cassandra compares in this context.
So let's take a brief look at some of these alternatives to help you see how they differ from what
you might already be familiar with. I have tried to characterize each database in terms of the
same general categories in order to make the comparison clear.
In general, these databases are distributed, which means that their design allows for more than
one node of the database that contains copies of the data, and they handle the replication auto-
matically for you. (There are some exceptions, however, such as Amazon's SimpleDB.) They
have a variety of features to help handle massive scale, which is important for many new web
applications.
On the negative side, however, what these databases generally share is a lack of great tooling and
framework support. Many of the solutions here are new, which means that the developers are fo-
cusing on the core product and that you'll have to forego, at least for the time being, tools such as
graphical consoles, which we've become used to in the RDBMS world. To employ any of these
solutions, including Cassandra, you'll need to feel comfortable working with a command-line in-
terface, simple shell tools, and getting your hands dirty with some plumbing. Because many of
these databases are becoming more popular and widely understood, you can expect such con-
veniences to be available in the near future.
Object Databases
The purpose of an object database is to avoid the object-relational impedance mismatch that oc-
curs when trying to use a relational database under an application written in an object-oriented
programming language. Object databases store data not in terms of relations and columns and
rows, but in terms of the objects themselves, making it straightforward to use the database from
Search WWH ::




Custom Search