Tôi quan tâm đến việc triển khai một kiến trúc có hai cơ sở dữ liệu cho một hoạt động đọc và một cho viết. Tôi chưa bao giờ thực hiện một cái gì đó như thế này và đã luôn luôn xây dựng cơ sở dữ liệu duy nhất, hệ thống rất bình thường vì vậy tôi không khá chắc chắn nơi để bắt đầu. Tôi có một vài phần cho câu hỏi này.
1. Điều gì sẽ là tài nguyên tốt để tìm hiểu thêm về kiến trúc này?
2. Có phải chỉ là vấn đề sao chép giữa hai lược đồ giống hệt nhau, hay các lược đồ của bạn sẽ khác nhau tùy thuộc vào các hoạt động, bình thường hóa có khác nhau không?
3. Làm cách nào để đảm bảo rằng dữ liệu được ghi vào một cơ sở dữ liệu có sẵn ngay lập tức để đọc từ cơ sở dữ liệu thứ hai?Làm cách nào để triển khai các cơ sở dữ liệu riêng biệt cho các hoạt động đọc và viết?
Mọi trợ giúp, mẹo, tài nguyên khác sẽ được đánh giá cao. Cảm ơn.
EDIT
Sau khi một số nghiên cứu tôi đã tìm thấy bài viết này mà tôi tìm thấy rất nhiều thông tin cho những người quan tâm ..
http://www.codefutures.com/database-sharding/
tôi thấy highscalability này article rất nhiều thông tin
Tôi rất tò mò là tại sao. Đừng hiểu lầm tôi, tôi không cho rằng đây là một ý tưởng tồi, nhưng tôi chưa bao giờ nghe về một mẫu thiết kế như vậy, và tôi rất tò mò về lý do tại sao đây sẽ là một mô hình tốt để thực hiện. (Tất nhiên, tôi nhận ra đây có thể là một kiểu thiết kế chung mà tôi chưa bao giờ gặp trước đây.) – David
Bạn có nghĩ nhiều hơn một cơ sở dữ liệu để sử dụng bình thường không, và đó là chỉ đọc cho mục đích báo cáo? Bởi vì đó là một kịch bản phổ biến hơn. Có một cơ sở dữ liệu để truy cập chỉ ghi có hầu như không có trường hợp sử dụng khả thi. –
Nếu các cơ sở dữ liệu được đồng bộ hóa, tôi không chắc chúng là cơ sở dữ liệu riêng biệt. Bạn có thể muốn đọc về một cái gì đó giống như hệ thống tập tin journaling. – WhirlWind