ฐานข้อมูล MySQL ข้ามเซิร์ฟเวอร์หลายเครื่อง


11

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

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

ดังนั้นฉันต้องอ่านอะไรวิจัยวิธีการปฏิบัติและอื่น ๆ เพื่อให้ตัวเองถูกทางด้วยสิ่งนี้?


สิ่งนี้ช่วยฉันฉันเป็นคนใหม่เมื่อพูดถึงบริการ sql ของฉันที่ครอบคลุมหลายเครื่อง ฉันมีปัญหาเล็กน้อยในการค้นหาคำถามที่เหมาะสมที่จะถามเพื่อเจาะเข้าไปในพื้นที่นี้ +1 ทั้งคำถามและคำตอบ ;)
James T Snell

คำตอบ:


8

แน่นอนคุณสามารถ ' คลัสเตอร์ MySQL ที่คุณต้องการ

คุณลักษณะหนึ่งโดยเฉพาะอย่างยิ่ง - " auto-sharding " - จะกระจายข้อมูลของคุณในหลาย ๆ เครื่อง "การปรับขนาดแบบออนไลน์" ช่วยให้คุณสามารถเพิ่มโหนดใหม่ได้หากคุณต้องการความจุมากขึ้นในขณะที่ฐานข้อมูลกำลังทำงานอยู่ สวยเท่ห์ คุณสามารถดาวน์โหลดได้ที่นี่

อย่างไรก็ตามมีอีกสองสามสิ่งที่คุณสามารถพิจารณาเพื่อแก้ไขปัญหาซึ่งอาจทำได้ง่ายกว่า:

รับฮาร์ดไดรฟ์ที่ใหญ่กว่า!

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

แบ่งตารางออกเป็นหลายฐานข้อมูล

แบ่งตารางออกเป็นหลายฐานข้อมูลซึ่งสามารถจัดเก็บข้ามไดรฟ์หลาย ๆ ตัวได้ Windows Azure มีข้อ จำกัด ด้านขนาดในฐานข้อมูลและ Microsoft แนะนำวิธีการนี้ มันยังช่วยเพิ่มประสิทธิภาพเล็กน้อย

คุณสามารถเก็บข้อมูลได้หรือไม่

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


สิ่งนี้มีจุดประสงค์เพื่อเป็นระบบการผลิตโดยที่ใช่การเก็บถาวรบางอย่างสามารถทำได้ในช่วงเวลาหนึ่ง แต่โดยทั่วไปแล้วข้อมูลที่คาดหวังซึ่งจะถูกเรียกใช้โดยตารางจำนวนหนึ่งเป็นประจำจะเป็นเทราไบต์ได้อย่างง่ายดาย แม้ว่าบิตการทำคลัสเตอร์จะช่วยให้ป่วยได้อย่างมากต้องอ่านหนังสืออย่างหนักในเรื่องนี้ขอบคุณ HD ที่ใหญ่กว่านั้นออกมา แต่น่าเสียดายที่ข้อมูลจำนวนมากที่จุดล้มเหลวเพียงจุดเดียวของฉันคือความเสี่ยงที่ยิ่งใหญ่
chris
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.