background preloader

Cloud Databases

Facebook Twitter

GraphDB

Comparison - NOSQLs. Translate SQL to MongoDB MapReduce. I keep hearing people complaining that MapReduce is not as easy as SQL.

Translate SQL to MongoDB MapReduce

But there are others saying SQL is not easy to grok. I’ll keep myself away from this possible flame war and just point you out to this ☞ SQL to MongoDB translation PDF put together by Rick Osborne and also his ☞ post providing some more details. As regards the SQL and MapReduce comparison, here’s what Rick has to say: It seems kindof silly to go through all this, right? SQL does all of this, but with much less complexity. I’d also like to share something that I’ve learned lately: SQL parallel execution is supported in different forms by some RDBMS. Polyglot persistence at Pinterest: Redis, Membase, MySQL. I’ve created the diagram above based on this very brief answer on Quora: We use python + heavily-modified Django at the application layer.

Polyglot persistence at Pinterest: Redis, Membase, MySQL

Tornado and (very selectively) node.js as web-servers. Memcached and membase / redis for object- and logical-caching, respectively. RabbitMQ as a message queue. Nginx, HAproxy and Varnish for static-delivery and load-balancing. Data from October 2011 showed Pinterest having over 3 million users generating 400+ million pageviews. What is node.js used for? Original title and link: Polyglot persistence at Pinterest: Redis, Membase, MySQL (NoSQL database©myNoSQL) by Alex Popescu & Ana-Maria Bacalu Most read Latest. Difference between SQL and NoSQL : A Comparison. Ever since the buzz of NoSQL database evolved in storing data into the NoSQL databases, I thought of exploring both the concepts to reach out to its depth.

Difference between SQL and NoSQL : A Comparison

And it took me some time to figure out things that actually lead to the evolution the NoSQL database. Well it all comes down to the quest of providing best possible experience to the end users in quick, real and connected way. Database developers are trying to optimize things to yield better performance as the technology in storage department is changing drastically. High Scalability - High Scalability. What the heck are you actually using NoSQL for? It's a truism that we should choose the right tool for the job.

What the heck are you actually using NoSQL for?

Everyone says that. And who can disagree? The problem is this is not helpful advice without being able to answer more specific questions like: What jobs are the tools good at? Will they work on jobs like mine? Is it worth the risk to try something new when all my people know something else and we have a deadline to meet? In the NoSQL space this kind of real-world data is still a bit vague. Let's change that. Here's a list of uses cases I came up with after some trolling of the interwebs. General Use Cases These are the general kinds of reasons people throw around for using NoSQL. Bigness. More Specific Use Cases Managing large streams of non-transactional data: Apache logs, application logs, MySQL logs, clickstreams, etc.Syncing online and offline data. Redis Use Cases Redis is unique in the repertoire as it is a data structure server, with many fascinating use cases that people are excited to share.

35+ Use Cases for Choosing Your Next NoSQL Database. Eventual Consistency. In the previous chapter, we saw that CouchDB’s flexibility allows us to evolve our data as our applications grow and change.

Eventual Consistency

In this chapter, we’ll explore how working “with the grain” of CouchDB promotes simplicity in our applications and helps us naturally build scalable, distributed systems. Working with the Grain A distributed system is a system that operates robustly over a wide network. A particular feature of network computing is that network links can potentially disappear, and there are plenty of strategies for managing this type of network segmentation. CouchDB differs from others by accepting eventual consistency, as opposed to putting absolute consistency ahead of raw availability, like RDBMS or Paxos.

Engineering distributed systems is tricky. Of course, building a distributed system is only the beginning. The CAP Theorem The CAP theorem describes a few different strategies for distributing application logic across networks. Consistency Availability Partition tolerance. SQL/NoSQL How to choose ? CouchDB. Apache CouchDB, commonly referred to as CouchDB, is an open source database that focuses on ease of use and on being "a database that completely embraces the web".[1] It is a NoSQL database that uses JSON to store data, JavaScript as its query language using MapReduce, and HTTP for an API.[1] One of its distinguishing features is multi-master replication.

CouchDB

CouchDB was first released in 2005 and later became an Apache project in 2008. Unlike in a relational database, CouchDB does not store data and relationships in tables. Instead, each database is a collection of independent documents. Each document maintains its own data and self-contained schema. An application may access multiple databases, such as one stored on a user's mobile phone and another on a server. CouchDB implements a form of Multi-Version Concurrency Control (MVCC) in order to avoid the need to lock the database file during writes.

History[edit] In early 2012, Damien Katz left the project to focus on Couchbase Server.[7]

Sharding

Distributed Caches. NoSQL.