PostgreSQL: soi kèo bóng đá | |||
---|---|---|---|
prev | UP | Chapter 25. High Availability, Load Balancing, and Replication | Tiếp theo |
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ữ 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 tỷ lệ kèo bóng đá tối nay 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 17.2.2). 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, tỷ lệ kèo bóng đá tối nay 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ả tỷ lệ kèo bóng đá tối nay 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ột 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ự như trên Master.DRBDlà một tỷ lệ kèo bóng đá tối nay 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 ( (Wal11582_11833
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 25.2) hoặc sao chép phát trực tuyến (xemPhần 25.2.5) hoặc kết hợp cả hai. Để biết thông tin về chế độ chờ nóng, xemPhần 25.5.
12228_12530
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 tuyên bố, 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ả tỷ lệ kèo bóng đá tối nay máy chủ. Mỗi máy chủ hoạt động độc lập. tỷ lệ kèo bóng đá tối nay truy vấn đọc-write phải được gửi đến tất cả tỷ lệ kèo bóng đá tối nay máy chủ, để mọi máy chủ nhận được bất kỳ thay đổi nào. Nhưng tỷ lệ kèo bóng đá tối nay 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 tỷ lệ kèo bóng đá tối nay truy vấn chỉ đơn giản là phát không được sửa đổi, tỷ lệ kèo bóng đá tối nay chức năng nhưngẫu nhiên ()
, current_timestamp
và tỷ lệ kèo bóng đá tối nay chuỗi có thể có tỷ lệ kèo bóng đá tối nay giá trị khác nhau trên tỷ lệ kèo bóng đá tối nay 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ì tỷ lệ kèo bóng đá tối nay truy vấn SQL được phát (và không phải là tỷ lệ kèo bóng đá tối nay hàng được sửa đổi 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 truy vấn tỷ lệ kèo bóng đá tối nay giá trị đó từ một máy chủ và sau đó sử dụng tỷ lệ kèo bóng đá tối nay giá trị đó trong tỷ lệ kèo bóng đá tối nay truy vấn ghi. Một tùy chọn khác là sử dụng tùy chọn sao chép này với thiết lập chính truyền thống, tức là, tỷ lệ kèo bóng đá tối nay truy vấn sửa đổi dữ liệu chỉ được gửi đến chủ và được truyền tới tỷ lệ kèo bóng đá tối nay máy chủ dự phòng thông qua sao chép chính, không phải bởi phần mềm trung gian sao chép. Cũng phải cẩn thận rằng tất cả tỷ lệ kèo bóng đá tối nay giao dịch đều cam kết hoặc hủy bỏ trên tất cả tỷ lệ kèo bóng đá tối nay máy chủ, có lẽ sử dụng cam kết hai pha (PostgreSQL: Tài liệu:vàPostgreSQL: Tài liệu:).pgpool-iivàVonsten liên tụclà ví dụ về loại sao chép này.
Đối với tỷ lệ kèo bóng đá tối nay máy chủ không được kết nối thường xuyên hoặc có 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 tỷ lệ kèo bóng đá tối nay 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 tỷ lệ kèo bóng đá tối nay máy chủ khác để xác định tỷ lệ kèo bóng đá tối nay giao dịch mâu thuẫn. tỷ lệ kèo bóng đá tối nay xung đột có thể được giải quyết bằng người dùng hoặc tỷ lệ kèo bóng đá tối nay quy tắc giải quyết xung đột. Bucardo là một ví dụ về loại sao chép này.
14940_15690ngẫu nhiên ()
.
PostgreSQLKhông cung cấp loại sao chép này, mặc dùPostgreSQLCam kết hai pha (PostgreSQL: Tài liệu:vàPostgreSQL: Tài liệu:) 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.
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 tỷ lệ kèo bóng đá tối nay 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.
Bảng 25-1Tóm tắt các khả năng của tỷ lệ kèo bóng đá tối nay nhau được liệt kê ở trên.
Bảng 25-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 | Failover đĩa được chia sẻ | Sao chép hệ thống tệp | Vận chuyển nhật ký giao dịch | Bản sao chính dựa trên kích hoạt | Phần mềm trung gian sao chép dựa trên tuyên bố | Bản sao đa điểm không đồng bộ | Bản sao đa nhân đồng bộ |
---|---|---|---|---|---|---|---|
Thực hiện phổ biến nhất | NAS | 17298_17304 | phát trực tuyến. | slony | pgpool-ii | Bucardo | |
Phương tỷ lệ kèo bóng đá tối nay giao tiếp | Đĩa được chia sẻ | khối đĩa | Wal | 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ó máy chủ chính trên đầu | • | • | • | ||||
Không chờ nhiều máy chủ | • | 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 | • | • | ||
Chứng nhận Chấp nhận tỷ lệ kèo bóng đá tối nay truy vấn chỉ đọc | với HOT | • | • | • | • | ||
19287_19310 | • | • | • | ||||
Không cần tỷ lệ kèo bóng đá tối nay quyết xung đột | • | • | • | • | • | • |
Có một vài giải pháp không phù hợp với tỷ lệ kèo bóng đá tối nay loại trên:
19930_20334
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 tỷ lệ kèo bóng đá tối nay 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ụ.