Your current filters are…
People have begun to realize the enormous gap between the relational database abstraction and the way people actually think about information. To be clear, I am not suggesting that relational databases will stop being used or that they are going to go away, but that developers are going to stop thinking of their data in relational database terms.
Everyone from regular users to sophisticated developers thinks about information in a pretty simple way. There are objects, and there are connections or relationships between objects. For example if you have two objects, a cup and a table, the relationship between them might be “sitting on”, indicating that the cup is sitting on the table.
What makes this model so sturdy is that we can continuously add new objects: tables, cups, chairs, floors, table cloths, etc. And we can add infinite relationships, such as sitting on, sitting under, covering, etc. Computer scientists, and now, thanks to Facebook, everybody else, refers to this structure as a graph. New data models such as the graph provide new ways to think about persisting data.
The death of the relational database means the death of the relational database *abstraction* as a way that programmers think about data. What programmers need is to model data in the most natural way possible, and we are starting to see storage abstractions that are closer to how humans think instead of how computers need to.
What is Cassandra? What is NoSQL? Why are sites like Facebook, Twitter, Google and Digg all using these new technologies? And what does that mean to me?
The popularity of the NoSQL movement has exploded in the last year or two, as a number of these non-traditional data storage systems have gone from experimental curiosities to powerful production-ready engines that power the largest real-time social networking sites on the Web.
Born out of Facebook, Cassandra is one of super-hot players in this new movement. We recently had an opportunity to build a new social networking site using it for the first time, and we want to share what we learned.
In this presentation:
Code samples are in Ruby on Rails.
Solr is an open source, Lucene based search platform originally developed by CNET and used by the likes of Netflix, Yelp, and StubHub which has been rapidly growing in popularity and features during the last few years. Learn how Solr can be used as a Not Only SQL (NoSQL) database along the lines of Cassandra, Memcached, and Redis.
NoSQL data stores are regularly described as non-relational, distributed, internet-scalable and are used at both Facebook and Digg.
This presentation will quickly cover the fundamentals of NoSQL data stores, the basics of Lucene, and what Solr brings to the table. Following that we will dive into the technical details of making Solr your primary query engine on large scale web applications, thus relegating your traditional relational database to little more than a simple key store.
Real solutions to problems like handling four billion requests per month will be presented. We'll talk about sizing and configuring the Solr instances to maintain rapid response times under heavy load. We'll show you how to change the schema on a live system with tens of millions of documents indexed while supporting real-time results. And finally, we'll answer your questions about ways to work around the lack of transactions in Solr and how you can do all of this in a highly available solution.
Faced with the costs of vertically scaling their relational database systems, developers are increasingly turning to Apache Cassandra as an alternative. Cassandra solves the scaling problem by partitioning data, expanding horizontally and promising replication consistency. Effectively utilizing Cassandra requires that developers take different approaches to the ways they model data used in their applications. This presentation will explain how Cassandra achieves scale and reliability, and give an example of porting a SQL schema to Cassandra.
11th–15th March 2011