• แนะนำการใช้งานเบื่องต้น การใช้งาน-community
    ประกาศ :
    • ทำการแก้ไขระบบนับถอยหลังเพื่อดาวน์โหลดไฟล์แล้ว
กรุณาปิด โปรแกรมบล๊อกโฆษณา เพราะเราอยู่ได้ด้วยโฆษณาที่ท่านเห็น
Please close the adblock program. Because we can live with the ads you see


News

ข่าว โครงการ Infisical รายงานการย้ายจาก MongoDB ไป PostgreSQL ชี้ เซ็ตอัพและหาคนดูแงง่ายกว่า ประหยัดค่าใช้จ่าย

News 

Moderator
สมาชิกทีมงาน
Moderator
Verify member
Infisical โครงการแพลตฟอร์มเก็บความลับ (secret management platform) แบบโอเพนซอร์ส รายงานถึงการย้ายระบบฐานข้อมูลจาก MongoDB มาเป็น PostgreSQL ว่าประสบความสำเร็จดีและทำให้การเซ็ตอัพโครงการใช้งานเองทำได้ง่ายขึ้น

ทางโครงการระบุว่าเลือก MongoDB พร้อมกับ Mongoose ORM เพราะทีมงานเคยชินกับ stack นี้ที่สุด และตอนแรกไม่ได้คิดว่าจะมีผู้ใช้พยายามติดตั้งแพลตฟอร์มใช้งานเองมากนัก แต่หลังจากโครงการได้รับความนิยม MongoDB กลับเป็นคอขวดเนื่องจากฟีเจอร์สำคัญคือการทำ transaction จำเป็นต้องติดตั้งแบบคลัสเตอร์แบบโปรดักชั่นและคนที่เชี่ยวชาญการเซ็ตอัพ MongoDB ก็หาได้ยากกว่า ขณะที่ฝั่งนักพัฒนาเองหลายครั้งก็อยากได้ฟีเจอร์ฝั่ง SQL เช่น CASCADE ที่สามารถลบข้อมูลที่เกี่ยวข้องออกไปพร้อมกันทีเดียวได้

ปัญหาอีกอย่างหนึ่งของ MongoDB คือการเปลี่ยนไลเซนส์ไปเป็น SSPL ทำให้ผู้ให้บริการคลาวด์ไม่สามารถอัพเกรดไปใช้เวอร์ชั่นล่าสุดได้ ทำให้ผู้ใช้ของ Infisical ไม่สามารถใช้บริการฐานข้อมูลคลาวด์ได้อิสระ

ทาง Infisical เลือกระหว่างการใช้ฐานข้อมูลภายใน เช่น SQLite กับฐานข้อมูลภายนอกอย่าง PostgreSQL และตัดสินใจเลือก PostgreSQL เพราะเมื่อต้องการขยายแอปพลิเคชั่นเป็นคลัสเตอร์ไม่ต้องอิมพลีเมนต์ด้วยตัวเอง สำหรับระบบ ORM นั้นโครงการเลือก Knex.js ที่เป็น query builder แทนที่จะเป็น ORM เต็มรูปแบบ เพราะต้องการควบคุมคิวรีสุดท้ายได้ แต่ยังดูแลง่ายกว่าการเขียนคิวรีเองตรงๆ

กระบวนการย้ายฐานข้อมูลของ Infisical Cloud กินเวลา 6 ชั่วโมงที่ระบบจะเปิดให้ลูกค้าอ่านข้อมูลได้เท่านั้นแต่เขียนไม่ได้ ระบบจะย้ายข้อมูลไปยัง PostgreSQL แล้วตรวจสอบข้อมูลว่ายังอยู่ครบ หลังจากนั้นจึงชี้ DNS ไปยังเซิร์ฟเวอร์ใหม่ โดยรวมมีปัญหาเพียงไม่กี่รายการ และแก้ไขได้หมดภายใน 36 ชั่วโมงหลังการย้าย และเมื่อย้ายมาแล้วแอปพลิเคชั่นเสีย overhead น้อยลงทำให้ค่าใช้จ่ายฐานข้อมูลลดลง 50% ขณะที่ตัวแอปพลิเคชั่นมีการตรวจสอบข้อมูลทีี่ระดับฐานข้อมูลละเอียดขึ้น ตัดปัญหาชนิดข้อมูลไม่ตรงกันเพราะเดิมชนิดข้อมูลนั้นไปบังคับที่ระดับ Mongoose

โดยรวมโครงการย้ายออกจาก MongoDB ครั้งนี้กินเวลา 3-4 เดือน และทีมงานพอใจกับการย้ายอย่างมาก แต่แนะนำว่าหากใครจะทำตามให้คิดอย่างระมัดระวังก่อนย้าย

ที่มา - Infisical

image


Topics:
Database
PostgreSQL
MongoDB

อ่านต่อ...
 

กรุณาปิด โปรแกรมบล๊อกโฆษณา เพราะเราอยู่ได้ด้วยโฆษณาที่ท่านเห็น
Please close the adblock program. Because we can live with the ads you see
กลับ
ยอดนิยม ด้านล่าง