ดังน้้นทาง Microsoft ได้เตรียมแนวทางวิธีการตลอดจนเครื่องมือต่างๆ ให้กับองค์กรที่ต้องการที่จะทำการย้าย Database (Microsoft SQL Server) ไปที่ Microsoft Azure เรียบร้อยแล้วครับ ขึ้นอยู่กับความต้องการของแต่ละองค์กรว่าจะย้าย Database (Microsoft SQL Server) ไปที่ Microsoft Azure อย่างไร?
เนื่องจากการย้าย Database (Microsoft SQL Server) ไปที่ Microsoft Azure นั้นสามารถทำได้ 2 รูปแบบหลักๆ ครับ นั่นก็คือ:
1. การย้าย Database ไปที่ Microsoft Azure ในรูปแบบ IaaS คือ การย้าย Database ซึ่งรันใน Virtual Machine ที่อยู่ใน On-Premise ไปเป็น Virtual Machine (Azure Virtual Machine)
โดยใช้ Migration Strategy (Rehost หรือ Lift & Shift) และใช้ Azure Migrate Service ทำการย้ายหรือ Migrate ครับ สำหรับในรูปแบบนี้ Microsoft SQL Server ก็จะรันใน Azure Virtual Machine เหมือนกับ On-Premise ครับ เพียงแต่ย้ายมาอยู่ใน Microsoft Azure ครับ ดังนั้นในแง่ของการบริหารจัดการและดูแลในส่วนของ Infrastructure เช่น Operating System (OS), Virtual Machine, Storage, Networking, และอื่นๆ ท่านผู้อ่านก็จะต้องดูแลรักษาเหมือนเดิมครับ
2. การย้าย Database ไปที่ Microsoft Azure ในรูปแบบของ PaaS คือ การย้าย Database ซึ่งรันใน Virtual Machine ที่อยู่ใน On-Premise ไปเป็น Microsoft SQL Server ในรูปแบบ PaaS ครับ ซึ่งเรืยกว่า "Azure SQL" ครับ โดยใช้ Migration Strategy (Refactor) และใช้เครื่องมือและ Services ต่างๆ ที่ทาง Microsoft ได้เตรียมไว้ให้ เช่น DMA, DMS เป็นต้นครับ และสำหรับท่านใดที่ยังงง ว่า Microsoft SQL Server ในรูปแบบ PaaS คืออะไร ผมขออธิบายคร่าวๆ นะครับ มันคือการที่เราสร้างและใช้งาน Microsoft SQL Server ที่ไม่ต้องมี เครื่องหรือ Virtual Machine เข้ามาเกี่ยวข้องครับ นั่นหมายความว่าเราไม่ต้องมาคอยดูแลรักษา Operating System (OS), Virtual Machine, Storage, Networking, และอื่นๆ ที่ติดตั้งและใช้งาน Microsoft SQL Server เหมือนกับรูปแบบเดิมอีกต่อไปครับ ดังนั้นจึงทำให้เกิดความยืดหยุ่นและทำให้การบริหารจัดการมีประสิทธิภาพมากขึ้นครับ
และนี่จึงเป็นที่ผ่านของบทความนี้ ที่ผมจะพาทุกท่านไปทำความรู้จักกับ Azure SQL กันครับ
Azure SQL คืออะไร?
Azure SQL เป็น Service หนึ่งใน Microsoft Azure ซึ่งให้บริการ Microsoft SQL Server ในรูปแบบของ PaaS ครับ สำหรับตัวของ Azure SQL นั้นถูกพัฒนาจาก Microsoft SQL Server Database Engine เวอร์ชั่นล่าสุดและมีการอัพเดทอย่างต่อเนื่อง ( Continuously Updated) โดยไม่มีผลกระทบใดๆ กับการใช้งานครับ
นอกจากนี้แล้ว Microsoft ยังมาดูแลและจัดการส่วนประกอบต่างๆ ในส่วนของ Infrastructure เช่น Operating System (OS), Storage, Networking, Virtualization, Servers, Installation, และอื่นๆ ให้ครับ ในส่วนของผู้ใช้งานอย่างเรา ก็โฟกัสแค่ตัวของ Database อย่างเดียวครับ นอกจากนี้แล้ว Azure SQL ยังมาพร้อมความสามารถและฟีเจอร์ต่างๆ มากมาย เช่น High Availability (HA), Scalability, Built-In Intelligent Optimization, Advanced Security เป็นต้น
ดังนั้นหากท่านผู้อ่านความต้องการใช้งาน Azure SQL ไม่ว่าจะเป็นการสร้างใหม่หรือย้ายจาก On-Premise ก็ตาม สิ่งสำคัญสิ่งหนึ่งที่ควรทำเป็นอันดับแรกเลยก็คือ จะต้องทำความเข้าใจเกี่ยวกับคอนเซปและรายละเอียดของ Azure SQL ครับ จากนั้นค่อยทำการพิจารณาวางแผนและเลือกใช้งาน Azure SQL ครับผม
หลังจากที่ทราบคอนเซปที่มาที่ไปของ Azure SQL เรียบร้อยแล้ว เรามาดูกันต่อครับว่า มีสิ่งใดบ้างที่จะต้องทำความเข้าใจและพิจารณาครับ ดังนี้:
1. Deployment Option
2. Purchase Model
3. Service Tier
4. Compute Tier
1. Azure SQL Deployment Option ครับ เนื่องด้วยตัวของ Azure SQL เองนั้นมีรูปแบบสำหรับการ Deploy ใช้งานหลายรูปแบบ ดังรูปด้านล่างครับ
สำหรับ Azure SQL Deployment Option ถือว่าเป็นสิ่งที่เราจะต้องทำความเข้าใจก่อนเป็นอันดับแรกครับ ในกรณีที่องค์กรของท่านหรือตัวท่านตัดสินใจว่าจะใช้ Azure SQL แล้ว เพราะแต่ละ Option หรือรูปแบบของการ Deploy Azure SQL นั้น สิ่งที่เหมือนกันคือ ทั้ง 3 Options (Single Database, Elastic Pool, และ Managed Instance) คือ Microsoft SQL Server ที่ให้บริการในรูปแบบของ PaaS ครับ แต่สิ่งที่แตกต่างคือ การนำไปใช้งานและฟีเจอร์ที่แตกต่างกันในแต่ละ Option ครับ ผมสรุปคร่าวๆ ดังนี้ครับ:
- Single Database เป็น Dedicated Single Database ที่ถูกออกแแบบมาเพื่อรองรับกับการทำงานร่วมกับ Modern Application Development เช่น "Microservice" หรือพวก Cloud หรือ SaaS Application ครับ โดย Single Database จะมี Resource เป็นของตัวเอง และ Isolated จาก Database อื่นๆ ครับ นอกจากนี้แล้ว Single Database ยังมีฟีเจอร์ที่ต่างจาก Microsoft SQL Server ใน On-Premise ครับ
- Elastic Pool ถูกออกแบบมาเพื่อรองรับกับความต้องการที่ต้องการมี หลายๆ Databases ครับ โดย หลายๆ Databases ที่ว่านี้จะแชร์ Resources เดียวกันใช้งานครับ หรือที่เรียกว่า "Shared Resource Pool" ครับ เหมาะสำหรับการทำ Dev/Test, ต้องการหลายๆ Databases ในการใช้งานแต่ไม่ต้องการ Dedicated Database (Single Database) เป็นต้นครับ
- Managed Instance ถูกออกแแบบมาให้มีความสามารถและฟีเจอร์ต่างๆ ใกล้เคียงกับ Microsoft SQL Server ใน On-Premise ครับ ดังนั้นจึงไม่น่าแปลกใจว่า Azure SQL (Managed Instance) จึงเป็น Deployment Option ที่มีการใช้งานกันอย่างมากครับ และโดยเฉพาะอย่างยิ่งสำหรับการ Migrate SQL (On-Premise) มายัง Microsoft Azure (Azure SQL) ครับ
โปรดติดตามตอนค่อไปครับผม.....
ไม่มีความคิดเห็น:
แสดงความคิดเห็น