Some notes from "Overview of NoSQL Database systems" hosted by Thoughtworks, Atlanta.
Presenter: Noah KriegelStarters: Awesome pizza and drinks.
Presentation gist:
- Beautiful prezi layout (check below image - Courtesy: James Brechtel).
- Most of the content is inspired from NoSQL Distilled book, but Noah did a good job in extracting the necessary stuff and supplementing it with his own experience.
Why we love RDBMS
- ACID compliant
- Standard, Expressive and Powerful SQL.
Why the hate?
- Challenges with data replication and multi node setup resulting in expensive infrastructure.
- Application object and db data type mismatch. Tools like ActiveRecord and Hibernate plays a major part in overcoming this but has their own pitfalls.
NoSQL movement
- Inspired by two papers on Google Big Table and Amazon DynamoDB
- Gain traction with the developers unlike failures like Object databases in the past.
Some important facts to remember
- CAP theorem
- Quorum-based voting techniques
NoSQL types
- Key Store
- Document oriented database
- Column oriented DBMS
- Graph databases
Each of the type was discussed on the following terms:
- Introduction and key feature
- When to use
- When not to use
- Sample code
I'll put some more details on each of these data types in the upcoming posts.
Some key TIL:
- CQL closely mirrors SQL in its syntax.
- Redis stands for REmote DIctionary Server.
- Mongo is a strip-off from the word - humongous