NOSQL DB BASICS FOR THE RDBMS-SAVVY

What does a traditional RDBMS programmer or architect need to understand to be productive with NoSQL (Not-only SQL technologies) and DCP (data caching platforms)?

I asked this question of our development team.

Here’s their list of things to know:

  1. Understand how ACID compares with BASE (Basically Available, Soft-state, Eventually Consistent)
  2. Understand persistence vs non-persistence, i.e., some NoSQL technologies are entirely in-memory data stores
  3. Recognize there are entirely different data models from traditional normalized tabular formats: Columnar (Cassandra) vs key/value (Memcached) vs document-oriented (CouchDB)  vs graph oriented (Neo4j)
  4. Be ready to deal with no standard interface like JDBC/ODBC or standarized query language like SQL; every NoSQL tool has a different interface
  5. Architects: rewire your brain to the fact that web-scale/large-scale NoSQL systems are distributed across dozens to hundreds of servers and networks as opposed to a shared database system
  6. Get used to the possibly uncomfortable realization that you won’t know where data lives (most of the time)
  7. Get used to the fact that data may not always be consistent; ‘eventually consistent’ is one of the key elements of the BASE model (I see this latency issue all the time in Twitter, in ‘Followers’ list)
  8. Get used to the fact that data may not always be available
  9. Understand that some solutions are partition-tolerant and some are not

These attributes vary from one system to another. It’s as important to understand the differences among NoSQL technologies as it is important to understand how they differ from a traditional RDBMS.

Here is a pretty good list of the many NoSQL products, from a respected member of the community, Alex Popescu.

Learn more about our performance monitoring solution for Java, NoSQL and web servers.

For cisco wireless access point and NoSQL. Visit http://evidentsoftware.com.

CASSANDRA NOSQL PERFORMANCE MONITORING

CLEARSTONE FOR CASSANDRA

The Evident ClearStone Cassandra Management Pack enables comprehensive Cassandra NoSQL performance monitoring. ClearStone collects statistical data from all JVMs in a cluster, and reports key performance metrics, including:

  • Thread pool statistics
  • Column Family Store statistics
  • Commit Log statistics
  • Storage Proxy statistics
  • Storage Service statistics
  • Streaming Service statistics
  • JVM statistics

ClearStone can perform parallel JMX collections from all the Cassandra nodes in the Cassandra NoSQL cluster. The data from these nodes can be consolidated and aggregated into a logical cluster as defined in the collection configuration. This provides an aggregated view of the Cassandra NoSQL clusters. Users can utilize the pre-build perspectives in the Real-Time Dashboard to monitor Cassandra NoSQL performance and other activity characteristics. In addition, administrators can configure additional monitoring policies to alert operators when there are performance issues with the Cassandra JVMs, thread pools, column family stores, etc.

You can try ClearStone for Cassandra NoSQL free. Visit http://evidentsoftware.com.