background preloader

Choosing a non-relational database; why we migrated from MySQL to MongoDB « Boxed Ice Blog

Choosing a non-relational database; why we migrated from MySQL to MongoDB « Boxed Ice Blog

HBase - HBase Home MySQL vs. MongoDB: Looking At Relational and Non-Relational Databases | Neon Rain Interactive When building a custom web application you need to consider the type of database that best suits the data. Here's a quick guide on the differences between MySQL (Relational) and MongoDB (Non-Relational / NoSQL). It was back in 2004 that Ruby on Rails first came out and popularized web application frameworks. What you might not know, is that it also popularized ORM (Object-Relational Mapping) layers with its ActiveRecord object. An ORM layer basically provides an object oriented interface to a relational database. That means that instead of writing a query to insert or update a record, you assign some properties to an object and call a save method. For example, if you have a "post" object that represents a blog post, you can access it's comments through the property "post.comments". Thankfully, we never jumped on to the ORM bandwagon. Data Representation MySQL represents data in tables and rows. MongoDB represents data as collections of JSON documents. Querying MongoDB uses object querying.

MapReduce-MPI Library Leveling the Field July 1, 2011 For most Riak users, Bitcask is the obvious right storage engine to use. It provides low latency, solid predictability, is robust in the face of crashes, and is friendly from a filesystem backup point of view. However, it has one notable limitation: total RAM use depends linearly (though via a small constant) on the total number of objects stored. For this reason, Riak users that need to store billions of entries per machine sometimes use Innostore, (our wrapper around embedded InnoDB) as their storage engine instead. InnoDB is a robust and well-known storage engine, and uses a more traditional design than Bitcask which allows it to tolerate a higher maximum number of items stored on a given host. However, there are a number of reasons that people may wish for something other than Innostore when they find that they are in this situation. The first comparison was a sequential load into an empty database. Justin

nosql - Non-Relational Database Design Map-Reduce — MongoDB Manual 2.6.4 Map-reduce is a data processing paradigm for condensing large volumes of data into useful aggregated results. For map-reduce operations, MongoDB provides the mapReduce database command. Consider the following map-reduce operation: In this map-reduce operation, MongoDB applies the map phase to each input document (i.e. the documents in the collection that match the query condition). All map-reduce functions in MongoDB are JavaScript and run within the mongod process. Note For most aggregation operations, the Aggregation Pipeline provides better performance and more coherent interface. Map-Reduce JavaScript Functions In MongoDB, map-reduce operations use custom JavaScript functions to map, or associate, values to a key. The use of custom JavaScript functions provide flexibility to map-reduce operations. Map-Reduce Behavior In MongoDB, the map-reduce operation can write results to a collection or return the results inline. MongoDB supports map-reduce operations on sharded collections.

Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase comparison :: KKovacs (Yes it's a long title, since people kept asking me to write about this and that too :) I do when it has a point.) While SQL databases are insanely useful tools, their monopoly in the last decades is coming to an end. And it's just time: I can't even count the things that were forced into relational databases, but never really fitted them. But, the differences between NoSQL databases are much bigger than ever was between one SQL database and another. In this light, here is a comparison of Open Source NOSQL databases Cassandra, Mongodb, CouchDB, Redis, Riak, RethinkDB, Couchbase (ex-Membase), Hypertable, ElasticSearch, Accumulo, VoltDB, Kyoto Tycoon, Scalaris, OrientDB, Aerospike, Neo4j and HBase: The most popular ones Redis (V3.2) Written in: C Main point: Blazing fast License: BSD Protocol: Telnet-like, binary safe Disk-backed in-memory database, Master-slave replication, automatic failover Simple values or data structures by keys but complex operations like ZREVRANGEBYSCORE. Riak (V1.2)

Explaining Non-Relational Databases To My Mom | Ignored by Dinosaurs I was on the phone with Mom yesterday, and we got to talking about technology - a thing that actually happens fairly frequently. Being an only kid, she’s genuinely interested in everything that I do and it’s been helpful to have someone who’s mostly non-technical to bounce explanations off of when I’m getting my head around a new piece of gear. The piece of gear that I was explaining the other day was something called Mongo DB. Mongo’s parent company is called 10gen, and they landed on the startup scene about 5 years ago or so with their flagship product, Mongo DB. The Relational model The relational model of storing data has been around for more than 40 years. The classic example I gave to my mom was that of a common blog. The relational model typically comes into play when you visit a blog that has comments. Issues with the relational model For the purposes of this simplistic example, this hopefully isn’t that hard to get your head around. Very good. The non-relational model

Nonrelational Databases in a Big Data Environment Nonrelational databases do not rely on the table/key model endemic to RDBMSs (relational database management systems). In short, specialty data in the big data world requires specialty persistence and data manipulation techniques. Although these new styles of databases offer some answers to your big data challenges, they are not an express ticket to the finish line. One emerging, popular class of nonrelational database is called not only SQL (NoSQL). Originally the originators envisioned databases that did not require the relational model and SQL. As these products were introduced into the market, the definition softened a bit and now they are thought of as “not only SQL,” again bowing to the ubiquity of SQL. The other class is databases that do not support the relational model, but rely on SQL as a primary means of manipulating the data within.