ฉันยังใหม่กับโลก MySQL และทั้งสองก็สับสน พวกเขาทั้งคู่ไม่ให้ความพร้อมใช้งานสูงและการแยกชิ้นส่วนใช่หรือไม่
นอกจากนี้ WebScaleSQL เปรียบเทียบอย่างไร
ฉันยังใหม่กับโลก MySQL และทั้งสองก็สับสน พวกเขาทั้งคู่ไม่ให้ความพร้อมใช้งานสูงและการแยกชิ้นส่วนใช่หรือไม่
นอกจากนี้ WebScaleSQL เปรียบเทียบอย่างไร
คำตอบ:
3 สิ่งเหล่านี้ไม่มีอะไรเกี่ยวข้องกัน ฉันจะให้คำแนะนำแก่คุณและคุณสามารถค้นหาหรือขอข้อมูลเพิ่มเติมแยกต่างหาก:
MySQL Clusterเป็นชื่อทางการตลาดของสิ่งที่พวกเราหลายคนเรียก - เพื่อหลีกเลี่ยงความสับสนเช่นเดียวกับที่คุณกำลังทุกข์ทรมานจาก - "NDB Cluster" หรือ "MySQL NDB Cluster" เป็นที่เก็บคีย์ - ค่าหน่วยความจำส่วนใหญ่แบบซิงโครนัสซึ่งอนุญาตให้มีสถาปัตยกรรมแบบไม่มีอะไรที่ใช้ร่วมกันได้สำหรับ MySQL (จัดเตรียมแบ็กเอนด์ให้กับ NDB Engine) มันให้เศษอัตโนมัติ (ดังนั้นดีกว่าอ่านและเขียนทรูพุต) และความพร้อมใช้งานสูง. มันทำงานได้ดีสำหรับระบบคีย์ข้อมูลขนาดเล็กที่มีปริมาณงานสูง แต่มีความซับซ้อนในการตั้งค่า (นำไปสู่ปัญหาหากไม่ได้กำหนดค่าอย่างถูกต้องหรือถูกใช้ในวิธีที่ไม่ได้ตั้งใจ) และไม่ใช่ความล่าช้าที่ดีที่สุด ฉลาด (ความเร็วดิบ) นี่เป็นเวอร์ชั่นที่เรียบง่าย (สามารถใช้กับสิ่งอื่น ๆ ได้มากกว่าหน่วยความจำเท่านั้นและคีย์ - ค่า แต่มันถูกออกแบบมาโดยรอบ) ในความคิดของฉันวิศวกรรมที่ดีมาก แต่มีข้อ จำกัด ในการใช้งานเนื่องจากเป็นผลิตภัณฑ์ที่แตกต่างจากเซิร์ฟเวอร์ MySQL ทั่วไปที่มีการดาวน์โหลดแยกต่างหาก (และจำเป็นต้องใช้เครื่องมือเฉพาะ)
MySQL ผ้าเป็นชุดเครื่องมือ / มิดเดิลแวร์เขียนในหลามที่ช่วยให้ผู้จัดการของชุดของ MySQL เซิร์ฟเวอร์ปกติในสภาพแวดล้อมที่ มันไม่ได้เป็นคลัสเตอร์ต่อ seแต่จะอำนวยความสะดวกในการจัดการของหนึ่ง มีลิงก์ไปยัง (ตอนนี้) ตัวเชื่อมต่อ Java และ Python ดังนั้นจึงสามารถจัดการกับ sharding และความพร้อมใช้งานสูงของเซิร์ฟเวอร์ได้โดยอัตโนมัติ แต่เป็นเลเยอร์ที่อยู่ด้านบนสุดของเซิร์ฟเวอร์ MySQL ปกติและการจำลองแบบปกติ . การจำลองแบบจนถึงขณะนี้คือแบบอะซิงโครนัส (หรือกึ่งซิงโครนัส) ดังนั้นจึงอาจไม่ได้ให้ความมั่นคงและความปลอดภัยที่ดีที่สุด สิ่งนี้อาจเปลี่ยนแปลงในรุ่น 5.7 ในอนาคต อย่างไรก็ตามวิธีการนี้มีค่าใช้จ่ายในการตอบสนองต่อเวลาน้อยกว่าและใช้เทคโนโลยีการจำลองแบบที่คุ้นเคยมากกว่าของ MySQL DBA MySQL Fabric เป็นเด็กที่ค่อนข้างใหม่ในละแวกใกล้เคียงดังนั้นจึงยังไม่ขยายออกไปมากนัก แต่ดูเหมือนว่าปฏิกิริยาของออราเคิล (รวมถึงการจำลองแบบซิงโครนัสที่ประกาศแล้ว) ให้กับกลุ่ม Galera-based ของคู่แข่ง
หากคุณต้องการใช้การแบ่งส่วนและ HA คุณอาจใช้หนึ่งในสองผลิตภัณฑ์เก่า แต่อาจเป็นไปได้สำหรับสถานการณ์ที่แตกต่างกันโดยสิ้นเชิง
WebScaleSQLไม่ใช่โซลูชัน HA เช่นเดียวกับก่อนหน้านี้เป็นเพียงชื่อที่ บริษัท หลายแห่งมอบให้กับMySQL / ทางแยกของรุ่นที่พวกเขาแบ่งปันแพทช์เฉพาะที่พวกเขาต้องการและบางที Oracle ไม่ได้ใช้ เท่าที่ฉันรู้ว่ามันถูกสร้างขึ้นโดย Facebook, Twitter, LinkedIn และ Google และพวกเขา rebase รุ่น MySQL ของตัวเองบนฐานสามัญนั้น พวกเขาไม่ได้ให้การสนับสนุนหรือเผยแพร่ไบนารี หากคุณเป็นผู้ใช้คุณอาจไม่ควรใช้มัน แต่คุณควรจับตามองโครงการเพื่อดูว่าอะไรจะเกิดขึ้นจากมันหรือการตอบสนองจากผู้ขายรายอื่น
หากคุณพยายามที่จะเรียนรู้ / เริ่มต้นด้วย MySQL HA / การปรับขนาดให้เริ่มต้นด้วยการจำลองแบบ MySQLขั้นพื้นฐาน(อาจไม่ดีที่สุด แต่มันเป็นสิ่งที่ง่ายที่สุดในการเริ่มต้นด้วย) จากนั้นคุณสามารถดำเนินการต่อจากที่นั่นไปยังโซลูชันอื่น ๆ : DRBD [ sic], การจำลองแบบ GTID, NDB, Galera, Tungsten
MySQL Fabric ถูกนำมาใช้เป็นโหนด / กระบวนการของ Fabric Fabric ของ MySQL (ซึ่งทำหน้าที่จัดการด้านการจัดการ) และตัวเชื่อมต่อ Fabric-aware ซึ่งสามารถกำหนดเส้นทางการสืบค้นและธุรกรรมโดยตรงไปยังเซิร์ฟเวอร์ MySQL ที่เหมาะสมที่สุด โหนด MySQL Fabric เก็บข้อมูลสถานะและเส้นทางใน State Store (ซึ่งเป็นฐานข้อมูล MySQL)
MySQL Cluster เป็นเทคโนโลยีที่ช่วยให้การทำคลัสเตอร์ของฐานข้อมูลในหน่วยความจำในระบบที่ไม่มีอะไรใช้ร่วมกัน สถาปัตยกรรมแบบไม่มีอะไรที่แชร์ช่วยให้ระบบทำงานกับฮาร์ดแวร์ราคาไม่แพงมากและมีข้อกำหนดขั้นต่ำสำหรับฮาร์ดแวร์หรือซอฟต์แวร์