pgBackRest ตายแล้ว แล้วตอนนี้ควรทำอย่างไร?
(mydbanotebook.org)- David Steele ผู้ดูแลเพียงคนเดียวของ
pgBackRestประกาศบนหน้า GitHub ของโปรเจ็กต์ว่าจะยุติงานทั้งหมด ทำให้ การบำรุงรักษา, การแก้บั๊ก, การรีวิว PR และการพัฒนาฟีเจอร์ใหม่หยุดลง pgBackRestเป็นโครงสร้างพื้นฐานที่ เชื่อถือได้สูง สำหรับ PostgreSQL ซึ่งครอบคลุมการสำรองข้อมูล การกู้คืน และ PITR แต่ David ไม่สามารถทำงานดูแลต่อเนื่องที่รับผิดชอบมา 13 ปีต่อไปได้โดยไม่มีค่าตอบแทนpg_basebackupไม่มีแคตตาล็อกแบ็กอัป, การจัดการการเก็บรักษา WAL, คำสั่งกู้คืน และการตรวจสอบความสมบูรณ์ในตัวสำหรับ PostgreSQL ก่อนเวอร์ชัน 13 ส่วนpg_dumpไม่มี PITR จึงยากจะมองว่าเป็น กลยุทธ์การกู้คืน- สำหรับองค์กรที่กำลังประเมินเครื่องมือสำรองข้อมูลใหม่
Barmanถูกยกให้เป็นทางเลือกที่จริงจังที่สุด เพราะยังมีการดูแลอย่างต่อเนื่องและมีทั้ง WAL archiving, แคตตาล็อกแบ็กอัป, การจัดการการเก็บรักษา และการกู้คืน - ผู้ใช้
pgBackRestในระบบ production ไม่ได้อยู่ในความเสี่ยงทันที แต่ยิ่งมี PostgreSQL รีลีสใหม่และบั๊กที่ไม่ได้รับการแพตช์สะสมมากขึ้น เวลาสำหรับการรับมือก็จะยิ่งลดลง และ fork ก็ยังต้องสร้างความน่าเชื่อถือขึ้นมาใหม่
เบื้องหลังการยุติการบำรุงรักษา pgBackRest
- David Steele ผู้ดูแลเพียงคนเดียวของ
pgBackRestประกาศบนหน้า GitHub ของโปรเจ็กต์ว่าจะหยุดงานทั้งหมด ทำให้ การบำรุงรักษา, การแก้บั๊ก, การรีวิว PR และการพัฒนาฟีเจอร์ใหม่จะไม่เกิดขึ้นอีกต่อไป pgBackRestเป็นเครื่องมือสำรองข้อมูล PostgreSQL ที่มีความสมบูรณ์สูงจนได้รับการแนะนำมาอย่างยาวนาน และใช้งานง่ายถึงขั้นที่นักศึกษาจาก Université Lyon I สามารถทำการสำรองข้อมูล กู้คืน และ PITR ได้ภายใน 4 ชั่วโมงโดยแทบไม่มีความรู้ล่วงหน้า- David ดูแล
pgBackRestมาตลอด 13 ปี และ Stephen Frost กับ Stefan Fercot ก็ถูกนับเป็นผู้มีส่วนร่วมหลักของโปรเจ็กต์ - Crunchy Data เคยสนับสนุน
pgBackRestอยู่เป็นเวลานานและจ้าง David ไว้ แต่หลังบริษัทถูกขาย David พยายามหางานและการสนับสนุนอิสระเพื่อทำโปรเจ็กต์ต่ออีกหลายเดือนแต่ไม่สำเร็จ pgBackRestต้องอาศัยความพยายามด้านการบำรุงรักษาอย่างต่อเนื่อง แต่ David ไม่อยู่ในสถานะที่จะให้สิ่งนั้นต่อไปได้โดยไม่มีค่าตอบแทน
ปัญหาความยั่งยืนของโครงสร้างพื้นฐานโอเพนซอร์ส
pgBackRestถูกสร้างขึ้นตลอด 13 ปีจนกลายเป็นหนึ่งในโครงสร้างพื้นฐานที่ น่าเชื่อถือที่สุด ในระบบนิเวศ PostgreSQL แต่กลับไม่มีบริษัทใดต้องการจ้าง David เพื่อให้เขาทำงานแบบเดิมต่อไป- ขณะที่บริษัทต่าง ๆ ซื้อ RAM กับ GPU และลงทุนในผลิตภัณฑ์ AI การจ่ายเงินให้คนที่ช่วยรักษาข้อมูลในยามเกิดภัยพิบัติกลับไม่ใช่เรื่องสำคัญลำดับต้น
- บริษัทขนาดใหญ่จำนวนมากทำกำไรอย่างมหาศาลบน
pgBackRestและยังมีการนำไปใช้ในระบบ production ของบริการฐานข้อมูลที่ทำกำไรสูงซึ่งสร้างบนระบบนิเวศ PostgreSQL โดยตรง - ใน README ของโปรเจ็กต์มีลิงก์สำหรับการสนับสนุน แต่ ณ เวลาที่ David ประกาศยุติ มี ผู้สนับสนุนที่ยัง active เพียงรายเดียวเท่านั้น
- โมเดลโอเพนซอร์สจะทำงานได้เมื่อฝั่งที่ใช้ประโยชน์จากคุณค่าเข้ามาช่วยรับผิดชอบการดูแลรักษาด้วย และมันจะพังเมื่อทุกคนคิดว่าคนอื่นจะเป็นผู้จ่ายค่าใช้จ่ายในการดูแล
คุณค่าที่ pgBackRest เคยมอบให้ และข้อจำกัดของทางเลือกอื่น
- การหายไปของ
pgBackRestไม่ได้ทำให้ขาดเพียงเครื่องมือสำหรับรันแบ็กอัป แต่ทำให้โครงสร้างพื้นฐาน PostgreSQL ที่ครอบคลุม กลยุทธ์การกู้คืนทั้งหมด อ่อนแอลง pg_basebackupเป็นเครื่องมือที่ออกแบบมาเพื่อคัดลอกไดเรกทอรีของคลัสเตอร์ที่กำลังทำงาน และไม่มีแคตตาล็อกแบ็กอัป, การจัดการการเก็บรักษา WAL, คำสั่งกู้คืน หรือการตรวจสอบความสมบูรณ์ในตัวสำหรับ PostgreSQL ก่อนเวอร์ชัน 13- Magnus Hagander สมาชิกทีมคอร์ของ PostgreSQL ผู้สร้าง
pg_basebackupเห็นด้วยในบทสนทนาบน Twitterกับข้อความที่ว่า “pg_basebackupคิดในมุมของการสำรองข้อมูล แต่คนต้องการเครื่องมือที่คิดในมุมของการกู้คืน และการสำรองข้อมูลเป็นเพียงขั้นตอนหนึ่งระหว่างทาง ไม่ใช่จุดจบ” pg_basebackupเป็นเครื่องมือที่ยอดเยี่ยมสำหรับการตั้งค่า standby แต่ไม่ใช่ กลยุทธ์การกู้คืนpg_dumpไม่มี PITR จึงทำให้ธุรกรรมระหว่างเวลาที่เริ่มดัมพ์กับเวลาที่ต้องกู้คืนสูญหายถาวร และเวลาในการกู้คืนจากดัมพ์ขนาดใหญ่ก็อาจรับไม่ไหวในสถานการณ์ระบบล่มpg_dumpใกล้เคียงกับ เครื่องมือส่งออกข้อมูล มากกว่าเครื่องมือสำรองข้อมูล และการเรียกมันว่าเครื่องมือแบ็กอัปอาจสร้างความมั่นใจผิด ๆ ที่นำไปสู่การสูญเสียข้อมูลจริงBarmanเป็นเครื่องมือที่ปัจจุบันยังมีการดูแลอย่างแข็งขันและได้รับการปรับปรุงอย่างมาก และถูกมองว่าเป็นตัวเลือกที่จริงจังที่สุดสำหรับองค์กรที่ต้องการทางเลือกในตอนนี้Barmanมีภาระเชิงสถาปัตยกรรมที่สร้างทับข้อจำกัดของpg_basebackupแต่ก็ช่วยเติมช่องว่างหลักได้ด้วย WAL archiving, แคตตาล็อกแบ็กอัป, การจัดการการเก็บรักษา และการกู้คืน
สิ่งที่ผู้ใช้ pgBackRest ควรทำต่อ
- David คาดว่า
pgBackRestจะถูก fork ในที่สุด และด้วยโค้ดเบสภาษา C ที่แข็งแรงกับสถาปัตยกรรมที่ถูกต้อง ก็มีพื้นฐานมากพอให้บริษัทที่มีความเชี่ยวชาญด้าน PostgreSQL เข้ามารับช่วงต่อได้ - ตอนนี้ยังไม่มี fork ออกมา และถึงจะมีเกิดขึ้น ก็ยังต้องสร้างความเชื่อมั่นจากชุมชนขึ้นใหม่ตั้งแต่ต้น
- สำหรับองค์กรที่กำลังประเมินเครื่องมือสำรองข้อมูลในตอนนี้ มีการแนะนำให้ใช้
Barman - องค์กรที่ใช้งาน
pgBackRestในระบบ production ไม่ได้อยู่ในความเสี่ยงเฉียบพลันทันที แต่ยิ่ง PostgreSQL ออกรุ่นใหม่และบั๊กที่ไม่ได้รับการแพตช์สะสมมากขึ้น เวลาที่จะรับมือได้ก็ยิ่งสั้นลง - หากพบบั๊กร้ายแรงใน
pgBackRestระหว่างทาง บริษัทที่มีความเชี่ยวชาญด้าน PostgreSQL อย่าง Data Egret และ Cybertec อาจช่วยแก้ปัญหาได้ - การสนับสนุนจากผู้ให้บริการเฉพาะทางไม่ใช่ทางออกระยะยาว แต่เป็นทางเลือกที่ช่วยซื้อเวลาให้ชุมชนระหว่างหาก้าวถัดไป
คำเตือนที่เหลืออยู่ต่อระบบนิเวศ PostgreSQL
pgBackRestไม่ได้หยุดเพราะความล้มเหลวทางเทคนิคหรือความขัดแย้งในชุมชน แต่เพราะอุตสาหกรรมไม่ได้จ่ายค่าตอบแทนให้คนที่สร้างโครงสร้างพื้นฐานที่เชื่อถือได้อย่างเพียงพอ- ในระบบนิเวศ PostgreSQL มีคนเก่งจำนวนมากที่ทำงานสำคัญ แต่บ่อยครั้งงานเหล่านั้นตั้งอยู่บนโครงสร้างเงินทุนที่เปราะบางหรือแทบไม่มีอยู่เลย
pgBackRestอาจไม่ใช่โปรเจ็กต์สุดท้ายที่ต้องตกอยู่ในสถานการณ์แบบนี้- มันควรเป็นจุดที่ทำให้บริษัทต่าง ๆ กลับมาคิดใหม่ก่อนจะปฏิบัติต่อโครงสร้างพื้นฐานโอเพนซอร์สราวกับเป็นทรัพยากรฟรีที่ไม่มีภาระผูกพัน
pgBackRestที่ David สร้างขึ้นเป็นผลงานที่จะอยู่ต่อไปได้เกินกว่าช่วงเวลานี้ และตอนนี้ชุมชนก็ต้องตอบสนองให้สมกับระดับนั้น
2 ความคิดเห็น
ผมคิดแบบนี้อยู่เสมอว่าไลเซนส์โอเพนซอร์ซไม่ได้มีไว้เพื่อผู้พัฒนา แต่มีไว้เพื่อผู้ใช้ หากจะเลือกใช้โอเพนซอร์ซ ก็ควรคิดเรื่องนี้ให้ดี
ความคิดเห็นจาก Lobste.rs
หลังบทความนี้ถูกโพสต์ ก็ควรกล่าวถึงด้วยว่า PGX ได้ fork เป็น pgxbackup
คิดดูแล้ว การที่ผู้ดูแลตัดสินใจวางมือก็นับว่าเป็นทางเลือกที่ถูกต้อง
เริ่มทั้งไม่ชอบและขุ่นเคืองกับโมเดลโอเพนซอร์สแบบเดิม ๆ ที่แจกทุกอย่างฟรี แล้วค่อยไปอ้อนวอนและคาดหวังเงินบริจาคตามสมัครใจอันน้อยนิดจาก บริษัทมูลค่าหลายล้านถึงหลายพันล้านดอลลาร์ มากขึ้นเรื่อย ๆ
ถ้าใช้โครงสร้างไลเซนส์แบบอื่น ก็อาจสร้างสมดุลที่ยุติธรรมเพื่อให้ระบบนิเวศยังแข็งแรงได้โดยไม่ต้องพึ่งการกุศลล้วน ๆ
โมเดลนี้อาจเคยมีเสน่ห์อยู่บ้างในยุค 90 เมื่อพื้นที่นี้ยังไม่ถูกทำให้เป็นเชิงพาณิชย์เกินขนาดเหมือนตอนนี้ แต่ในปี 2026 มันยากจะหาเหตุผลมารองรับได้อีกต่อไป และก็ไม่สนใจจินตนาการแบบ “คอมมิวนิสต์” เกี่ยวกับ “ชุมชน” ด้วย
หลังจากนั้นก็มีความคืบหน้า ปัจจุบัน README ของโปรเจ็กต์ระบุไว้ดังนี้:
“ตอนนี้สถานการณ์เปลี่ยนไปแล้ว และดูแทบจะแน่นอนว่าเราจะสามารถจัดหาเงินทุนได้เพียงพอที่จะเดินหน้าโปรเจ็กต์ต่อ ครั้งนี้ pgBackRest จะได้รับการสนับสนุนจาก พันธมิตรผู้สนับสนุน ดังนั้นการเข้าซื้อกิจการเพียงรายเดียวจะไม่ส่งผลต่อความสามารถของผมในการทำงานกับโปรเจ็กต์นี้ต่อไปอีกแล้ว น่าจะสามารถดึงผู้ดูแลคนอื่นเข้ามาเพื่อช่วยแบ่งเบาภาระงานและสร้างความต่อเนื่องในอนาคตได้”