SQL vs NoSQL / The problem of data

SQL vs NoSQL / The problem of data

http://highscalability.com/blog/2012/1/24/the-state-of-nosql-in-2012.html :: High Scalability - High Scalability - The State of NoSQL in 2012

Similar problems:

Our thinking, exactly:
http://mobiledrupal.com/building-mobile-app-api-using-drupal-nodejs-and-mongodb :: Building a mobile app API using Drupal, Node.js and MongoDB | Mobile Drupal

Instagram
http://instagram-engineering.tumblr.com/post/13649370142/what-powers-instagram-hundreds-of-instances-dozens-of » What Powers Instagram: Hundreds of Instances, Dozens of Technologies - Instagram Engineering
http://instagram-engineering.tumblr.com/post/10853187575/sharding-ids-at-instagram » Sharding & IDs at Instagram - Instagram Engineering
http://instagram-engineering.tumblr.com/post/12202313862/storing-hundreds-of-millions-of-simple-key-value-pairs » Storing hundreds of millions of simple key-value pairs in Redis - Instagram Engineering

Flickr
Normalization is for sissies.
http://code.flickr.com/blog/2010/02/08/using-abusing-and-scaling-mysql-at-flickr/ » Code: Flickr Developer Blog » Using, Abusing and Scaling MySQL at Flickr

SQL

MySQL

HandlerSocket is a NoSQL plugin for MySQL
http://yoshinorimatsunobu.blogspot.com/2010/10/using-mysql-as-nosql-story-for.html :: Yoshinori Matsunobu's blog: Using MySQL as a NoSQL - A story for exceeding 750,000 qps on a commodity server
https://github.com/DeNADev/HandlerSocket-Plugin-for-MySQL :: DeNADev/HandlerSocket-Plugin-for-MySQL
http://www.mysqlperformanceblog.com/2011/03/28/whats-up-with-handlersocket/ :: What’s up with HandlerSocket? - MySQL Performance Blog

PHP Application Sharding
http://code.google.com/p/shard-query/ :: shard-query - Shard-Query is a distributed parallel query engine for MySQL - Google Project Hosting
http://code.google.com/p/php-sql-parser/ :: php-sql-parser - A pure PHP SQL (non validating) parser w/ focus on MySQL dialect of SQL - Google Project Hosting

Drizzle http://www.drizzle.org/ » Drizzle | A database for the cloud http://nosql.mypopescu.com/post/296876437/drizzle-replication-nosql-hybrid-solutions » Drizzle Replication: Opening the Doors to Hybrid Solutions • myNoSQL

TokuDB Engine: http://stackoverflow.com/questions/1746842/mysql-has-anyone-used-the-tokudb-storage-engine » database - MySQL: Has anyone used the TokuDB storage engine? - Stack Overflow http://nosql.mypopescu.com/post/296876437/drizzle-replication-nosql-hybrid-solutions » Drizzle Replication: Opening the Doors to Hybrid Solutions • myNoSQL

NoSQL

http://nosql-database.org/ » NOSQL Databases http://highscalability.com/blog/2010/12/6/what-the-heck-are-you-actually-using-nosql-for.html :: High Scalability - High Scalability - What the heck are you actually using NoSQL for? http://highscalability.com/blog/2011/6/20/35-use-cases-for-choosing-your-next-nosql-database.html :: High Scalability - High Scalability - 35+ Use Cases for Choosing Your Next NoSQL Database http://nosql.mypopescu.com/kb/nosql » NoSQL • myNoSQL NoRAM DB => “If It Does Not Fit in RAM, I Will Quietly Die For You”

http://blogs.msdn.com/b/usisvde/archive/2012/04/05/getting-acquainted-with-nosql-on-windows-azure.aspx :: Getting Acquainted with NoSQL on Windows Azure - US ISV Evangelism - Site Home - MSDN Blogs http://www.thewindowsclub.com/difference-sql-nosql-comparision :: Difference between SQL and NoSQL : A Comparison http://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/ :: NoSQL Data Modeling Techniques « Highly Scalable Blog

Relational modeling is typically driven by the structure of available data. The main design theme is ”What answers do I have?”. NoSQL data modeling is typically driven by application-specific access patterns, i.e. the types of queries to be supported. The main design theme is ”What questions do I have?”

A must watch: http://nosql.mypopescu.com/post/1016320617/mongodb-is-web-scale# » MongoDB is Web Scale • myNoSQL http://nosql.mypopescu.com/post/541365394do/about-the-nosql-hype-cycle » About the NoSQL Hype Cycle • myNoSQL

Con’s: Does not guarantee ACID: after the INSERT is completed in SELECT: a different value can be retrieved http://www.cubrid.org/blog/dev-platform/nosql-benchmarking/ :: NoSQL Benchmarking | CUBRID Blog

Redis and mongodb users might be somewhat surprised to learn that, by default, they can lose your
data should the process crash or shut down. While you can configure them to work around this issue,
you're going to slow things down substantially doing so and therefore lose the big advantage they've been designed to provide.

Searchability (I couldn't think of a better term) - Key-value stores are typically not designed to be easy to search.

http://java.dzone.com/articles/should-i-use-mongodb-couchdb :: Should I use MongoDB, CouchDB, or Redis? | Javalobby

Landscape: http://www.vineetgupta.com/2010/01/nosql-databases-part-1-landscape/ » NoSql Databases – Part 1 – Landscape » Vineet Gupta http://blog.knuthaugen.no/2010/03/the-nosql-landscape.html :: Analysis of the NoSQL Landscape - All About the Code http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis :: Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase vs Couchbase vs Hypertable vs ElasticSearch vs Accumulo vs VoltDB vs Scalaris comparison :: Software architect Kristof Kovacs http://stackoverflow.com/questions/4720508/redis-couchdb-or-cassandra :: nosql - Redis, CouchDB or Cassandra? - Stack Overflow

Best explanation of key/value store: http://redis.io/topics/twitter-clone » A case study: Design and implementation of a simple Twitter clone using only the Redis key-value store as database and PHP – Redis

This may appear strange at first, but remember that we are only able to access data by key!
It's not possible to tell Redis to return the key that holds a specific value. This is also our strength,
this new paradigm is forcing us to organize the data so that everything is accessible by primary key,
speaking with relational DBs language.

MapReduce Explained

http://ayende.com/blog/4435/map-reduce-a-visual-explanation » Map / Reduce – A visual explanation - Ayende @ Rahien
http://benbuckman.net/tech/12/06/understanding-mapreduce-mongodb-nodejs-php-and-drupal :: Understanding MapReduce in MongoDB, with Node.js, PHP (and Drupal) | Tech Blog by New Leaf Digital | Ben Buckman.net

Translate SQL to NoSQL MapReduce
http://nosql.mypopescu.com/post/392418792/translate-sql-to-mongodb-mapreduce » Translate SQL to MongoDB MapReduce • myNoSQL
http://rickosborne.org/download/SQL-to-MongoDB.pdf » rickosborne.org/download/SQL-to-MongoDB.pdf
http://rickosborne.org/blog/2010/02/playing-around-with-mongodb-and-mapreduce-functions/ » Playing around with MongoDB and MapReduce functions » rick osborne dot org

http://horicky.blogspot.com/2010/08/designing-algorithmis-for-map-reduce.html » Pragmatic Programming Techniques: Designing algorithms for Map Reduce

Technology details:
    http://www.slideshare.net/guestdfd1ec/design-patterns-for-distributed-nonrelational-databases » Design Patterns for Distributed Non-Relational Databases
    http://horicky.blogspot.com/2009/11/nosql-patterns.html » Pragmatic Programming Techniques: NOSQL Patterns
    http://www.slideshare.net/dstainer/introduction-to-nosql-databases » Introduction to NoSQL Databases

Advanced Architecture Examples http://highscalability.com/blog/2011/11/29/datasift-architecture-realtime-datamining-at-120000-tweets-p.html » High Scalability - High Scalability - DataSift Architecture: Realtime Datamining at 120,000 Tweets Per Second

http://porcelli.com.br/archiv/nosql-for-beginners/ :: nosql for beginners | porcelli’s adventures in wonderland

  • Scaling

http://highscalability.com/blog/2011/9/13/must-see-5-steps-to-scaling-mongodb-or-any-db-in-8-minutes.html :: High Scalability - High Scalability - Must see: 5 Steps to Scaling MongoDB (Or Any DB) in 8 Minutes

date 01. Jan 0001 | modified 28. May 2021
filename: The problem of data (SQL vs NoSQL)