Ruby: All content tagged as Ruby in NoSQL databases and polyglot persistence
Sunday, 11 December 2011
NoSQL Screencasts: Neo4j for Ruby and Java People, Plus Data Modeling and Querying
Before the weekend is over, you could spend a bit of time experimenting with Neo4j. If you are a Ruby person then you’ve probably learned from the persistent graph structures with Ruby/Rails thread that Neo4j with JRuby is the way to go. In the first video Peter Neubauer demonstrates the process of building and deploying a Neo4j-enabled application on Heroku:
Saturday, 10 December 2011
Riak: Past and Future
Justin Sheehy talking about the origins of Riak and Dave Smith about its future at Riak 1.0 party. A nice piece of the recent history.
Friday, 9 December 2011
Persistent Graph Structures With Ruby/Rails
Summarizing this long thread trying to answer the question in the title: Neo4j + JRuby.
Original title and link: Persistent Graph Structures With Ruby/Rails (©myNoSQL)
Wednesday, 7 December 2011
Hadoop/MapReduce on Cassandra Using Ruby and REST
Brian O’Neill:
In an effort to make Hadoop/MapReduce on Cassandra more accessible, we added a REST layer to Virgil that allows you to run map reduce jobs written in Ruby against column families in Cassandra by simply posting the ruby script to a URL. This greatly reduces the skill set required to write and deploy the jobs, and allows users to rapidly develop analytics for data store in Cassandra.
Smart: 10. Security: ?. Utility: 10.
Original title and link: Hadoop/MapReduce on Cassandra Using Ruby and REST (©myNoSQL)
via: http://brianoneill.blogspot.com/2011/12/hadoopmapreduce-on-cassandra-using-ruby.html
Booting the Analytics Application
Russell Jurney describes the lifecycle of data/events in an analytic application:
EVENTS -> RUBY -> AVRO -> PIG -> VOLDEMORT -> SINATRA -> WEB BROWSER -> USER
The first step to building analytics applications with Hadoop is to plumb your application from end to end: from collecting raw data to displaying something on the users’ screen. This is important, because models can get complex fast, and you need user feedback plugged into the equation from the start.
Original title and link: Booting the Analytics Application (©myNoSQL)
via: http://datasyndrome.com/post/13707537045/booting-the-analytics-application-events-ruby
Tuesday, 6 December 2011
Parallelizing Work: From Single-Thread to Redis
An old post from Santosh Kumar describes the sequence of steps to parallelize processing from single threaded apps to using Redis and Resque and going through forking and process pools. Santosh has written extensively about using Redis for concurrency or as a Message oriented middleware (MOM).
The next time you need to get some background job action going, stop yourself from just grabbing a library. Instead, toy around with redis lists a little. You’ll be surprised by how much you can accomplish with just straight redis primitives.
While I agree with the usefulness of Redis[1], none of his posts say what comes after it. And that’s specialized solutions.
-
Last weekend I’ve built a tool for myself using Redis. ↩
Original title and link: Parallelizing Work: From Single-Thread to Redis (©myNoSQL)
via: http://santosh-log.heroku.com/2011/07/24/parallelizing-work-with-redis/
Saturday, 3 December 2011
Couchbase 2.0 Ruby Client Screencast
A screencast demoing CRUD capabilities of the Couchbase 2.0 using the Ruby library.
Monday, 28 November 2011
MagLev NoSQL OODB With Smalltalk-Based Ruby VM
Monty Williams (VMWare/GemStone) interviewed by Werner Schuster:
- MagLev VM takes full advantage of GemStone/S JIT to native code performance, distributed shared cache, fully ACID transactions, and enterprise class NoSQL data management capabilities to provide a robust and durable programming platform. It can transparently manage a much larger amount (terabytes) of data and code than will fit in memory.
- I don’t think of MagLev only as a Ruby VM that has an integrated NoSQL database. I think of MagLev as a NoSQL database that uses Ruby for its data manipulation language.
- The one thing I don’t think people have wrapped their heads around is MagLev provides a “single object space”. Nothing has to be sent/retrieved to/from a separate DB. All your code is executed “in the database.” You don’t even need to keep track of which objects have been modified so you can flush them to disk. MagLev handles that automatically.
- You can store any Ruby object, even procs, lambdas, threads, continuations. Here is an example of stopping, copying, saving, and restarting Threads in a different VM than they originated in. blog.bithug.org/2011/09/maglev-debug
- MagLev persistence is akin to Image Persistence, i.e. objects are persisted to disk in the same format they are in shared cache. You don’t need to marshal them or convert them to JSON or another format.
- MagLev transactions are ACID, which means that multiple VM’s can interact with the same repository and share state, objects, and code while maintaining referential integrity.
- When you start a new MagLev VM, code loaded by another VM is likely to still be in the cache. So loading/requiring it can be quite fast.
Am I the only one confused by the mouthfullness of the above “NoSQL OODB” description?
Original title and link: MagLev NoSQL OODB With Smalltalk-Based Ruby VM (©myNoSQL)
Monday, 31 October 2011
Lamer News: A Redis-Sinatra-JQuery HN-like News Site
Salvatore antirez Sanfilippo has published on GitHub Lamer News a Hacker News like social site built on top of Redis, Sinatra, and jQuery—when writing this I’ve already checked out the code. For a long time Twitter-related and blog-related projects have been the favorite demos for NoSQL solutions, so its nice to see more serious applications featured.
The project is also running live at lamer news.com. It could benefit of a bit of UI liftup though.
Original title and link: Lamer News: A Redis-Sinatra-JQuery HN-like News Site (©myNoSQL)
Saturday, 28 May 2011
Sinatra with Redis on Cloud Foundry
The workshop takes you through creating a Sinatra application using sample code from here . Once the Sinatra application which leverages Twitter is working, the workshop then takes you through adding Redis to your application. Finally the workshop ends after taking you through scaling your application instances up and then back down.
Only 15 minutes to get it up and running:
Original title and link: Sinatra with Redis on Cloud Foundry (NoSQL databases © myNoSQL)
Friday, 27 May 2011
Rails Extensions for MongoDB Mongoid
A bunch of Rails addons to enhance Mongoid mapped models timestamps, versioning, history, tagging, search, geo, tree, etc. — note how many of these libraries are calling themselves mapping tools or even ORMs and ask yourself if indeed there’s no impedance mismatch:
This is all made possible by the fact that MongoDB documents don’t need a schema and that mongoid has a very simple callback mechanism that can invoke your function when an object is created, modified or destroyed.
The reverse of the coin is that the more you add the more magic is happening behind the scenes. And magic doesn’t usually play well with performance.
Original title and link: Rails Extensions for MongoDB Mongoid (NoSQL databases © myNoSQL)
Sunday, 22 May 2011
Three stories about Redis and eventmachine
From Scotland Ruby 2011, Martyn Loughran:
I’ll tell three stories about the building of our web services Panda and Pusher. Three interesting problems which we solved simply and elegantly using eventmachine and Redis. I’ll show you real code, talk about writing elegant evented code, and hopefully inspire you to solve problems simply using these great tools.
Original title and link: Three stories about Redis and eventmachine (NoSQL databases © myNoSQL)
via: http://confreaks.net/videos/549-scotlandruby2011-three-stories-about-redis-and-eventmachine
Most Popular Articles
- Translate SQL to MongoDB MapReduce
- Tutorial: Getting Started With Cassandra
- CouchDB vs MongoDB: An attempt for a More Informed Comparison
- Cassandra @ Twitter: An Interview with Ryan King
- A Couple of Nice GUI Tools for MongoDB
- NoSQL benchmarks and performance evaluations
- Ehcache: Distributed Cache or NoSQL Store?
- Document Databases Compared: CouchDB, MongoDB, RavenDB
- Quick Review of Existing Graph Databases
- NoSQL Data Modeling