Truy vấn đọc

Một phần của tài liệu hệ cơ sở dữ liệu phân tán cassandra (Trang 25 - 26)

2. Kiến trúc Cassandra

2.8.2 Truy vấn đọc

Đối với truy vấn đọc, có hai loại truy vấn đọc mà điều phối có thể gửi tới một bản

sao; một truy vấn đọc trực tiếp và một truy vấn sửa đọc nền. Số lượng bản sao được liên hệ bởi một truy vấn đọc trực tiêp được xác định bởi mức độ nhất quán được đưa ra bởi

Client. Truy vấn sửa đọcnền được gửi tới bất cứ bản sao bổ sung nào mà không nhận truy

vấn trực tiếp. Truy vấn sửa đọc đảm bảo rằng hàng được truy vấn được thực hiện nhất

quánở tất cả các bản ghi.

Do đó, trước tiên nút điều phối lên hệ với các bản sao được chỉ định bởi mức độ

nhất quán. Nút điều phối sẽ gửi những truy vấn tới bản sao mà đang phản hồi nhanh

chóng nhất. Những nút được liên hệ sẽ phản hồi với dữ liệu đã truy vấn; nếu nhiều nút được liên hệ, thì các hàngở mỗi bản sao được so sánh trong bộ nhớ để xem liệu chúng có nhất quán. Nếu chúng không nhất quán, thì bản sao có dữ liệu gần dây nhất (dựa vào khoảng thời gian) sẽ được nút điều phối sử dụng để chuyển tiếp kết quả về cho Client.

Để đảm bảo rằng tất cả các bản sao đều có phiên bản gần đây nhất của dữ liệu đọc thường xuyên, thì nút điều phối cũng liên hệ và so sánh dữ liệu ở các bản sao mà không

được truy vấn đọc trực tiếp xem có nhất quán và không bị lỗi thời. Nếu bị lỗi thời thì sẽ được cập nhật những giá trị được ghi gần đây nhất. Tến trình nàyđuợc gọi là sửa đọc. Sửa đọc có thể được cấu hìnhđối với mỗi họ cột ( sử dụng read_repair_chance), và được cho

phép mặc định.

Ví dụ, trong một cụm với số lượng bản sao là 3, và mức độ nhất quán là QUORUM, 2 trong 3 bản sao được liên hệ để thực hiện yêu cầu đọc trực tiếp. Giả định

rằng các bản sao được liên hệ có những phiên bản của các hàng khác nhau, thì bản sao có

nhất quán so với hai bản sao trước, và nếu cần thiết, bản sao gần đây nhất sẽ sinh ra một

lệnh ghi để cập nhật những phiên bản lỗi thời.

Một phần của tài liệu hệ cơ sở dữ liệu phân tán cassandra (Trang 25 - 26)

Tải bản đầy đủ (PDF)

(50 trang)