by James Carr
by Sean Cribbs
“NoSQL is awesome! I need to use it on my next project!” … [hours later] … “How the heck do I get my data out of this thing?!”
by Nathan Marz
Storm makes it easy to write and scale complex realtime computations on a cluster of computers, doing for realtime processing what Hadoop did for batch processing. Storm guarantees that every message will be processed. And it’s fast — you can process millions of messages per second with a small cluster. Best of all, you can write Storm topologies using any programming language.
Storm has a wide range of use cases. The basic use case is “stream processing”: processing a stream of new data and updating databases in realtime. Unlike the standard approach of doing stream processing with queues and workers, Storm is fault-tolerant and scalable.
Another use case is “continuous computation”: streaming the results of a query to clients to visualize in realtime. An example is streaming trending topics on Twitter into browsers.
A third use case is “distributed RPC”: computing an intense query on the fly in parallel. With distributed RPC, a Storm topology is a distributed function that you can invoke like a normal function.
In this talk, I’ll release Storm as open-source. I’ll show how Storm’s simple programming model makes realtime computation easy, robust, and even fun.
by Richard Kreuter
So-called ‘NoSQL’ databases generally don’t support transactions. Yet there are plenty of situations where you might want to use one of these databases and at the same time build an application with transactional semantics. Maybe you want to design a voting system. Or perhaps you need to sell tickets to an assigned-seating event.
As it turns out, even without transactions proper, these problems are tractable and admit of some pretty interesting solutions. Indeed, transaction-less architectures are already widespread in enterprise applications; and these techniques are often useful when designing systems that target non-relational data stores.
This talk will explore a handful of patterns for solving problems without database-backed transactions. We’ll focus on techniques applicable to MongoDB, the popular document-oriented database, but the talk will of interest to anyone who likes looking at so-called solved problems through fresh lenses.
by Lance Ball
TorqueBox is a Ruby application server built on top of JBoss AS7 that extends the footprint of Ruby applications to include built-in support for services such as messaging, scheduling, and daemons. Infinispan is an extremely scalable, highly available data grid platform, designed to make the most of modern multi-processor/multi-core architectures while at the same time providing distributed cache capabilities. DataMapper is an Object Relational Mapper for Ruby. TorqueBox brings the two together to provide a fast, scalable, distributed NoSQL data store for your Ruby applications. In this presentation, I will take a brief look at each of these technologies and combine them with Sinatra to create a super awesome beer catalogue.
Data gets lonely. Much of our data is trapped in proprietary formats, restricted cloud silos, or remote locations that require an “always on” Internet connection. What happens if the power goes out? or Twitter is down? or, worse, your bank? We’ll take a look at how CouchDB solves these problems with it’s schema-less data store, “kill -9” compatible, append-only database format, REST API, and HTTP-based replication.
CouchDB doesn’t stop there. We’ll also survey the surrounding ecosystem including plugins like the R-tree, spatial/geographical index, GeoCouch, check out some options for “scaling out” CouchDB, and look at “scaling down” with Mobile Couchbase for Android and iOS.
18th–20th September 2011