เรียกใช้ PostgreSQL 9.0.1 พร้อมการจำลองแบบการสตรีมที่ทำให้อินสแตนซ์มิเรอร์อ่านอย่างเดียวหนึ่งตัวเป็นปัจจุบัน การฉีดวัคซีนอัตโนมัติเปิดอยู่บนอุปกรณ์หลักยกเว้นบางตารางที่ไม่ได้ถูกดูดโดย daemon สูญญากาศอัตโนมัติเพื่อพยายามลด IO ชั่วโมงธุรกิจ ตารางเหล่านี้คือ "มุมมองที่ปรากฏขึ้น"
ทุกคืนเวลาเที่ยงคืนเราเรียกใช้สุญญากาศทั่วฐานข้อมูลเพื่อล้างตารางเหล่านั้นที่ไม่รวมอยู่ในการปรับระดับอัตโนมัติ ฉันสงสัยว่ากระบวนการนั้นทำซ้ำไปที่กระจกหรือไม่หรือถ้าฉันต้องติดตั้งเครื่องดูดฝุ่นบนกระจกด้วย?
1
คำถามที่ยอดเยี่ยม การจำลองแบบการสตรีมใช้บันทึกการเขียนล่วงหน้าดังนั้นจึงควรพิจารณาว่าการเปลี่ยนแปลงที่ VACUUM ทำนั้นถูกบันทึกไว้หรือไม่
—
DerfK
น่าสนใจฉันเปิดเครื่องดูดฝุ่นอัตโนมัติบนกระจกแบบอ่านอย่างเดียว แต่ดูในตารางสถิติที่ไม่ปรากฏว่าเคยทำงานมาก่อน เนื่องจากทุกตารางแสดงรายการ 0 tuples สด / ตายและไม่มีประวัติที่สามารถมองเห็นของเครื่องดูดฝุ่นหรือการวิเคราะห์
—
Scott Herbert
developer.postgresql.org/pgdocs/postgres/hot-standby.html - 25.5.2 การจัดการข้อขัดแย้งของแบบสอบถาม - "แอปพลิเคชันของบันทึกการล้างข้อมูลสูญญากาศจากความขัดแย้ง WAL กับธุรกรรมสแตนด์บายซึ่งสแน็ปช็อตยังคง" เห็น "แถวใด ๆ ที่จะลบ ............. นี่ดูเหมือนว่าจะแนะนำ VACUUM ถูกบันทึกไว้ใน WAL และดังนั้นจึงเป็น "ใช่" สำหรับคำถามของฉันชอบที่จะได้รับข้อมูลเพิ่มเติมจาก PG guru แม้ว่า!
—
Scott Herbert
ข้อมูลจากมุมมองแบบไดนามิกคาดว่าจะแตกต่างกันในหลักและสแตนด์บาย มุมมองเหล่านี้ใช้ฟังก์ชั่นระบบเพื่อรวบรวมข้อมูลและฟังก์ชั่นเหล่านั้นอ่านข้อมูลจากโครงสร้างข้อมูลในหน่วยความจำมากกว่าจากตารางฟิสิคัล ตัวอย่างเช่นการดำเนินการ ANALYZE บนหลักจะอัปเดตสถิติของเครื่องมือเพิ่มประสิทธิภาพ (ใช้สำหรับการวางแผนการสืบค้น) ในโหมดสแตนด์บายด้วยเช่นกัน แต่เวลาที่ดำเนินการ ANALYZE บนตารางจะไม่แสดงใน pg_stat_user_tables เนื่องจากข้อมูลนั้นไม่ได้ถูกบันทึกไว้ในธุรกรรม บันทึก
—
Gurjeet Singh
ดังนั้นข้อสรุปก็คือ AUTOVACUUM ที่เกิดขึ้นกับเจ้านายนั้นไม่มีผลกับมันในการทำงานกับทาสใช่ไหม? สมมติว่าเป็นกรณีนี้ถ้าฉันมีตารางที่ไม่มีการปรับปรุง / ลบเพียงแค่แทรกมันจะเป็นไปได้หรือไม่ที่จะปิดการใช้งาน autovacuum ในต้นแบบเนื่องจากฉันเพิ่งเขียนถึงมันและการอ่านเกิดขึ้นบนทาส
—
Henley Chiu