Citrusleaf (No SQL, Non Relational, Scalable, Transactional, Distributed Database ) Review
By Avik, Gaea News NetworkMonday, August 2, 2010
Focus
Citrusleaf provides solution to one of the most common problems in Web-scale application development and deployment by offering reliable, fast and affordable access to your information. TimesTen or Memcached, or simple Brute force approaches often leads to temporal solutions, but they don’t address the fundamental problem, which is the need for a massively scalable, simple, reliable, fast data storage mechanism.
Citrusleaf is not intended to replace your relational database systems. It has been developed to outperform them by a factor of 30 in the environment where you need that performance most. The system assures transient, high-frequency data that drives the front end of your business.
Features
- Data integrity. Backup and restore, immediate consistency, and redundancy.
- High speed transactions, with a little tuning required everytime
- No single point of failure, no bottlenecks
- Clustered analytics engine
- Operations procedures that just work
A Citrusleaf cluster is almost entirely self-managing, even under heavy load. Scaling up is a straightforward process that doesn’t require downtime and node failures are a non-event. Instead of fighting index optimization and the intricacies of a query language, Citrusleaf just works fast and is always reliable.
Key Technology
- Distributed consensus and automatic data rebalancing algorithms provide robust self-management of the system during failures
- High performance transaction support guarantees data consistency
- Support for SSD storage devices result in the lowest possible cost-per-byte
- A light-weight data model enables faster application development
- An optimized data flow model results in fewer network hops between the application and data storage
- Automatic backup and restore protects against the catastrophic loss of data
- Built-in load balancing enables clients to dynamically adapt to changes in cluster state
Detailed Analysis
Citrusleaf exposes data-oriented concepts that are simple, easy to use, and schema-free. Within a cluster, data is organized into policy-oriented containers called namespaces. Within a namespace, data is accessed through a combination of two elements — a key and a set. A key is a primary reference to a piece of data; a set groups keys together. A key is unique within a set, but can be reused in a different set. The data referenced by a given key and set contains a collection of named values, called bins. The contents of these bins are strongly typed, and map directly to the most common types in use — integers, UTF-8 strings, timestamps, and binary data. The Citrusleaf library exposes these types to your application software natively. Instead of using intricate, inflexible structured queries, developers can now use the same software paradigms in which they’re aclamatized.
Internally, Citrusleaf replicates your data across multiple servers. When a node is added or removed, the data is automatically redistributed to ensure maximum performance and availability. The traditional distributed system complexities are handled for you: connecting to any node brings awareness of the entire cluster, and an internal query distribution system ensures non-stop data access, even when nodes fail or during the heaviest of loads. Three server nodes are required to fully use Citrusleaf’s high availability features, and system performance scales linearly with increased hardware. Citrusleaf runs on Linux on commodity hardware — no expensive storage area network is required.
Contrast with the Others
- Citrusleaf abstracts out all the complexity
- Exposes operational control and data access through simple, powerful APIs
- Provides service economies that are 30 times superior than conventional methods
Citrus Strengths
- Incredible query performance (less than 1 millisecond per transaction and 350,000+ transactions/second)
- Low cost of ownership
- Ability to scale to your needs
- Empowering agile application development practices
Cons
- It is a new venture, so compatibility and support issues may run in
- Difficulties in configuration might act as a teaser while installing the system
- Without checking for news on upgrades, investing on the system might not be a wise decision
Conclusion
Tags: Citrusleaf, Distributed Database, No SQL, Non Relational Database