Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> ฐานข้อมูล

ObjectRocket ช่วยให้ MongoDB ของคุณแข็งแรงและพร้อมใช้งาน

เผยแพร่ครั้งแรกในเดือนพฤศจิกายน 2020 ที่ ObjectRocket.com/blog

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

ObjectRocket ช่วยให้ MongoDB ของคุณแข็งแรงและพร้อมใช้งาน

แนะนำตัว

ปัจจุบัน ObjectRocket เสนอตัวเลือกอินสแตนซ์ Sharded และ Replica MongoDB แต่เบื้องหลัง เราใช้ชุดแบบจำลองสามสมาชิกเสมอสำหรับความซ้ำซ้อนของข้อมูลและความทนทานต่อข้อผิดพลาด อินสแตนซ์แบบแบ่งส่วนประกอบด้วยเซิร์ฟเวอร์ Mongos เฉพาะ เซิร์ฟเวอร์กำหนดค่า และส่วนย่อย ซึ่งแต่ละส่วนมีสามส่วน ชุดจำลองสมาชิก

อย่างไรก็ตาม การกู้คืนจากภัยพิบัติเป็นอีกเรื่องหนึ่ง ObjectRocket เสนอแผนการกู้คืนจากความเสียหาย โดยที่อินสแตนซ์ Sharded และ Replica MongoDB ของคุณได้รับชุดจำลองสมาชิกที่ทำมิเรอร์ในศูนย์ข้อมูลอื่นโดยมีค่าใช้จ่ายเพิ่มเติมที่คุณสามารถใช้ได้ในกรณีที่เกิดภัยพิบัติ

แพ็กเกจ

อินสแตนซ์ MongoDB ที่จัดการ ObjectRocket ทั้งหมดมาพร้อมกับความพร้อมใช้งานสูง การจำลองแบบ (ความซ้ำซ้อนของข้อมูล) และความทนทานต่อข้อผิดพลาดเป็นแพ็คเกจ

ความพร้อมใช้งานสูง

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

ความทนทานต่อข้อผิดพลาด

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

การจำลองแบบ (ความซ้ำซ้อนของข้อมูล)

การจำลองแบบ MongoDB เป็นกระบวนการซิงโครไนซ์ข้อมูลระหว่างเซิร์ฟเวอร์หลายเครื่องที่ระดับแอพพลิเคชั่น การจำลองแบบให้ความซ้ำซ้อนและเพิ่มความพร้อมใช้งานของข้อมูลด้วยสำเนาข้อมูลหลายชุดบนเซิร์ฟเวอร์ฐานข้อมูลที่แตกต่างกัน การจำลองแบบปกป้องฐานข้อมูลจากการสูญหายของเซิร์ฟเวอร์เดียวและช่วยให้คุณสามารถกู้คืนจากความล้มเหลวของฮาร์ดแวร์และการหยุดชะงักของบริการ ด้วยสำเนาข้อมูลเพิ่มเติม คุณสามารถอุทิศอย่างน้อยหนึ่งรายการในการกู้คืน การรายงาน หรือการสำรองข้อมูล

การกู้คืนจากภัยพิบัติ (ไม่บังคับ)

Disaster Recovery (DR) เป็นพื้นที่ของการวางแผนที่ปกป้ององค์กรจากผลกระทบของเหตุการณ์เชิงลบที่สำคัญ เช่น ภัยพิบัติทางธรรมชาติ ไฟฟ้าขัดข้อง ที่อาจทำให้ไฟฟ้าดับในระดับศูนย์ข้อมูล เป้าหมายของ DR คือเพื่อให้ธุรกิจดำเนินต่อไปได้ใกล้เคียงกับปกติมากที่สุด

ใช้กรณีที่ไม่มี DR

สมมติว่าคุณมียอดขายสูงตลอดทั้งปี โดยเฉพาะใน CyberMonday และในช่วงเทศกาลวันหยุด

สถาปัตยกรรมจะเป็นอย่างไร

ในฐานะบริษัทในสหรัฐอเมริกา คุณต้องการจัดเก็บข้อมูลของคุณภายในสหรัฐอเมริกา ดังนั้นให้ใช้ศูนย์ข้อมูล DFW ของเราเพื่อจัดเก็บข้อมูลของคุณและศูนย์ข้อมูล IAD เพื่อสำรองข้อมูล

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

MongoDB สามารถขยายในแนวนอนผ่านชุดแบบจำลองขนาดใหญ่ชุดเดียวโดยใช้ หลัก . หนึ่งชุด และ รองสองอัน โหนดที่มีการสื่อสารแบบฮาร์ทบีตสำหรับสถานะขึ้น (หรือลง) และการจำลองแบบไปยังโหนดรองที่เกิดขึ้นผ่าน theoplog

เราบรรลุความทนทานต่อข้อผิดพลาดโดยให้แต่ละโฮสต์อยู่บนฮาร์ดแวร์ที่แตกต่างกันภายในศูนย์ข้อมูลเดียวกัน ด้วยวิธีนี้ หากฮาร์ดแวร์ใดล้มเหลว MongoDB ของคุณจะยังคงทำงานอยู่

โดยทั่วไป ชาร์ดอาจเป็นอินสแตนซ์ MongoDB เดียว อย่างไรก็ตาม ตามที่กล่าวไว้ก่อนหน้านี้ ชุดแบบจำลองบน ObjectRocket มีอินสแตนซ์ MongoDB สามอินสแตนซ์ ดังที่แสดงในภาพต่อไปนี้:

เศษ:

  • DFWNODE1:ระดับประถมศึกษา
  • DFWNODE2:มัธยมศึกษา
  • DFWNODE3:มัธยมศึกษา
ObjectRocket ช่วยให้ MongoDB ของคุณแข็งแรงและพร้อมใช้งาน

วิธีที่ HA ความซ้ำซ้อนของข้อมูล และความทนทานต่อข้อผิดพลาดทำงานใน ObjectRocket

ในกรณีที่มีการบำรุงรักษา เวลาหยุดทำงาน หรือความล้มเหลว ระบบสามารถเปลี่ยน หลัก กับรอง .คนใดก็ได้ โหนดและดำเนินการต่อโดยไม่มีปัญหาจึงให้ HA

ข้อมูลถูกจำลองจากโหนด PRIMARY ไปยังโหนด SECONDARY ผ่าน theoplog จึงบรรลุความซ้ำซ้อนของข้อมูล

สำหรับ Fault Tolerance ลองจินตนาการถึงสถานการณ์ที่ไม่น่าเป็นไปได้ที่เซิร์ฟเวอร์ที่โฮสต์หนึ่งในสมาชิกของชุดแบบจำลองแยกส่วน ไม่ว่าจะเป็น ประถม หรือ รอง โหนดล้มเหลว อินสแตนซ์ MongoDB ของคุณยังคงทำงานในแบบจำลองสองโหนดจนกว่าทีมสนับสนุนจะสามารถแก้ไขปัญหาได้

ใช้เคสกับ DR

แบบแผนของเราจะจำลองอินสแตนซ์ปัจจุบันของคุณ (โดยไม่คำนึงถึงจำนวนชาร์ดที่คุณเพิ่มไปยังอินสแตนซ์ของคุณ) ในศูนย์ข้อมูลที่ใกล้ที่สุดแห่งใดแห่งหนึ่งในอินสแตนซ์ เรามีแผน DR ที่ตั้งค่าไว้ใน IAD สำหรับคุณด้วย เราสามารถเชื่อมต่อสมาชิกชุดแบบจำลอง IAD กับ หลัก โหนด inDFW3 โดยข้อมูลของคุณถูกจำลองแบบซิงโครนัสข้ามภูมิภาค เพื่อให้แน่ใจว่าข้อมูลของคุณเป็นปัจจุบัน ดังแสดงในตัวอย่างต่อไปนี้:

เศษ:

  • DFWNODE1:ระดับประถมศึกษา
  • DFWNODE2:มัธยมศึกษา
  • DFWNODE3:มัธยมศึกษา
  • IADNODE1:มัธยมศึกษา
  • IADNODE2:มัธยมศึกษา
  • IADNODE3:มัธยมศึกษา
ObjectRocket ช่วยให้ MongoDB ของคุณแข็งแรงและพร้อมใช้งาน

บทสรุป

HA การจำลองแบบ และความทนทานต่อข้อผิดพลาด รวมกับการกู้คืนจากความเสียหายบนแพลตฟอร์ม ObjectRocket นอกจากนี้เรายังสำรองข้อมูลทั้งหมดนี้กับคนฉลาด เพื่อให้คุณปลอดภัยและมีเสถียรภาพในช่วงเวลาเร่งด่วน

เรียนรู้เพิ่มเติมเกี่ยวกับ Managed MongoDB

ใช้แท็บคำติชมเพื่อแสดงความคิดเห็นหรือถามคำถาม คุณสามารถเริ่มการสนทนากับเราได้