การจำลองศูนย์ข้อมูลหลายรายการและองค์ประชุมภายในเครื่องหรือไม่

ฉันสร้างคลัสเตอร์จาก 6 โหนด 3 โหนดใน Eu west1 และ 3 โหนดใน EU west2 ฉันตั้งค่าท้องถิ่นสำหรับโหนดทุกกลุ่มเช่น: --locality=region=europe,datacenter=west1 ฉันยังตั้งค่าแบบจำลองเป็น 6 เพื่อให้มีทุกช่วงและข้อมูลทั้งหมดบนทุกโหนด . จะเกิดอะไรขึ้นหากการเชื่อมต่อระหว่างศูนย์ข้อมูลขาดหายไปทั้งคลัสเตอร์ล่ม ? ฉันพยายามฆ่า 3 โหนดในศูนย์ข้อมูลแห่งใดแห่งหนึ่งและคลัสเตอร์ไม่ทำงานเนื่องจากโหนดส่วนใหญ่หยุดทำงานและองค์ประชุมน้อยกว่า 4 เป็นไปได้หรือไม่ที่จะทำให้ศูนย์ข้อมูล 2 แห่งทำงานกับองค์ประชุมในพื้นที่ 2/3

ฉันยังเล่นได้เล็กน้อยด้วยการตั้งค่าการจำลอง และบางครั้งคลัสเตอร์ก็มีประสิทธิภาพดีหากฉันฆ่า 3 โหนดจาก 6 โหนด และฉันสามารถเขียนไปยังคลัสเตอร์ได้ บางครั้งฉันสามารถอ่านได้จากคลัสเตอร์เท่านั้น คลัสเตอร์กำลังทำงานกับแบบจำลองของโหนด 5 และ 3 ที่ถูกฆ่าจาก 6 ยังคงจ่ายเงินด้วยสิ่งนี้ แต่ถ้าใครสามารถให้ข้อมูลเพิ่มเติมแก่ฉันได้จะมีประโยชน์มาก

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


person ldbl    schedule 21.06.2017    source แหล่งที่มา


คำตอบ (2)


CockroachDB ต้องใช้แบบจำลอง ส่วนใหญ่ เพื่อให้ทำงานได้อย่างสมบูรณ์ ซึ่งหมายความว่า > half ไม่ใช่ >= half เพื่อความอยู่รอดจากการสูญเสียศูนย์ข้อมูลหรือภูมิภาคทั้งหมด คุณต้องมี DC/ภูมิภาค สาม ไม่ใช่สองแห่ง ลองใช้งานสองโหนดในแต่ละภูมิภาคจากสามภูมิภาค แทนที่จะเป็นสามโหนดในสองภูมิภาค

เป็นไปได้หรือไม่ที่จะทำให้ศูนย์ข้อมูลทั้ง 2 แห่งทำงานร่วมกับองค์ประชุมในพื้นที่ของตน 2/3

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

person Ben Darnell    schedule 21.06.2017
comment
สูตรคือ (n - 1)/2 โดยที่ n คือจำนวนโหนด ตราบใดที่ตัวเลขเป็น 0 หรือสูงกว่า คลัสเตอร์จะยังคงอยู่ และยิ่งตัวเลขยิ่งสูงก็ยิ่งดี! - person eduncan911; 01.07.2017

ขอบคุณสำหรับคำตอบเพียงเพื่อล้างบางสิ่ง แต่ดูเหมือนว่าคุณจะเข้าใจประเด็นของฉันและสิ่งที่ฉันต้องการทำให้สำเร็จ แต่เท่าที่ฉันเข้าใจถ้าฉันมีโหนด 2x3 ใน DC ที่แตกต่างกัน 2 ตัวหาก DC หนึ่งตัวหยุดทำงาน ฉันมี 3 โหนดสดสำหรับองค์ประชุมที่ฉันต้องการอย่างน้อย 4 ไม่มี/2 +1 ดังนั้นหากฉันมี 3x3 ฉันจะสูญเสีย DC ไปหนึ่งตัว เพราะถ้าฉันมี DC 2 ตัว ฉันจะมีองค์ประชุม และคำถามสุดท้ายถ้าฉันไม่ตั้งค่าการจำลองเป็น 9 ถ้าฉันสูญเสีย 3 โหนดบางส่วนใน DC เดียวบางช่วงจะไม่สามารถใช้ได้ใช่ไหม

person ldbl    schedule 22.06.2017