ALL COVERED TOPICS

NoSQL Benchmarks NoSQL use cases NoSQL Videos NoSQL Hybrid Solutions NoSQL Presentations Big Data Hadoop MapReduce Pig Hive Flume Oozie Sqoop HDFS ZooKeeper Cascading Cascalog BigTable Cassandra HBase Hypertable Couchbase CouchDB MongoDB OrientDB RavenDB Jackrabbit Terrastore Amazon DynamoDB Redis Riak Project Voldemort Tokyo Cabinet Kyoto Cabinet memcached Amazon SimpleDB Datomic MemcacheDB M/DB GT.M Amazon Dynamo Dynomite Mnesia Yahoo! PNUTS/Sherpa Neo4j InfoGrid Sones GraphDB InfiniteGraph AllegroGraph MarkLogic Clustrix CouchDB Case Studies MongoDB Case Studies NoSQL at Adobe NoSQL at Facebook NoSQL at Twitter

NAVIGATE MAIN CATEGORIES

Close

rails: All content tagged as rails in NoSQL databases and polyglot persistence

MongoDB and Security via Diaspora

When asked why MongoDB is using their own query language instead of SQL, the answer was that using JSON for both data and queries made more sense. Plus, it helped avoid injection attacks. As showed by Patrick McKenzie’s post on recently released Diaspora, turns out this is not quite true:

Diaspora uses MongoDB, one of the new sexy NoSQL database options. I use a few myself. They have a few decades less experience getting exploited than the old relational databases you know and love, so let’s start: I claim this above code snippet gives me full read access to the database, including to serialized encryption keys.

The conclusion is quite obvious: as long as developers continue to use string concatenation and interpolation, the query language doesn’t really matter. So you might be better off with something that people feel familiar with.

Original title and link: MongoDB and Security via Diaspora (NoSQL databases © myNoSQL)

via: http://www.kalzumeus.com/2010/09/22/security-lessons-learned-from-the-diaspora-launch/


Diaspora, The Open Source Social Network, Uses MongoDB

Diaspora — the project started as an open source alternative to Facebook at the time Facebook was facing user complaints to their changes to the user privacy — has published its first alpha version on GitHub. According to the README, it sounds like Diaspora is using MongoDB.

I am pretty sure that the decision was not made based on the recent MongoDB scaling features, but rather on the feature set that made the initial developers feel comfortable and familiar to develop this first alpha version. On the other hand, seeing Rails 3 in the same list may just mean they tried their hands with the latest and greatest.

Original title and link: Diaspora, The Open Source Social Network, Uses MongoDB (NoSQL databases © myNoSQL)


Riak and Rails: 6 Steps for Getting Started

From Basho:

Web applications built with Ruby on Rails have lots of ways to take advantage of scalable, distributed storage systems like Riak. These resources can help you get started.

Video and slides below:

Riak and Rails: 6 Steps for Getting Started originally posted on the NoSQL blog: myNoSQL

via: http://forms.basho.com/riak-and-rails-a-powerful-combination-attended-p


Recommendation Engines with Neo4j

Even if a bit hidden behind the Rails code, the slides embedded below and these ☞ code snippets are using the RESTful access to Neo4j to build a recommendation engine in a network of StarWars heroes:

You Might Also Like: Implementing User Recommendations in Rails

Probably obvious, but graph databases are definitely a good tool for building recommendation engines.


MongoDB Usecases Part 2

Some more open source Ruby applications using MongoDB (thanks @bitzesty for putting these ☞ together):

NewsMonger

A simple social news application demonstrating MongoDB and Rails.

Oupsnow

A bugtracker in Rails using MongoDB over MongoMapper.

Watchtower

An example app built with Sinatra, Mustache and MongoDB. Mustache is a cool Javascript template library.

mmmblog

A blogging engine by the same guys as Shapado.

In case you are interested to see more blog engines check out Usecase: NoSQL-based blog engines.

Make sure you are also checking the first set of MongoDB usecases. Also, you can compare these apps with other NoSQL usecases.


Usecase: NoSQL-based Blogs

Aside Twitter applications, blogs are another darling of NoSQL projects. So, I’ve put together a list of NoSQL powered blog projects.

CouchDB

SemanticJournal

A Rails and CouchDB blog. Code on ☞ GitHub

OikoNote

A CouchDB-based blog built in “one day” with Django (nb so far I couldn’t find the source code, so any leads are appreciated).

Neo4j

jo4neoblog

A simple blog built using neo4j, jo4neo and Stripes. You can read more about it ☞ here and get the code from ☞ Google code.

Couple of comments:

  • I don’t really like the fact that the model is neo4j aware, but that’s similar to what JPA is doing too
  • I like the indexing annotation though, but I am not sure if it uses neo4j Lucene full text indexing

@tcowan

subwiz

A cli-application blog built using neo4j. Code available on ☞ Google code.

@subwiz

MongoDB

MongoBlog

A lightweight blogging engine written in C++ and using MongoDB. Code available on ☞ GitHub

@mich181189

Update: thanks to the comments, I have added two more NoSQL-based blog engines.

Django-Mumblr

Django-Mumblr is a basic Django tumblelog application that uses MongoDB. Source code can be found on ☞ GitHub

mmmblog

mmmblog is a blog engine based on Rails, mongomapper and MongoDB, providing feeds, OpenID comments and a simple admin interface. Code is available on ☞ Gitorious

I am pretty sure there are more out there, so please send them over!


MongoDB Usecases

Lately I have gathered a couple of detailed MongoDB usecases and I thought to share these with you. While usecases cannot be considered (perfect) recipes, being able to see what others have done will definitely give you an idea of where and how a specific NoSQL project can be useful or not. That’s why I’d also encourage you to check the usecase coverage here on MyNoSQL.

Shapado.com: A FOSS replacement for Stackoverflow based on MongoDB

I think Stackoverflow approach is the first and single solution that have successfully brought forums to the web 2.0 era. So, in case you are wondering what’s the reason behind Shapado.com, I have found this explanation:

the initial reason to do this site was to test our mongodb+rails stack, not to take over the world. We think stackoverflow is fine but having a foss alternative is always a good thing, especially for people who need or want to have a local install of it, or just enjoy hacking on it :)

Resources

@nosqlupdate

Using MondoDB as a simple message board backend

This project is an experiment brought to you by Bill Casarin (@jb55). I must say that it is quite interesting to see not one, but two message board/forum-like applications within a couple of days.

Something that caught my attention in the blog post introducing the experimental message board app is the following comment:

I’d have to say the worse part of the whole ordeal so far is the lack of integration with existing Python web frameworks.

That is just reinforcing the points I’ve raised about NoSQL adoption in my post Bringing NoSQL to the people.

There is no code released yet, but Bill intends to ☞ opensource it:

It’s part part of the forum software I plan to opensource sometime in the future […]

Building the simplest online feed reader (using ExtJS, ASP.NET MVC and MongoDB)

This is a 2 articles series on how to build an online feed reader and I have found interesting the exercise of designing the data model.

Resources

@dead_trickster

Denormalizing Your Rails Application: MongoDB Usage at songkick (pdf) ☞

The presentation is detailing MongoDB usage at songkick ( a social network based around live music,) and the reasons why MongoDB was a better fit than RDBMSs or Memcached:

  • Schema-less which is great for our denormalized data which is changing a lot. (Schema less databases are a great fit with dynamic languages.)
  • Pretty quick. Stores most/all of our db in RAM.
  • Supports sharding (or close to supporting it anyway).
  • Seems more mature than some….
  • Fully supported Ruby driver. (With responsive IRC and developers.)

@danlucraft

I hope you enjoy these usecases. For more you can check these NoSQL usecases. And you can always send new ones by pinging @al3xandru on Twitter or by dropping me an email.