Apache Cassandra ready for the enterprise
- 19 October, 2011 07:46
The developers behind Apache Cassandra are confident that their distributed database management system is ready for general enterprise use, and, after three years of development, have released version 1.0 of their open-source software.
"We're consciously signalling that Cassandra is ready for mere mortals," said Jonathan Ellis, who is the Apache vice president of Apache Cassandra project, jokingly referring to the amount administrative expertise needed to deploy previous versions of the software. "You don't have to know as much as you did about the nuts and bolts" to operate the database, he added.
Version 1.0 of the software has also been augmented with additional features and performance improvements to handle a wider range of use cases, Ellis continued. Two years ago, Ellis queried users on the Cassandra mailing list, asking what features they would need. Version 1 of the software "completed this list of feature requests," he said.
Even before this release, Cassandra, first created by Facebook in 2008 and taken under the wing of Apache Software Foundation (ASF) the following year, has been used by a large number of Internet services and companies such as Cisco, Digg, Netflix, Reddit, Twitter and Walmart.
Cassandra was designed to be highly scalable, and to run across multiple servers. The largest Cassandra production cluster is run on more 300 servers and contains more than 300TB of data. The software also has been designed to value fast execution times: Each node can handle over 5,000 requests per second, according to the ASF.
Cassandra 1.0 comes with a wide range of new features to make it palatable for enterprise use. One is data compression, which should save space on the hard disk. The database system also compacts data as a background task, which rearranges the data into ways that make it most readily accessible. New techniques have also been added to better utilize the server's working memory as well.
The most dramatic improvement in Cassandra, however, has been in performance, Ellis said. The read performance has improved by 400 percent when compared last year's version 0.6 release. Write performance has also been boosted as well, by 40 percent.
Cassandra is one of a growing number of non-relational, or NoSQL databases on the market, which are sought by organizations looking for ways of quickly and cheaply store large amounts of data. The latest entrant into this market is Oracle, which, last week promised to release its own NoSQL database system in the near future.
Cassandra maintains a number of unique advantages in this increasingly crowded field, Ellis said. For one, Cassandra's architecture is suited for multi-data center environments, because it does not rely on a leader node to coordinate activities of the database. Data can be written to a local node, thereby eliminating the additional network communications needed to coordinate with a sometimes geographically distant master node. Also, because Cassandra is a column-based storage engine, it can store richer data sets than the typical key-value storage engine.
Apache Cassandra software is available for no cost under the Apache License version 2.0. DataStax, where Ellis serves as chief technology officer, offers a commercially supported version of Cassandra, called DataStax Enterprise.