Đỉnh NGUYỄN

life's a journey not a destination

Big Data #12 – Các loại CSDL hỗ trợ Big Data – RDBMS và NoSQL

Leave a comment


Ví dụ thực tế

Thử nghĩ rằng, bạn đang dùng Facebook và bạn vừa mới cập nhật thông tin về mối quan hệ hiện tại. Một vài giây sau, cùng thông tin cũng được thấy trên timeline của người yêu cũng như 1 vày người bạn. Sau 1 lúc bạn sẽ thấy cùng thông tin cũng sẵn sàng với những người bạn khác. Một lá sau khi ai đó tìm tìm về mối quan hệ của những người bạn, mối quan hệ của bạn cũng sẽ xuất hiện trong số đó. Bây giờ là câu hỏi – bạn có nghĩ chỉ duy nhất kiến trúc big data thực hiện các thay đổi này? Bạn có nghĩ rằng sự thay đổi tức thì thông tin mối quan hệ với các thành viên khác bởi công nghệ được dùng là big data. Thực tế câu trả lời là Facebook dùng MySQL để tạo các cập nhật khác nhau trên timeline cũng như các sự kiện khác chúng ta làm trên trang chủ. Thật sự khó khăn để lấy từ CSDL hoạt động trong kinh doanh thực tế.

Bây giờ chúng ta xem 1 vài ví dụ về các CSDL hoạt động.

  • Relational Databases (bài viết này)
  • NoSQL Databases (bài viết này)
  • Key-Value Pair Databases (bài viết kế tiếp)
  • Document Databases (bài viết kế tiếp)
  • Columnar Databases (bài viết kế tiếp nữa)
  • Graph Databases (bài viết kế tiếp nữa)
  • Spatial Databases (bài viết kế tiếp nữa)

Các CSDL quan hệ

Trước đây chúng ta đã nói về vai trò của RDBMS trong câu chuyện big data. CSDL quan hệ xuất hiện mọi nơi trong kinh doanh đã rất lâu. Điểm quan trọng của CSDL quan hệ là luôn có cấu trúc dữ liệu có ý nghĩa. Có nhiều loại CSDL quan hệ khác nhau, ví dụ Oracle, SQL Server, MySQL và,… Nếu là CSDL quan hệ mã nguồn mở, MySQL là lựa chọn tốt nhất, tôi cũng gợi ý PostgreSQL nữa.

Các CSDL không quan hệ (NoSQL)

Chúng ta cũng nói về các CSDL không quan hệ trong bài này. NoSQL viết tắt của Not Only SQL Databases. Có nhiều CSDL NoSQL trên thị trường và chọn 1 CSDL phù hợp là 1 thách thức. Có 1 vài thuộc tính để xem xét khi chọn CSDL NoSQL phù hợp mục tiêu sử dụng.

  • Data and Query Model
  • Persistence of Data and Design
  • Eventual Consistency
  • Scalability

Mặc dù tất cả các thuộc tính trên cần quan tâm với bất kỳ CSDL NoSQL nào nhưng thu hút nhất với tôi là Eventual Consistency (tính nhất quán sau cùng).

Eventual Consistency

RDBMS dùng ACID (Atomicity, Consistency, Isolation, Durability) như 1 cơ chế quan trọng để đảm bảo tính nhất quán dữ liệu, trong khi NonRelational DBMS dùng BASE cho cùng mục đích. BASE viết tắt của Basically Available Soft state and Eventual consistency. Tính nhất quán cuối cùng được triển khai rộng rãi trên các hệ thống phân tán.

(continue…)

(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.

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