MariaDB Clustering (Mode – active/active, active/passive, galera)

 

ถ้าเราพูดถึง Database หรือตัวที่เอาไว้เก็บข้อมูลล่ะก็เราจะไม่พูดถึง MariaDB ตัวนี้ไม่ได้เลย วันนี้แอดจะมาอธิบายให้พวกเราเข้าใจว่า MariaDB มันคืออะไรแล้วมันมี Mode อะไรบ้างและสุดท้ายเราจะมาพูดถึง Use Case กันนะครับ

 

MariaDB คืออะไรกันแน่

 

ตัว Database ตัวนี้เป็นตัวที่ Community ของเหล่า Developer นั้นได้พัฒนาขึ้นมาซึ่งตัวมันเองจะมีการทำงานที่คล้ายคลึงกับ MySQL ที่เรารู้จักนั่นเองอีกทั้งด้วยความที่ว่าตัวมันเองเป็น Software ที่นักพัฒนาได้สร้างขึ้นมานั่นก็หมายความว่ามันเป็น Open-source หรือที่เรียกกันง่ายๆ ว่าฟรีนั่นเอง

 

 

มาดูกันว่าแต่ละ Mode ของ MariaDB ทำอะไรได้บ้าง

 

ก่อนอื่นเลยแอดจะมาอธิบายความหมายของคำว่า Mode ของตัว Database ตัวนี้กันก่อนไม่งั้นหลายคนจะสงสัยแน่นอน Mode คือการทำ Clustering บน PROEN Any Cloud ซึ่งการทำ Cluster เราสามารถทำได้ 3 แบบ โดยสามารถทำได้แค่ Click เดียว

 

 

ทีนี้แอดจะอธิบายคร่าวๆ ให้ทุกคนเข้าใจกันครับ ว่าแต่ละ Mode แตกต่างกันยังไง

Primary-Primary

 

Primary-Primary คือการที่ Database ทั้ง Master และ Slave ได้มีการคัดลอกข้อมูลระหว่างกันอย่างต่อเนื่องโดยจะเห็นจากรูปด้านบนได้ว่าจะมี Load Balancer ในการกระจาย Traffic ต่างๆ เพื่อให้มั่นใจเมื่อตัว Database ตัวใดตัวหนึ่งเกิดมีปัญหามันสามารถที่จะย้ายไปใช้ Master อีกตัวได้

 

Primary-Secondary

 

Primary-Secondary เป็นโหมดที่พวกเราใช้กันมากที่สุดเนื่องจากว่ามันมีความสม่ำเสมอ ในการเขียนข้อมูลหรือปรับแต่งข้อมูล นอกเหนือจากนี้ ความหน่วงของของการเขียน Database ยังน้อยอีกด้วย เนื่องจากว่ามันทำการเขียนแบบ Local ในตัว Master และส่งไปยัง Slave ด้วย เพราะเหตุนี้การทำ Primary-secondary ยังสามารถที่จะ Scale Reads ได้ซึ่งถ้าเราพูดถึง Performance ละก็โหมดนี้ดีที่สุดครับ

 

Galera

 

Galera เป็นการทำ Cluster ของตัว Master หรือตัว Primary ดังในรูปด้านบนซึ่งตัวมันจะมีการคัดลอกข้อมูลระหว่างกันตลอดเวลา โดยทุกๆ ครั้งที่มี Transaction มันจะประกาศให้ทุกตัวที่อยู่ในระแวกเดียวกันรับทราบเพื่อที่มันจะคัดลอกข้อมูลและทำให้ทุกตัวมีฐานข้อมูลที่เท่ากันครับ

 

ท้ายสุดเรามาพูดถึง Use Case ของแต่ละตัวกันนะครับ

 

Primary-Primary:

– ทำ Load Balance ได้ในกรณีที่มี Traffic ปริมาณมาก

– Recover เมื่อตัวใดตัวหนึ่งตาย

.

Primary-Secondary:

– สำหรับองค์กรที่ต้องการ Performance สำหรับการอ่านข้อมูล

– สามารถสำรองข้อมูลได้โดยจะไม่กระทบกับตัว Master

– การดึงข้อมูลสำหรับการวิเคราะห์นั้นสามารถทำได้โดยการใช้ Slave ซึ่งจะไม่กระทบกับ Master เช่นกัน

.

Galera:

– สำหรับองค์ที่มีการใช้อ่านเขียนของ Database จำนวนมาก

–  ทุกอย่างไม่ว่าจะเป็นการ Read/Write เป็น Automate ทั้งหมด

 

>> เรียนรู้การ Cluster คืออะไร! กับ PROEN Any Cloud :

https://www.youtube.com/watch?v=ScC6zODT9lg

 

สนใจทดลองใช้ PROEN Cloud ฟรี! 14 วัน ลงทะเบียนได้ที่
https://www.proen.cloud/th/get-free-trials/
Tel: 02690 3888
E-mail: [email protected]