Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0

27.1. So sánh cách đọc kèo bóng đá khác nhau

Failover đĩa được chia sẻ

Chuyển đổi đĩa được chia sẻ tránh chi phí đồng bộ hóa bằng cách chỉ có một bản sao của cơ sở dữ cách đọc kèo bóng đá. 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ữ cách đọc kèo bóng đá 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ữ cách đọc kèo bóng đá như thể nó đang phục hồi sau sự cố cơ sở dữ cách đọc kèo bóng đá. Điều này cho phép chuyển đổi nhanh không bị mất dữ cách đọc kèo bóng đá.

10338_10510POSIXHà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, cách đọc kèo bóng đá 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.

Hệ thống tệp (thiết bị chặn) sao chép

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ả cách đọc kèo bóng đá 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 cách đọc kèo bóng đá bản sao trên chính.DRBDlà một giải pháp sao chép hệ thống tệp phổ biến cho Linux.

Viết hàng nhật ký vận chuyển

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) Hồ sơ. 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ữ cách đọc kèo bóng đá của máy chủ chính và có thể nhanh chóng tạo ra máy chủ cơ sở dữ cách đọc kèo bóng đá 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ữ cách đọc kèo bóng đá.

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

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ủ cách đọc kèo bóng đá.PostgreSQLSao chép logic xây dựng một luồng sửa đổi dữ liệu logic từ Wal. Sao chép logic cho phép sao chép cách đọc kèo bóng đá thay đổi dữ liệu trên cơ sở mỗi bảng. Ngoài ra, một máy chủ đang xuất bản cách đọc kèo bóng đá thay đổi của riêng mình cũng có thể đăng ký cách đọc kèo bóng đá thay đổi từ một máy chủ khác, cho phép dữ liệu chảy theo nhiều hướng. Để biết thêm thông tin về sao chép logic, xemChương 31. Thông qua giao diện giải 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ự.

Bản sao chính dựa trên kích hoạt

13638_14090

slony-ilà một ví dụ về loại sao chép này, với độ chi tiết trên mỗi bảng 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ữ cách đọc kèo bóng đá trong khi thất bại.

Phần mềm trung gian sao chép dựa trên SQL

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ả cách đọc kèo bóng đá máy chủ. Mỗi máy chủ hoạt động độc lập. cách đọc kèo bóng đá truy vấn đọc-write phải được gửi đến tất cả cách đọc kèo bóng đá máy chủ, để mọi máy chủ nhận được bất kỳ thay đổi nào. Nhưng cách đọc kèo bóng đá 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 cách đọc kèo bóng đá truy vấn chỉ đơn giản là phát không được sửa đổi, cách đọc kèo bóng đá chức năng nhưngẫu nhiên (), current_timestampvà cách đọc kèo bóng đá chuỗi có thể có cách đọc kèo bóng đá giá trị khác nhau trên cách đọc kèo bóng đá 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ì cách đọc kèo bóng đá 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 cách đọc kèo bóng đá giá trị đó từ một nguồn duy nhất và sau đó sử dụng cách đọc kèo bóng đá giá trị đó trong cách đọc kèo bóng đá truy vấn ghi. Cũng phải cẩn thận rằng tất cả cách đọc kèo bóng đá giao dịch đều cam kết hoặc hủy bỏ trên tất cả cách đọc kèo bóng đá máy chủ, có lẽ sử dụng cam kết hai pha (Chuẩn bị giao dịchCam kết đã chuẩn bị).pgpool-iiVonsten liên tụclà ví dụ về loại sao chép này.

Bản sao đa điểm không đồng bộ

15986_16440

Sao chép đa nhân đồng bộ

Trong bản sao đa nhân đồng bộ, mỗi máy chủ có thể chấp nhận yêu cầu ghi và dữ liệu được sửa đổi được truyền từ máy chủ gốc sang mọi máy chủ khác trước khi mỗi giao dịch thực hiện. Hoạt động ghi nặng có thể gây khóa quá mức và thực hiện sự chậm trễ, dẫn đến hiệu suất kém. Đọc cách đọc kèo bóng đá yêu cầu có thể được gửi đến bất kỳ máy chủ nào. Một số triển khai sử dụng đĩa chung để giảm chi phí giao tiếp. Sao chép đa nhân đồng bộ là tốt nhất cho hầu hết cách đọc kèo bóng đá khối lượng công việc đọc, mặc dù lợi thế lớn của nó là bất kỳ máy chủ nào cũng có thể chấp nhận yêu cầu ghi-không cần phải phân vùng khối lượng công việc giữa cách đọc kèo bóng đá máy chủ chính và dự phòng và vì cách đọc kèo bóng đá thay đổi dữ liệu được gửi từ máy chủ này sang máy chủ khác, không có vấn đề gì với cách đọc kèo bóng đá chức năng không xác định nhưngẫ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ịchCam 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.1Tóm tắt các khả năng của cách đọc kèo bóng đá khác nhau được liệt kê ở trên.

18241_18330

tính năng Đĩa được chia sẻ hệ thống tệp repl. Viết nhật ký mới Đ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. Londiste, Slony pgpool-ii Bucardo
Comm. phương pháp Đĩa được chia sẻ khối đĩa Wal Giải 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ờ đợi 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ữ cách đọc kèo bóng đá 21947_21961 21996_22010
Bản sao Chấp nhận cách đọc kèo bóng đá truy vấn chỉ đọc Với chế độ chờ nóng
22638_22661
Không cần giải quyết xung đột

23487_23557

Phân vùng dữ cách đọc kèo bóng đá

Phân vùng dữ liệu chia cách đọc kèo bóng đá bảng vào bộ dữ liệu. Mỗi bộ có thể được sửa đổi chỉ bằng một máy chủ. Ví dụ: dữ liệu có thể được phân vùng bởi cách đọc kèo bóng đá văn phòng, ví dụ: London và Paris, với một máy chủ trong mỗi văn phòng. Nếu cách đọc kèo bóng đá truy vấn kết hợp dữ liệu London và Paris là cần thiết, một ứng dụng có thể truy vấn cả máy chủ hoặc sao chép chính/dự phòng có thể được sử dụng để giữ một bản sao chỉ đọc dữ liệu của văn phòng khác trên mỗi máy chủ.

Thực thi truy vấn song song nhiều máy chủ

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 cách đọc kèo bóng đá 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 ra cách đọc kèo bóng đá 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.

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài cách đọc kèo bóng đá 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 cách đọc kèo bóng đá.