จุดตรวจสอบเกิดขึ้นบ่อยเกินไประหว่าง pg_restore


15

ภายใต้ PostgreSQL 9.2.2 (Windows 32 บิต) ฉันมีpg_restoreคำสั่งที่ส่งผลให้เกิดคำเตือนเกี่ยวกับความถี่ของจุดตรวจสอบอย่างเป็นระบบเช่น:

LOG:  checkpoints are occurring too frequently (17 seconds apart)
HINT:  Consider increasing the configuration parameter "checkpoint_segments".

ฐานข้อมูลมีขนาดประมาณ 3.3 Gb โดยมี 112 tables / 160 views และเรียกคืนได้ในเวลาประมาณ 14 นาที

เป็นเรื่องปกติpg_restoreหรือไม่ที่จะเกิดขึ้นในช่วง a ?

คำตอบ:


17

ไม่ใช่เรื่องผิดปกติระหว่างการกู้คืน DB ทั้งหมดเพราะเป็นการดำเนินการที่ยอดเยี่ยม หากคุณเห็นสิ่งนี้ในระหว่างการดำเนินการปกติให้พิจารณาเพิ่มการตั้งค่าของคุณcheckpoint_segmentsอย่างถาวรเช่นเดียวกับคำแนะนำข้อผิดพลาด

คุณอาจไปที่ปัญหาของการตั้งค่าที่checkpoint_segmentsสูงขึ้นก่อนการคืนค่าจากนั้นลดลงอีกครั้ง นี่คือสิ่งที่คู่มือแนะนำ (รวมถึงคำอธิบาย) :

การเพิ่มcheckpoint_segmentsตัวแปรการกำหนดค่าชั่วคราวทำให้สามารถโหลดข้อมูลขนาดใหญ่ได้เร็วขึ้น เนื่องจากการโหลดข้อมูลจำนวนมากลงใน PostgreSQL จะทำให้จุดตรวจสอบเกิดขึ้นบ่อยกว่าความถี่จุดตรวจสอบปกติ (ระบุโดย checkpoint_timeoutตัวแปรการกำหนดค่า) เมื่อใดก็ตามที่จุดตรวจสอบเกิดขึ้นหน้าสกปรกทั้งหมดจะต้องถูกล้างข้อมูลลงดิสก์ โดยการเพิ่ม checkpoint_segmentsชั่วคราวในระหว่างการโหลดข้อมูลจำนวนมากสามารถลดจำนวนจุดตรวจที่ต้องการได้

คำตอบที่เกี่ยวข้องพร้อมรายละเอียดเพิ่มเติม:

Postgres 9.5

รุ่นใหม่ที่จะมาถึงมีวิธีการที่ชาญฉลาด การอ้างอิงบันทึกประจำรุ่นเบต้า :

แทนที่พารามิเตอร์การกำหนดค่าcheckpoint_segmentsด้วยmin_wal_size และmax_wal_size(Heikki Linnakangas)

สิ่งนี้ยอมให้มีการจัดสรรไฟล์ WAL เป็นจำนวนมากโดยไม่เก็บไว้หากไม่ต้องการ ดังนั้นเริ่มต้นสำหรับการได้รับเพิ่มขึ้นmax_wal_size 1GB

ด้านข้าง: จำนวนการดูมีความเกี่ยวข้องแทบจะไม่ทั้งหมดที่มีข้อมูลใด ๆ เพียงแค่ "สูตร" คือ: แบบสอบถามและคุณลักษณะบางอย่างของมุมมอง สำหรับคำถามในมือนั้นโดยทั่วไปจะมีขนาดรวมของไฟล์สำรองข้อมูลเท่านั้น


หลังจากตั้งค่า checkpoint_segments เป็น 30 จะไม่มีข้อความเหล่านี้ปรากฏอีกในบันทึก ขอบคุณ
SébastienClément
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.