ข้ามไปที่เนื้อหาหลัก

การย้ายฐานข้อมูลคืออะไร

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

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

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

จัดทำงบประมาณ

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

เวลาหยุดทำงาน

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

ระบบต้นทางและปลายทาง 

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

ประเภทการย้าย 

การย้ายฐานข้อมูลสามารถแบ่งเป็นประเภทได้ดังต่อไปนี้

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

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

ประเภทของการย้ายฐานข้อมูลมีอะไรบ้าง

ก่อนที่จะทำการย้าย ให้พิจารณาว่าการย้ายประเภทใดที่เหมาะกับกรณีการใช้งานของคุณมากที่สุด

การย้ายแบบออฟไลน์

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

ขั้นตอนที่ 1 — สร้างการเชื่อมต่อเครือข่าย

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

ขั้นตอนที่ 2 — หยุดการเขียนของแอปพลิเคชัน

เพื่อป้องกันการเปลี่ยนแปลงที่ไม่คาดคิดในฐานข้อมูลเป้าหมาย ให้หยุดแอปพลิเคชันจากการเขียนไปยังฐานข้อมูลต้นทาง 

ขั้นตอนที่ 3 — ถ่ายโอนข้อมูลจากในองค์กรไปยังคลาวด์

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

ขั้นตอนที่ 4— ทำการสลับเปลี่ยนฐานข้อมูล

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

การย้ายเวิร์กโหลดการผลิต

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

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

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

การจำลองแบบฐานข้อมูลออนไลน์

การจำลองแบบฐานข้อมูลเกี่ยวข้องกับการเขียนสคริปต์ที่ตั้งค่าโครงร่างฐานข้อมูลในโปรแกรมฐานข้อมูลใหม่ จากนั้นจึงถ่ายโอนข้อมูลจากต้นทางไปยังฐานข้อมูลเป้าหมาย โครงร่างประกอบด้วยคำจำกัดความเพื่อจัดเก็บและจัดเรียงข้อมูลในฐานข้อมูลที่เกี่ยวข้อง วิศวกรสามารถใช้เครื่องมือจำลองแบบข้อมูลของบุคคลที่สามเพื่อสร้างและดูแลรักษาสำเนาข้อมูลหลายชุดในเซิร์ฟเวอร์ที่แตกต่างกัน ทั้งสองแนวทางนี้มีความท้าทายพอกัน เนื่องจากต้องมีการแทรกแซงด้วยตนเองอย่างมาก มีแนวโน้มที่จะเกิดข้อผิดพลาด และไม่มีประสิทธิภาพ
หากคุณต้องการวิธีการจำลองแบบฐานข้อมูลออนไลน์ที่มีประสิทธิภาพและปลอดภัยมากขึ้น ให้พิจารณาบริการ AWS Database Migration Service (DMS)  ซึ่งเป็นบริการคลาวด์ที่ช่วยย้ายฐานข้อมูลอัตโนมัติระหว่างระบบฐานข้อมูลต่าง ๆ แทนที่จะเขียนสคริปต์การถ่ายโอนข้อมูลด้วยตนเอง คุณสามารถให้ DMS สแกนโครงร่างของฐานข้อมูลต้นทางโดยอัตโนมัติ และสร้างโครงร่างใหม่สำหรับเป้าหมายได้ สิ่งนี้ช่วยให้นักพัฒนาสามารถมุ่งเน้นไปที่นวัตกรรมแอปพลิเคชันแทนที่จะต้องจัดการฐานข้อมูลที่ยุ่งยาก
ด้านล่างนี้ เราจะแบ่งปันวิธีการจำลองแบบฐานข้อมูลภายในองค์กรของคุณไปยังคลาวด์ 

ขั้นตอนที่ 1 - การตรวจสอบข้อมูลที่มีอยู่

วิเคราะห์ฐานข้อมูลที่โฮสต์ในองค์กร เพื่อเร่งกระบวนการนี้ ให้ใช้ AWS DMS Fleet Advisor เครื่องมือนี้วิเคราะห์กลุ่มอินสแตนซ์ฐานข้อมูลที่มีอยู่และเซิร์ฟเวอร์วิเคราะห์และระบุเส้นทางการย้ายที่เป็นไปได้ นอกจากนี้ยังรวบรวมประสิทธิภาพ โครงการ รูปแบบการใช้งาน และตัววัดอื่น ๆ 

ขั้นตอนที่ 2 — ย้ายฐานข้อมูลไปยังคลาวด์

ใช้ AWS DMS เพื่อย้ายฐานข้อมูลทั้งหมดจากศูนย์ข้อมูลในองค์กรไปยังคลาวด์ นอกจากนี้ คุณสามารถเปิดโหมด Change Data Capture (CDC) ของ DMS เพื่อเปิดใช้งานการจำลองแบบในแบบใกล้เรียลไทม์ ด้วย CDC, DMS จะบันทึกการเปลี่ยนแปลงข้อมูลทันทีที่เกิดขึ้นกับฐานข้อมูลต้นทาง และนำการเปลี่ยนแปลงนั้นไปใช้กับฐานข้อมูลที่จำลองแบบมาทั้งหมด 

การ Refactor ฐานข้อมูล

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

ด้านล่างนี้เป็นขั้นตอนที่ช่วยให้คุณ Refactor ฐานข้อมูล 

ขั้นตอนที่ 1 —  ตรวจสอบฐานข้อมูล

วิเคราะห์ฐานข้อมูลในองค์กรและระบุรูปแบบที่ใช้ในการจัดเก็บข้อมูล วางแผนว่าข้อมูลปัจจุบันจะถูกเก็บไว้ในฐานข้อมูลใหม่ได้อย่างไร บางครั้ง การ Refactor ฐานข้อมูลเกี่ยวข้องกับการรวมฐานข้อมูลหลายฐานข้อมูลเป็นหนึ่งหรือแจกจ่ายข้อมูลจากฐานข้อมูลเดียวไปยังฐานข้อมูลหลายฐานข้อมูล 

ขั้นตอนที่ 2 — แปลงโครงร่างฐานข้อมูล

แปลงโครงร่างที่รวบรวมจากฐานข้อมูลต้นทางเป็นรูปแบบที่ต้องการสำหรับฐานข้อมูลเป้าหมาย คุณสามารถใช้ AWS DMS Schema Conversion เพื่อปรับปรุงกระบวนการ 

หมายเหตุ: วิศวกรฐานข้อมูลอาจต้องสร้างหรือแก้ไขรูปแบบใหม่ด้วยตนเอง โดยเฉพาะอย่างยิ่งสำหรับชุดข้อมูลที่ซับซ้อนสูง 

ขั้นตอนที่ 3 — เริ่มต้นการย้ายฐานข้อมูล

ย้ายข้อมูลจากในองค์กรไปยังฐานข้อมูลคลาวด์ด้วย AWS DMS เพื่อให้แน่ใจว่าฐานข้อมูลบนคลาวด์จะบันทึกการเปลี่ยนแปลงทั้งหมดในระหว่างการย้าย ให้เปิดโหมด CDC หลังจากถ่ายโอนข้อมูลทั้งหมด ให้เปลี่ยนเส้นทางบริการแอปพลิเคชันต่าง ๆ ไปยังฐานข้อมูลคลาวด์ 

AWS สามารถสนับสนุนความต้องการการย้ายฐานข้อมูลของคุณได้อย่างไร

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