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 / 8.4 / 8.3 / 8.2
Tài tỷ lệ kèo bóng đá tối nay này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng tỷ lệ kèo bóng đá tối nay trang chohiện tạiPhiên bản hoặc một trong tỷ lệ kèo bóng đá tối nay phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

29.1. Độ tỷ lệ kèo bóng đá tối nay

Độ tỷ lệ kèo bóng đá tối nay là một thuộc tính quan trọng của bất kỳ hệ thống cơ sở dữ liệu nghiêm trọng nào vàPostgreSQLLàm mọi thứ có thể để đảm bảo hoạt động đáng tỷ lệ kèo bóng đá tối nay. Một khía cạnh của hoạt động đáng tỷ lệ kèo bóng đá tối nay là tất cả dữ liệu được ghi lại bởi một giao dịch đã cam kết nên được lưu trữ trong một khu vực không biến động an toàn khỏi mất điện, lỗi hệ điều hành và lỗi phần cứng (tất nhiên, ngoại trừ việc không biến đổi khu vực không biến động). Viết thành công dữ liệu vào lưu trữ vĩnh viễn của máy tính (ổ đĩa hoặc tương đương) thường đáp ứng yêu cầu này. Trên thực tế, ngay cả khi một máy tính bị hư hỏng nghiêm trọng, nếu các ổ đĩa tồn tại, chúng có thể được chuyển sang một máy tính khác với phần cứng tương tự và tất cả các giao dịch đã cam kết sẽ vẫn còn nguyên vẹn.

Trong khi buộc dữ tỷ lệ kèo bóng đá tối nay vào đĩa đĩa định kỳ có vẻ như là một hoạt động đơn giản, thì không phải vậy. Bởi vì các ổ đĩa chậm hơn đáng kể so với bộ nhớ chính và CPU, một số lớp bộ nhớ đệm tồn tại giữa bộ nhớ chính của máy tính và đĩa đĩa. Đầu tiên, có bộ đệm bộ đệm của hệ điều hành, bộ nhớ cache thường yêu cầu các khối đĩa và kết hợp ghi đĩa. May mắn thay, tất cả các hệ điều hành đều cung cấp cho các ứng dụng một cách để buộc ghi từ bộ đệm bộ đệm vào đĩa vàPostgreSQLSử dụng tỷ lệ kèo bóng đá tối nay tính năng đó. (Xemwal_sync_methodtham số để điều chỉnh cách thực hiện điều này.)

Tiếp theo, có thể có bộ đệm trong bộ điều khiển ổ đĩa; Điều này đặc biệt phổ biến trênRAIDThẻ bộ điều khiển. tỷ lệ kèo bóng đá tối nay số bộ nhớ cache này làViết qua, có nghĩa là tỷ lệ kèo bóng đá tối nay được gửi đến ổ đĩa ngay khi chúng đến. Những người khác làViết-back, có nghĩa là dữ liệu được gửi đến ổ đĩa sau đó. Bộ nhớ cache như vậy có thể là một mối nguy hiểm đáng tỷ lệ kèo bóng đá tối nay vì bộ nhớ trong bộ đệm bộ điều khiển đĩa dễ biến động và sẽ mất nội dung của nó trong một lỗi điện. Thẻ điều khiển tốt hơn cóĐơn vị đánh bóng pin(BBUS), có nghĩa là thẻ có pin duy trì nguồn điện cho bộ đệm trong trường hợp mất điện hệ thống. Sau khi nguồn được khôi phục, dữ tỷ lệ kèo bóng đá tối nay sẽ được ghi vào ổ đĩa.

Và cuối cùng, hầu hết các ổ đĩa đều có bộ đệm. Một số người viết qua trong khi một số là ghi lại và cùng một mối quan tâm về việc mất dữ tỷ lệ kèo bóng đá tối nay tồn tại đối với bộ nhớ cache ổ đĩa ghi lại như đối với bộ nhớ bộ điều khiển đĩa. Ổ đĩa IDE và SATA cấp người tiêu dùng đặc biệt có khả năng có bộ đệm ghi lại sẽ không tồn tại bị hỏng điện. Nhiều ổ đĩa trạng thái rắn (SSD) cũng có bộ nhớ cach-back dễ bay hơi.

Những bộ đệm này thường có thể bị vô hiệu hóa; Tuy nhiên, phương pháp thực hiện này thay đổi theo hệ điều hành và loại ổ đĩa:

  • trênLinux, IDE và SATA có thể được truy vấn bằng cách sử dụnghdparm -i; Viết bộ nhớ đệm được bật nếu có*Bên cạnhViết bộ nhớ cache. hdparm -w 0có thể được sử dụng để tắt bộ nhớ đệm tỷ lệ kèo bóng đá tối nay. Ổ đĩa SCSI có thể được truy vấn bằng cách sử dụngsdparm. Sử dụngsdparm --get = wceĐể kiểm tra xem bộ đệm tỷ lệ kèo bóng đá tối nay có được bật không vàsdparm --clear = wceđể vô hiệu hóa nó.

  • trênFreeBSD, Ổ đĩa IDE có thể được truy vấn bằng cách sử dụngAtacontrolvà viết bộ nhớ đệm tắt bằng cách sử dụnghw.ata.wc = 0in/boot/loader.conf; Ổ đĩa SCSI có thể được truy vấn bằng cách sử dụngCamcontrol Xác địnhvà bộ đệm tỷ lệ kèo bóng đá tối nay cả được truy vấn và thay đổi bằng cách sử dụngsdparmKhi có sẵn.

  • trênSolaris, bộ đệm tỷ lệ kèo bóng đá tối nay đĩa được điều khiển bởiĐịnh dạng -e. (SolarisZFS13517_13623

  • trênWindows, nếuWal_sync_methodopen_datasync(mặc định), tỷ lệ kèo bóng đá tối nay bộ đệm có thể bị vô hiệu hóa bằng cách không kiểm traMáy tính của tôi \ Open \ổ đĩa\ Properties \ Phần cứng \ Properties \ Chính sách \ Bật tỷ lệ kèo bóng đá tối nay bộ đệm trên đĩa. Ngoài ra, đặtWal_sync_methodđếnfsynchoặcfsync_writethrough, Ngăn chặn bộ nhớ đệm tỷ lệ kèo bóng đá tối nay.

  • trênOS X, Viết bộ đệm có thể được ngăn chặn bằng cách cài đặtWal_sync_methodđếnfsync_writethrough.

ổ đĩa SATA gần đây (những người theo dõiATAPI-6hoặc muộn hơn) cung cấp lệnh flush bộ nhớ cache ổ đĩa (Rush Cache ext), trong khi tỷ lệ kèo bóng đá tối nay ổ đĩa SCSI từ lâu đã hỗ trợ một lệnh tương tựĐồng bộ hóa bộ đệm. tỷ lệ kèo bóng đá tối nay lệnh này không thể truy cập trực tiếp vàoPostgreSQL, nhưng tỷ lệ kèo bóng đá tối nay số hệ thống tệp (ví dụ:ZFS, ext4) có thể sử dụng chúng để xóa dữ tỷ lệ kèo bóng đá tối nay vào các đĩa trên các ổ đĩa hỗ trợ ghi lại. Thật không may, các hệ thống tệp như vậy hoạt động theo tối đa khi kết hợp với đơn vị dự phòng pin (BBU) Bộ điều khiển đĩa. Trong các thiết lập như vậy, lệnh đồng bộ hóa tất cả dữ tỷ lệ kèo bóng đá tối nay từ bộ đệm bộ điều khiển sang đĩa, loại bỏ phần lớn lợi ích của BBU. Bạn có thể chạypg_test_fsyncChương trình để xem bạn có bị ảnh hưởng không. Nếu bạn bị ảnh hưởng, lợi ích hiệu suất của BBU có thể được lấy lại bằng cách tắt các rào cản ghi trong hệ thống tệp hoặc cấu hình lại bộ điều khiển đĩa, nếu đó là một tùy chọn. Nếu các rào cản ghi được tắt, hãy đảm bảo pin vẫn hoạt động; Một pin bị lỗi có thể có khả năng dẫn đến mất dữ tỷ lệ kèo bóng đá tối nay. Hy vọng rằng các nhà thiết kế bộ điều khiển hệ thống và bộ điều khiển đĩa cuối cùng sẽ giải quyết hành vi dưới mức tối ưu này.

Khi hệ điều hành gửi yêu cầu ghi đến phần cứng lưu trữ, có rất ít điều đó có thể làm để đảm bảo dữ liệu đã đến khu vực lưu trữ thực sự không bay hơi. Thay vào đó, trách nhiệm của quản trị viên là đảm bảo rằng tất cả các thành phần lưu trữ đảm bảo tính toàn vẹn cho cả siêu dữ liệu và siêu dữ liệu tệp. Tránh các bộ điều khiển đĩa có bộ nhớ viết không được bán lại. Ở cấp độ ổ đĩa, vô hiệu hóa bộ nhớ đệm ghi lại nếu ổ đĩa không thể đảm bảo dữ liệu sẽ được viết trước khi tắt. Nếu bạn sử dụng SSD, hãy lưu ý rằng nhiều trong số này không tôn trọng các lệnh xả bộ đệm theo mặc định. Bạn có thể kiểm tra hành vi hệ thống con đáng tỷ lệ kèo bóng đá tối nay I/O bằng cách sử dụngdiskchecker.pl.

Một rủi ro mất dữ tỷ lệ kèo bóng đá tối nay khác được đặt ra bởi chính các hoạt động ghi đĩa đĩa. Các đĩa đĩa được chia thành các lĩnh vực, thường là 512 byte mỗi byte. Mỗi hoạt động đọc hoặc viết vật lý quá trình cả một lĩnh vực. Khi một yêu cầu ghi đến ổ đĩa, nó có thể là một số bội số của 512 byte (PostgreSQLThông thường viết 8192 byte, hoặc 16 ngành, tại một thời điểm) và quá trình viết có thể thất bại do mất điện bất cứ lúc nào, có nghĩa là một số trong số tỷ lệ kèo bóng đá tối nay lĩnh vực 512 byte được viết trong khi những lĩnh vực khác không. Để bảo vệ chống lại những thất bại như vậy,PostgreSQLĐịnh kỳ tỷ lệ kèo bóng đá tối nay hình ảnh trang đầy đủ để lưu trữ WAL vĩnh viễntrướcSửa đổi trang thực tế trên đĩa. Bằng cách này, trong quá trình phục hồi sự cốPostgreSQLCó thể khôi phục tỷ lệ kèo bóng đá tối nay trang viết một phần từ Wal. Nếu bạn có phần mềm hệ thống tệp để ngăn chặn một phần trang ghi (ví dụ: ZFS), bạn có thể tắt hình ảnh trang này bằng cách tắtfull_page_writestham số. Bộ điều khiển đĩa được hỗ trợ pin (BBU) không ngăn chặn ghi một phần trang trừ khi chúng đảm bảo rằng dữ tỷ lệ kèo bóng đá tối nay được ghi vào các trang BBU dưới dạng đầy đủ (8kb).

PostgreSQLcũng bảo vệ chống lại một số loại tham nhũng dữ tỷ lệ kèo bóng đá tối nay trên các thiết bị lưu trữ có thể xảy ra do lỗi phần cứng hoặc lỗi phương tiện theo thời gian, chẳng hạn như đọc/ghi dữ tỷ lệ kèo bóng đá tối nay rác.

  • Mỗi bản tỷ lệ kèo bóng đá tối nay riêng lẻ trong tệp WAL được bảo vệ bằng kiểm tra CRC-32 (32-bit) cho phép chúng tôi biết nội dung tỷ lệ kèo bóng đá tối nay có đúng không. Giá trị CRC được đặt khi chúng tôi viết từng bản tỷ lệ kèo bóng đá tối nay Wal và được kiểm tra trong quá trình phục hồi sự cố, lưu trữ và sao chép lại.

  • Các trang dữ tỷ lệ kèo bóng đá tối nay hiện không được kiểm tra theo mặc định, mặc dù hình ảnh toàn trang được ghi trong WAL Records sẽ được bảo vệ; nhìn thấyinitDBĐể biết chi tiết về kích hoạt kiểm tra trang dữ tỷ lệ kèo bóng đá tối nay.

  • Các cấu trúc dữ tỷ lệ kèo bóng đá tối nay nội bộ nhưpg_clog, pg_subtrans, pg_multixact, pg_serial, pg_notify, pg_stat, pg_snapshotskhông được kiểm tra trực tiếp, cũng không phải là các trang được bảo vệ bởi ghi đầy đủ. Tuy nhiên, trong trường hợp các cấu trúc dữ tỷ lệ kèo bóng đá tối nay đó vẫn tồn tại, WAL Records được viết cho phép các thay đổi gần đây được xây dựng lại chính xác khi phục hồi sự cố và các bản ghi Wal đó được bảo vệ như đã thảo luận ở trên.

  • tỷ lệ kèo bóng đá tối nay tệp trạng thái riêng lẻ trongpg_twophaseđược bảo vệ bởi CRC-32.

  • Các tệp dữ tỷ lệ kèo bóng đá tối nay tạm thời được sử dụng trong các truy vấn SQL lớn hơn cho các loại, vật chất hóa và kết quả trung gian hiện không được kiểm tra, cũng không được ghi lại cho các thay đổi cho các tệp đó.

PostgreSQLKhông bảo vệ chống lại tỷ lệ kèo bóng đá tối nay lỗi bộ nhớ có thể chính xác và giả sử bạn sẽ hoạt động bằng cách sử dụng RAM sử dụng mã sửa lỗi tiêu chuẩn công nghiệp (ECC) hoặc bảo vệ tốt hơn.