Showing posts with label nosql. Show all posts
Showing posts with label nosql. Show all posts

Monday, February 7, 2011

NoSQL Glossary

Shard
======
- a broken piece or fragment of a brittle substance, esp of pottery
= Horizontal partitioning data
ตัวอย่างเช่น
ข้อมูล user 1 - 10 เก็บข้อมูลที่ shard 1
ข้อมูล user 11-20 เก็บข้อมูลที่ shard 2
- Normally, one uses two servers per shard to ensure availability.

Eventual Consistency
====================
As the data is replicated, the latest version of something is sitting on some node in the cluster, but older versions are still out there on other nodes, but eventually all nodes will see the latest version.

NoSQL

Main Idea
==========
- ไม่จำเป็นต้องใช้ relational db ในการเก็บข้อมูล
ใช้แค่ primary key look-up ก็เพียงพอ-> retrieve ข้อมูลแล้ว
- Just put the schema at the app level and keep it all in one place
, rather than duplicating it at the database level.

Category
=========
- Key/Value
Pure key/value stores are blobs stored by key.
- Tabular
Some projects use a Google BigTable-like data model
which we call “tabular” here —
or one can think of it as “multidimensional tabular”.
- Document-Oriented
Typical of these are JSON-style data stores.


Common Characters
=================
- Schema-Free data model
- de-normalized
- Distributed (Good Response Time, ...)
- Shard
- Replicated
- Eventually Consistent
- Map/Reduce

เรียบเรียงโดย สิริพงษ์ พงศ์ภิญโญภาพ

References
============
http://www.narisa.com/blog/up1/index.php?showentry=1650
http://nontster.wordpress.com/2009/12/15/413/
http://wiki.apache.org/cassandra/ArchitectureOverview
http://www.mongodb.org/display/DOCS/Sharding+Introduction
http://nosql-databases.org/
http://www.linux-mag.com/cache/7579/1.html
http://blog.mongodb.org/post/142940558/what-is-the-right-data-model