Đỉnh NGUYỄN

life's a journey not a destination

Big Data #5 – NoSQL là gì?

1 Comment


NoSQL là gì?

NoSQL là viết tắt cho Not Relational SQL hay Not Only SQL. Nhiều người nghĩ rằng NoSQL có nghĩa là No SQL, là không đúng – cả hai đều phát âm giống nhau nhưng nghĩa hoàn toàn khác nhau. NoSQL dùng SQL nhưng nó dùng nhiều hơn cả SQL để đạt được mục tiêu của mình.

Như định nghĩa NoSQL Database trên Wikepedia – “A NoSQL database provides a mechanism for storage and retrieval of data that uses looser consistency models than tranditional relational databases.”

NoSQL

Tại sao dùng NoSQL

CSDL quan hệ truyền thống thường xác định trước cấu trúc dữ liệu. Trong khi thế giới đang hướng đến dữ liệu không cấu trúc, chúng ta thấy giới hạn của CSDL quan hệ truyền thống trong trường hợp này. Ví dụ, ngày nay chúng ta có dữ liệu dạng SMS, tập tin âm thanh wave, photo và video. Có sự khó khăn nhỏ để quản lý chúng dùng CSDL quan hệ truyền thống. Mọi người dùng BLOB lưu trữ dữ liệu như trên. BLOB có thể lưu trữ dữ liệu nhưng khi truy xuất hoặc xử lý thì rất chậm. CSDL NoSQL là loại CSDL có thể tiếp nhận dữ liệu không cấu trúc (unstructured), không tổ chức (unorganized) và không dự đoán trước (unpredictable).

Cùng với hỗ trợ dữ liệu không cấu trúc, thuận lợi khác của NoSQL database là hiệu suất cao (high performance) và tính sẵn sàng cao (high availability).

Tính nhất quán cuối cùng

Ngoài ra cần lưu ý CSDL NoSQL không thể cung cấp 100% ACID (Atomicity, Consistency, Isolation, Durability). Mặc dù vậy, nó cung cấp sự thống nhất cuối cùng.

Taxonomy (phân loại)

NoSQL thuộc nhiều loại như: column store, document store, key-value store, và graph database. Chúng ta sẽ nói chi tiết về các loại này sau.

  • Column: Hbase, Cassandra, Accumulo
  • Document: MongoDB, Couchbase, Raven
  • Key-value: Dynamo, Riak, Azure, Redis, Cache, GT.m
  • Graph: Neo4j, Allegro, Virtouso, Bigdata

Hiện đã có hơn 150 CSDL NoSQL và bạn có thể đọc thêm tại đây.

(Theo http://blog.SQLAuthority.com)

Advertisements

Author: dinhnn

Senior software developer, a technical leader. You can be reached at via email to dinhnguyenngoc@gmail.com, via my blog at dinhnguyenngoc.wordpress.com, and on Twitter @dinhnguyenngoc.

One thought on “Big Data #5 – NoSQL là gì?

  1. Pingback: Big Data – Học những điều cơ bản về Big Data trong 21 ngày – bookmark | Đỉnh Nguyễn's Blog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s