- Регистрация
- 1 Мар 2015
- Сообщения
- 6,375
- Баллы
- 155
Hello mọi người, Slao Đây!
Bài viết trước chúng ta đã được tiếp cận với 2 phương pháp là Cache aside và ReadThrough
nếu mà chưa đọc thì mọi người hãy vào đây nhé
Write Around
Write Around là gì và cách hoạt động
"Write Around", khi sử dụng thì dữ liệu mới được viết, nó được ghi trực tiếp vào nguồn dữ liệu chính mà không cập nhật dữ liệu đó vào cache ngay lập tức.
Như trong ảnh đã miêu tả về quá trình cache của Write Around gồm các bước theo thứ tự
Dữ liệu mới hoặc cập nhật được ghi trực tiếp vào nguồn dữ liệu chính, bỏ qua việc ghi vào cache.
Không cập nhật cache ngay sau khi ghi, giúp giảm tải trên bộ nhớ cache và tăng hiệu suất ghi dữ liệu.
Khi có yêu cầu đọc dữ liệu, hệ thống kiểm tra trong cache. Nếu không có, dữ liệu mới từ nguồn chính sẽ được tải vào cache.
Dữ liệu được cập nhật vào cache từ nguồn chính, sẵn sàng cho các yêu cầu đọc tiếp theo.
Ưu điểm
Trường hợp sử dụng: Hệ thống cần tối ưu hiệu suất ghi, giảm bớt việc sử dụng cache cho dữ liệu không thường xuyên được truy cập.
Ví dụ: Một hệ thống lưu trữ dữ liệu lớn, nơi dữ liệu mới được ghi vào cơ sở dữ liệu nhưng chỉ được cache khi có yêu cầu đọc, nhằm tối ưu hóa không gian cache và hiệu suất.
Write back
Write back là gì và cách hoạt động
Write back (còn được gọi là Write behind) là chiến lược caching mà dữ liệu được viết vào cache trước và sau đó được đồng bộ hóa với nguồn dữ liệu chính sau một khoảng thời gian nhất định hoặc dựa trên một sự kiện nhất định.
Như trong ảnh đã miêu tả về quá trình cache của Write Back gồm các bước theo thứ tự
Khi có yêu cầu ghi dữ liệu, dữ liệu mới hoặc được cập nhật được ghi vào cache trước.
Dữ liệu trong cache được đánh dấu là "đã thay đổi" hoặc "dirty", để biểu thị rằng nó chưa được đồng bộ hóa với nguồn dữ liệu chính.
Dữ liệu được đồng bộ hóa với nguồn dữ liệu chính dựa trên một chính sách định kỳ hoặc sự kiện cụ thể (ví dụ, cache đầy hoặc sau một khoảng thời gian nhất định).
Sau khi dữ liệu được đồng bộ hóa thành công với nguồn dữ liệu chính, dấu "dirty" được gỡ bỏ.
Ưu điểm
Trường hợp sử dụng: Ứng dụng đòi hỏi hiệu suất ghi cao và có thể chấp nhận được độ trễ trong việc đồng bộ hóa dữ liệu với nguồn dữ liệu chính.
Ví dụ: Hệ thống ghi nhật ký (logging) nơi dữ liệu được ghi nhanh chóng vào cache và sau đó đồng bộ hóa với cơ sở dữ liệu log một cách định kỳ, giảm độ trễ ghi và tối ưu hóa hiệu suất.
Write through
Write through là gì và cách hoạt động
Write Through là một kỹ thuật quản lý cache trong đó dữ liệu được ghi vào cả cache và nguồn dữ liệu chính đồng thời.
Như trong ảnh đã miêu tả về quá trình cache của Write Back gồm các bước theo thứ tự
Khi có yêu cầu ghi dữ liệu, hệ thống sẽ thực hiện ghi dữ liệu vào cả cache và nguồn dữ liệu chính. Quá trình này đảm bảo rằng dữ liệu trong cache luôn đồng bộ với nguồn dữ liệu chính.
Dữ liệu mới hoặc được cập nhật ghi vào cache. Điều này giúp đảm bảo rằng các yêu cầu đọc tiếp theo cho dữ liệu đó sẽ truy cập nhanh chóng từ cache mà không cần phải truy vấn nguồn dữ liệu chính.
Đồng thời, dữ liệu cũng được ghi vào nguồn dữ liệu chính. Điều này đảm bảo tính nhất quán và độ tin cậy của dữ liệu, vì mọi thay đổi đều được phản ánh ngay lập tức trong cả hai vị trí.
Trường hợp sử dụng: Các ứng dụng cần đảm bảo dữ liệu luôn được cập nhật và đồng bộ giữa cache và nguồn dữ liệu chính một cách ngay lập tức.
Ví dụ: Hệ thống xử lý giao dịch tài chính, nơi cần đảm bảo dữ liệu giao dịch được cập nhật tức thì vào cả cache và cơ sở dữ liệu để đảm bảo tính nhất quán và độ tin cậy của dữ liệu.
Tổng kết
Bài viết trước chúng ta đã được tiếp cận với 2 phương pháp là Cache aside và ReadThrough
nếu mà chưa đọc thì mọi người hãy vào đây nhé
Write Around
Write Around là gì và cách hoạt động
"Write Around", khi sử dụng thì dữ liệu mới được viết, nó được ghi trực tiếp vào nguồn dữ liệu chính mà không cập nhật dữ liệu đó vào cache ngay lập tức.
Như trong ảnh đã miêu tả về quá trình cache của Write Around gồm các bước theo thứ tự
- Bước 1: Yêu cầu ghi dữ liệu
Dữ liệu mới hoặc cập nhật được ghi trực tiếp vào nguồn dữ liệu chính, bỏ qua việc ghi vào cache.
- Bước 2: Bỏ qua cache
Không cập nhật cache ngay sau khi ghi, giúp giảm tải trên bộ nhớ cache và tăng hiệu suất ghi dữ liệu.
- Bước 3: Yêu cầu đọc dữ liệu
Khi có yêu cầu đọc dữ liệu, hệ thống kiểm tra trong cache. Nếu không có, dữ liệu mới từ nguồn chính sẽ được tải vào cache.
- Bước 4: Cập nhật cache
Dữ liệu được cập nhật vào cache từ nguồn chính, sẵn sàng cho các yêu cầu đọc tiếp theo.
Ưu điểm
- Giảm độ trễ: Giảm bớt việc ghi dữ liệu không cần thiết vào cache bằng cách loại bỏ bước đồng bộ hóa dữ liệu giữa cache và nguồn dữ liệu chính, tiết kiệm tài nguyên cache cho dữ liệu thường xuyên được truy cập.
- Rủi ro về độ trễ đọc: Có thể gây ra độ trễ khi đọc dữ liệu lần đầu tiên sau khi nó được ghi, do dữ liệu phải được tải từ nguồn dữ liệu chính vào cache.
Trường hợp sử dụng: Hệ thống cần tối ưu hiệu suất ghi, giảm bớt việc sử dụng cache cho dữ liệu không thường xuyên được truy cập.
Ví dụ: Một hệ thống lưu trữ dữ liệu lớn, nơi dữ liệu mới được ghi vào cơ sở dữ liệu nhưng chỉ được cache khi có yêu cầu đọc, nhằm tối ưu hóa không gian cache và hiệu suất.
Write back
Write back là gì và cách hoạt động
Write back (còn được gọi là Write behind) là chiến lược caching mà dữ liệu được viết vào cache trước và sau đó được đồng bộ hóa với nguồn dữ liệu chính sau một khoảng thời gian nhất định hoặc dựa trên một sự kiện nhất định.
Như trong ảnh đã miêu tả về quá trình cache của Write Back gồm các bước theo thứ tự
- Bước 1: Yêu cầu ghi dữ liệu
Khi có yêu cầu ghi dữ liệu, dữ liệu mới hoặc được cập nhật được ghi vào cache trước.
- Bước 2: Đánh dấu dữ liệu
Dữ liệu trong cache được đánh dấu là "đã thay đổi" hoặc "dirty", để biểu thị rằng nó chưa được đồng bộ hóa với nguồn dữ liệu chính.
- Bước 3: Đồng bộ hóa dữ liệu
Dữ liệu được đồng bộ hóa với nguồn dữ liệu chính dựa trên một chính sách định kỳ hoặc sự kiện cụ thể (ví dụ, cache đầy hoặc sau một khoảng thời gian nhất định).
- Bước 4: Xác nhận đồng bộ
Sau khi dữ liệu được đồng bộ hóa thành công với nguồn dữ liệu chính, dấu "dirty" được gỡ bỏ.
Ưu điểm
- Giảm độ trễ ghi: Cải thiện đáng kể hiệu suất ghi bằng cách giảm độ trễ, vì việc ghi vào cache nhanh hơn nhiều so với ghi vào nguồn dữ liệu chính.
- Tối ưu hóa tài nguyên : Giảm tải trên nguồn dữ liệu chính, cho phép hệ thống xử lý hiệu quả hơn các yêu cầu khác.
- Rủi ro mất dữ liệu: Nếu hệ thống gặp sự cố trước khi dữ liệu được đồng bộ hóa, có nguy cơ mất dữ liệu chưa được lưu trữ vào nguồn dữ liệu chính.
- Quản lí phức tạp : Yêu cầu cơ chế quản lý cache và đồng bộ hóa dữ liệu hiệu quả để đảm bảo tính nhất quán và độ tin cậy của dữ liệu.
Trường hợp sử dụng: Ứng dụng đòi hỏi hiệu suất ghi cao và có thể chấp nhận được độ trễ trong việc đồng bộ hóa dữ liệu với nguồn dữ liệu chính.
Ví dụ: Hệ thống ghi nhật ký (logging) nơi dữ liệu được ghi nhanh chóng vào cache và sau đó đồng bộ hóa với cơ sở dữ liệu log một cách định kỳ, giảm độ trễ ghi và tối ưu hóa hiệu suất.
Write through
Write through là gì và cách hoạt động
Write Through là một kỹ thuật quản lý cache trong đó dữ liệu được ghi vào cả cache và nguồn dữ liệu chính đồng thời.
Như trong ảnh đã miêu tả về quá trình cache của Write Back gồm các bước theo thứ tự
- Bước 1: Yêu cầu ghi dữ liệu
Khi có yêu cầu ghi dữ liệu, hệ thống sẽ thực hiện ghi dữ liệu vào cả cache và nguồn dữ liệu chính. Quá trình này đảm bảo rằng dữ liệu trong cache luôn đồng bộ với nguồn dữ liệu chính.
- Bước 2: Ghi vào cache
Dữ liệu mới hoặc được cập nhật ghi vào cache. Điều này giúp đảm bảo rằng các yêu cầu đọc tiếp theo cho dữ liệu đó sẽ truy cập nhanh chóng từ cache mà không cần phải truy vấn nguồn dữ liệu chính.
- Bước 3: Ghi vào nguồn dữ liệu chính
Đồng thời, dữ liệu cũng được ghi vào nguồn dữ liệu chính. Điều này đảm bảo tính nhất quán và độ tin cậy của dữ liệu, vì mọi thay đổi đều được phản ánh ngay lập tức trong cả hai vị trí.
Trường hợp sử dụng: Các ứng dụng cần đảm bảo dữ liệu luôn được cập nhật và đồng bộ giữa cache và nguồn dữ liệu chính một cách ngay lập tức.
Ví dụ: Hệ thống xử lý giao dịch tài chính, nơi cần đảm bảo dữ liệu giao dịch được cập nhật tức thì vào cả cache và cơ sở dữ liệu để đảm bảo tính nhất quán và độ tin cậy của dữ liệu.
Tổng kết
- Bộ nhớ đệm (cache) là một phần cứng hoặc phần mềm lưu trữ dữ liệu tại các điểm truy cập nhanh hơn.
- Caching là quá trình lưu trữ tạm thời dữ liệu vào cache để tăng tốc độ truy cập dữ liệu sau này.
- Có 5 chiến lược caching phổ biến chia làm hai loại đọc và ghi, bao gồm: cache aside, read through, write around, write back và write through. Mỗi chiến lược có những ưu và nhược điểm riêng, việc lựa chọn chiến lược phù hợp phụ thuộc vào yêu cầu cụ thể của hệ thống và ứng dụng.