Thứ Ba, 26 tháng 1, 2016

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



Leave a comment
 
 
 
 
 
 
3 Votes

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)

0 nhận xét: