Chuyển đổi đĩa chung tránh chi phí đồng bộ hóa bằng cách chỉ có một bản sao của cơ sở dữ liệu. Nó sử dụng một mảng đĩa duy nhất được chia sẻ bởi nhiều máy chủ. Nếu máy chủ cơ sở dữ liệu chính không thành công, máy chủ dự phòng có thể gắn và khởi động cơ sở dữ liệu như thể nó đang phục hồi sau sự cố cơ sở dữ liệu. Điều này cho phép chuyển đổi nhanh không bị mất dữ liệu.
Chức năng phần cứng được chia sẻ là phổ biến trong kèo bóng đá euro thiết bị lưu trữ mạng. Sử dụng hệ thống tệp mạng cũng có thể, mặc dù phải cẩn thận mà hệ thống tệp có đầy đủPOSIXHành vi (xemPhần 19.2.2.1). Một hạn chế đáng kể của phương pháp này là nếu mảng đĩa được chia sẻ không thành công hoặc bị hỏng, kèo bóng đá euro máy chủ chính và dự phòng đều không hoạt động. Một vấn đề khác là máy chủ dự phòng không bao giờ được truy cập lưu trữ được chia sẻ trong khi máy chủ chính đang chạy.
Phiên bản được sửa đổi của chức năng phần cứng được chia sẻ là sao chép hệ thống tệp, trong đó tất cả kèo bóng đá euro thay đổi đối với hệ thống tệp được nhân đôi cho một hệ thống tệp nằm trên máy tính khác. Hạn chế duy nhất là phải phản chiếu phải được thực hiện theo cách đảm bảo máy chủ dự phòng có một bản sao nhất quán của hệ thống tệp - cụ thể, ghi vào chế độ chờ phải được thực hiện theo cùng thứ tự với kèo bóng đá euro bản sao trên chính.DRBDlà một kèo bóng đá euro sao chép hệ thống tệp phổ biến cho Linux.
Máy chủ dự phòng ấm và nóng có thể được giữ hiện tại bằng cách đọc một luồng nhật ký ghi ( (Wal) Bản ghi. Nếu máy chủ chính không thành công, dự phòng chứa hầu hết tất cả dữ liệu của máy chủ chính và có thể nhanh chóng tạo ra máy chủ cơ sở dữ liệu chính mới. Điều này có thể đồng bộ hoặc không đồng bộ và chỉ có thể được thực hiện cho toàn bộ máy chủ cơ sở dữ liệu.
Một máy chủ dự phòng có thể được triển khai bằng cách sử dụng vận chuyển nhật ký dựa trên tệp (Phần 27.2) hoặc sao chép phát trực tuyến (xemPhần 27.2.5) hoặc kết hợp cả hai. Để biết thông tin về chế độ chờ nóng, xemPhần 27.4.
Sao chép logic cho phép máy chủ cơ sở dữ liệu gửi luồng sửa đổi dữ liệu đến máy chủ kèo bóng đá euro.PostgreSQL12768_13135Chương 31. Thông qua giao diện kèo bóng đá euro mã logic (Chương 49), Tiện ích mở rộng của bên thứ ba cũng có thể cung cấp chức năng tương tự.
13589_14041
slony-ilà một ví dụ về loại sao chép này, với độ chi tiết trên mỗi bàn và hỗ trợ cho nhiều máy chủ dự phòng. Vì nó cập nhật máy chủ dự phòng không đồng bộ (theo đợt), nên có thể mất dữ liệu trong khi thất bại.
Với phần mềm trung gian sao chép dựa trên SQL, một chương trình chặn mọi truy vấn SQL và gửi nó đến một hoặc tất cả kèo bóng đá euro máy chủ. Mỗi máy chủ hoạt động độc lập. kèo bóng đá euro truy vấn đọc-write phải được gửi đến tất cả kèo bóng đá euro máy chủ, để mọi máy chủ nhận được bất kỳ thay đổi nào. Nhưng kèo bóng đá euro truy vấn chỉ đọc có thể được gửi đến chỉ một máy chủ, cho phép khối lượng công việc đọc được phân phối giữa chúng.
Nếu kèo bóng đá euro truy vấn chỉ đơn giản là phát không được sửa đổi, kèo bóng đá euro chức năng nhưngẫu nhiên ()
, current_timestamp
, và kèo bóng đá euro chuỗi có thể có kèo bóng đá euro giá trị khác nhau trên kèo bóng đá euro máy chủ khác nhau. Điều này là do mỗi máy chủ hoạt động độc lập và vì kèo bóng đá euro truy vấn SQL được phát thay vì thay đổi dữ liệu thực tế. Nếu điều này là không thể chấp nhận được, phần mềm trung gian hoặc ứng dụng phải xác định kèo bóng đá euro giá trị đó từ một nguồn duy nhất và sau đó sử dụng kèo bóng đá euro giá trị đó trong kèo bóng đá euro truy vấn ghi. Cũng phải cẩn thận rằng tất cả kèo bóng đá euro giao dịch đều cam kết hoặc hủy bỏ trên tất cả kèo bóng đá euro máy chủ, có lẽ sử dụng cam kết hai pha (15515_15536vàCam kết đã chuẩn bị).pgpool-iivàVonsten liên tụclà ví dụ về loại sao chép này.
Đối với kèo bóng đá euro máy chủ không được kết nối thường xuyên hoặc có kèo bóng đá euro liên kết giao tiếp chậm, như máy tính xách tay hoặc máy chủ từ xa, việc giữ dữ liệu nhất quán giữa kèo bóng đá euro máy chủ là một thách thức. Sử dụng sao chép multimaster không đồng bộ, mỗi máy chủ hoạt động độc lập và giao tiếp định kỳ với kèo bóng đá euro máy chủ khác để xác định kèo bóng đá euro giao dịch mâu thuẫn. kèo bóng đá euro xung đột có thể được giải quyết bằng người dùng hoặc kèo bóng đá euro quy tắc giải quyết xung đột. Bucardo là một ví dụ về loại sao chép này.
16505_17256ngẫu nhiên ()
.
PostgreSQLKhông cung cấp loại sao chép này, mặc dùPostgreSQLCam kết hai pha (Chuẩn bị giao dịchvàCam kết đã chuẩn bị) có thể được sử dụng để thực hiện điều này trong mã ứng dụng hoặc phần mềm trung gian.
Bảng 27.118039_18108
Bảng 27.1. Tính khả dụng cao, cân bằng tải và ma trận tính năng sao chép
tính năng | Đĩa được chia sẻ | hệ thống tệp repl. | 18907_18933 | Đang lại logic. | repger dựa trên kích hoạt. | SQL REPLE. Trung bình | Async. Mm repl. | Đồng bộ hóa. Mm repl. |
---|---|---|---|---|---|---|---|---|
Ví dụ phổ biến | NAS | DRBD | Phát trực tuyến tích hợp. | Đang lại logic tích hợp, plogical | Londiste, Slony | pgpool-ii | Bucardo | |
Comm. phương kèo bóng đá euro | Đĩa được chia sẻ | khối đĩa | Wal | kèo bóng đá euro mã logic | Hàng bảng | SQL | Hàng bảng | Hàng bảng và khóa hàng |
Không yêu cầu phần cứng đặc biệt | • | • | • | • | • | • | • | |
Cho phép nhiều máy chủ chính | • | • | • | • | ||||
Không có chi phí trên chính | • | • | • | • | ||||
Không chờ nhiều máy chủ | • | với đồng bộ hóa | với đồng bộ hóa | • | • | |||
Thất bại chính sẽ không bao giờ mất dữ liệu | • | • | với đồng bộ hóa trên | với đồng bộ hóa trên | • | • | ||
Bản sao Chấp nhận kèo bóng đá euro truy vấn chỉ đọc | Với chế độ chờ nóng | • | • | • | • | • | ||
22589_22612 | • | • | • | • | ||||
Không cần kèo bóng đá euro quyết xung đột | • | • | • | • | • | • |
Có một vài giải pháp không phù hợp với kèo bóng đá euro loại trên:
23651_24056
Nhiều giải pháp trên cho phép nhiều máy chủ xử lý nhiều truy vấn, nhưng không cho phép một truy vấn sử dụng nhiều máy chủ để hoàn thành nhanh hơn. Giải pháp này cho phép nhiều máy chủ hoạt động đồng thời trên một truy vấn duy nhất. Nó thường được thực hiện bằng cách chia dữ liệu giữa kèo bóng đá euro máy chủ và mỗi máy chủ thực hiện một phần của truy vấn và trả lại kết quả cho một máy chủ trung tâm nơi chúng được kết hợp và trả lại cho người dùng. Điều này có thể được thực hiện bằng cách sử dụngPL/Proxybộ công cụ.
cũng cần lưu ý rằng vìPostgreSQLlà nguồn mở và dễ dàng mở rộng, một số công ty đã thực hiệnPostgreSQLvà tạo kèo bóng đá euro nguồn đóng cửa thương mại với khả năng chuyển đổi dự phòng, sao chép và cân bằng tải duy nhất. Chúng không được thảo luận ở đây.
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.