ตารางส่วนกลางของ Amazon DynamoDB
ตารางส่วนกลางคืออะไร
ตารางส่วนกลางของ DynamoDB เป็นฐานข้อมูลแบบหลายรีเจี้ยนและมัลติแอคทีฟที่มีการจัดการอย่างเต็มรูปแบบซึ่งไม่ต้องใช้เซิร์ฟเวอร์ ตารางส่วนกลางมีความพร้อมใช้งานสูงสุด 99.999% ความยืดหยุ่นของแอปพลิเคชันที่เพิ่มขึ้น และความต่อเนื่องทางธุรกิจที่ได้รับการปรับปรุง เนื่องจากตารางส่วนกลางจะจำลองตารางของคุณโดยอัตโนมัติใน AWS Region ที่คุณเลือก คุณจึงสามารถบรรลุประสิทธิภาพการอ่านและเขียนภายในเครื่องที่รวดเร็วได้
ในกรณีที่การประมวลผลแอปพลิเคชันของคุณหยุดชะงักในรีเจี้ยนเดียว คุณไม่จำเป็นต้องมีการใช้ระบบสำรองเพื่อกู้คืนข้อมูลของฐานข้อมูล เนื่องจากสถาปัตยกรรมมัลติแอคทีฟของตารางส่วนกลางช่วยให้ลูกค้าสามารถอ่านและเขียนลงในตารางจำลองใด ๆ ก็ได้ นอกจากนี้ ตารางส่วนกลางยังช่วยขจัดงานที่ยุ่งยากในการแก้ไขความขัดแย้งในการอัปเดตสำหรับเวิร์กโหลดแบบหลายรีเจี้ยน
ตารางส่วนกลางรองรับทั้งโหมดเข้มงวดและโหมดสุดท้ายเพื่อความสอดคล้องหลายรีเจี้ยน ความสอดคล้องหลายรีเจี้ยนช่วยให้คุณมีความยืดหยุ่นสูงสุดของแอปพลิเคชัน และช่วยให้แอปพลิเคชันของลูกค้าพร้อมใช้งานอยู่เสมอและอ่านข้อมูลล่าสุดจากรีเจี้ยนใดก็ได้เสมอ ขณะนี้คุณสามารถสร้างแอปพลิเคชันที่มีระยะเวลาที่ข้อมูลอาจสูญหายได้สูงสุดเป็นศูนย์ได้แล้ว ด้วยความสอดคล้องหลายรีเจี้ยน คุณสามารถสร้างแบบจำลองภายในบัญชี AWS เดียวหรือในบัญชี AWS หลายบัญชี
วิธีทำงาน
ตารางส่วนกลางของ DynamoDB ประกอบด้วยตารางจำลองหลายตาราง ตารางจำลองแต่ละตารางจะอยู่ในรีเจี้ยนที่แตกต่างกัน แต่ตารางจำลองทั้งหมดจะมีสคีมาคีย์หลักเหมือนกัน เมื่อมีการเขียนข้อมูลลงในตารางจำลอง DynamoDB จะจำลองข้อมูลดังกล่าวไปยังตารางจำลองอื่น ๆ ทั้งหมดในตารางส่วนกลางโดยอัตโนมัติ
ตัวอย่างเช่น สมมติว่าแอปพลิเคชันของคุณให้บริการฐานลูกค้าขนาดใหญ่ที่กระจายอยู่ทั่วพื้นที่ทางภูมิศาสตร์สามแห่ง ได้แก่ ชายฝั่งตะวันออกของสหรัฐอเมริกา แคนาดา และยุโรปตะวันตก หากไม่มีตารางส่วนกลาง คุณจะต้องสร้างตารางในแต่ละ AWS Region และเขียนโค้ดเพื่อจำลองการเปลี่ยนแปลงข้อมูลในแต่ละตารางของแต่ละรีเจี้ยน
เมื่อใช้ตารางส่วนกลาง คุณจะสามารถสร้างตารางส่วนกลางด้วยตารางจำลองในรีเจี้ยนสามแห่งที่ใกล้เคียงกับแต่ละพื้นที่ทางภูมิศาสตร์ได้ DynamoDB จะจำลองการเปลี่ยนแปลงจากแบบจำลองใด ๆ ไปยังแบบจำลองในรีเจี้ยนอื่น ๆ โดยอัตโนมัติ
ตารางส่วนกลางช่วยให้ผู้ใช้แอปพลิเคชันสามารถเข้าถึงข้อมูลที่มีเวลาแฝงต่ำได้จากทุกที่ หากการประมวลผลแอปพลิเคชันหยุดชะงักในรีเจี้ยนเดียว ลูกค้าของคุณยังคงสามารถเข้าถึงตารางแบบจำลองในรีเจี้ยนอื่น ๆ ได้
ในขณะที่สร้างตารางส่วนกลาง คุณสามารถเลือกความสอดคล้องแบบเข้มงวดหรือความสอดคล้องสุดท้าย ตารางส่วนกลางที่กำหนดค่าสำหรับความสอดคล้องแบบเข้มงวดในหลายรีเจี้ยนให้ความสามารถในการอ่านที่สอดคล้องกันอย่างมากในหลายรีเจี้ยน การตั้งค่าเริ่มต้นคือความสอดคล้องที่สุดหลายรีเจี้ยน
สำหรับตารางส่วนกลางที่กำหนดค่าโดยใช้โหมดความสอดคล้องในหลายรีเจี้ยน คุณสามารถสร้างแบบจำลองภายในบัญชี AWS เดียวหรือในบัญชี AWS หลายบัญชี ตารางส่วนกลางหลายบัญชีจะจำลองตารางในหลายบัญชีและรีเจี้ยนโดยอัตโนมัติ ซึ่งมอบความยืดหยุ่น ความปลอดภัย และการกำกับดูแลที่เพิ่มขึ้น รูปแบบนี้เหมาะอย่างยิ่งสำหรับลูกค้าที่ใช้กลยุทธ์แบบหลายบัญชี หรือใช้ AWS Organizations เพื่อปรับปรุงการแยกส่วนด้านความปลอดภัย การบังคับใช้กฎควบคุมระบบแนวเขตข้อมูล การใช้กระบวนการกู้คืนจากความเสียหายหรือการแยกเวิร์กโหลดตามหน่วยธุรกิจ
การเริ่มต้นใช้งานตารางส่วนกลางนั้นง่ายดาย เนื่องจากใช้ DynamoDB API เดียวกันกับตารางแบบรีเจี้ยนเดียว ไม่มีค่าใช้จ่ายล่วงหน้าหรือภาระผูกพันในการใช้ตารางส่วนกลาง และคุณชำระค่าบริการเฉพาะทรัพยากรที่คุณใช้เท่านั้น คุณสามารถกำหนดค่าตารางส่วนกลางในคอนโซลการจัดการของ AWS ด้วย AWS CLI (AWS CLI) หรือ AWS CloudFormation ได้ นอกจากนี้ยังง่ายในการแปลงตารางรีเจี้ยนเดียวของคุณเป็นตารางส่วนกลาง
ประโยชน์ของตารางส่วนกลาง
ตารางส่วนกลางได้รับการออกแบบให้มีความพร้อมใช้งาน 99.999% หากรีเจี้ยนเดียวถูกแยกออกหรือลดระดับลง แอปพลิเคชันของคุณสามารถเปลี่ยนการรับส่งข้อมูลไปยังรีเจี้ยนอื่นและดำเนินการอ่านและเขียนกับตารางจำลองอื่นได้ คุณสามารถใช้ตรรกะทางธุรกิจที่กำหนดเองเพื่อกำหนดเวลาที่จะเปลี่ยนเส้นทางคำขอไปยังรีเจี้ยนอื่น ๆ ได้ นอกจากนี้ ด้วยโหมดความสอดคล้องหลายรีเจี้ยนแอปพลิเคชันของคุณจะอ่านข้อมูลล่าสุดจากรีเจี้ยนใดก็ได้เสมอ
ตารางส่วนกลางช่วยขจัดความซับซ้อนและภาระการดำเนินงานของการปรับใช้และจัดการการจำลองแบบที่ใช้งานได้หลายรีเจี้ยนใน DynamoDB คุณสามารถเลือกรีเจี้ยนที่คุณต้องการจำลองข้อมูล แล้ว DynamoDB จะจัดการส่วนที่เหลือ คุณสามารถเลือกความสอดคล้องที่สุดหรือความสอดคล้องที่เข้มงวดสำหรับการจำลองระหว่างแบบจำลองตารางในแต่ละรีเจี้ยน ด้วยความสอดคล้องหลายรีเจี้ยนที่คุณไม่จำเป็นต้องคิดถึงความสอดคล้องของข้อมูลหรือการกู้คืนข้อมูลในระหว่างการทำงานของการใช้ระบบสำรองเพื่อกู้คืนข้อมูล
คุณยังสามารถเลือกที่จะสร้างแบบจำลองภายในบัญชี AWS เดียวหรือในบัญชี AWS หลายบัญชี ด้วยตารางส่วนกลางหลายบัญชี คุณสามารถสร้างแอปพลิเคชันข้ามบัญชีเพื่อการแยกตัวที่แข็งแกร่งขึ้น ความปลอดภัยและการกำกับดูแลที่ดีขึ้น และความยืดหยุ่นในการดำเนินงานที่ดีขึ้น ซึ่งสอดคล้องกับ AWS Well-Architected Framework แอปพลิเคชันจะเข้าถึงตารางส่วนกลางโดยใช้ DynamoDB API และตำแหน่งข้อมูลที่มีอยู่
ขณะนี้ตารางส่วนกลางสามารถกำหนดค่าได้ทั้งเพื่อความสอดคล้องที่เข้มงวดและความสอดคล้องที่สุด ความสอดคล้องที่เข้มงวดรับประกันว่าการอ่านที่สอดคล้องกันอย่างมากจะสะท้อนถึงการเขียนล่าสุดในขณะที่ความสอดคล้องในที่สุดจะมีระยะเวลาสั้น ๆ ก่อนที่จำลองทั้งหมดจะสะท้อนการอัปเดตล่าสุดเพื่อแลกกับการอ่านและการเขียนในท้องถิ่นที่มีเวลาแฝงต่ำลง
ในโหมดความสอดคล้องที่เข้มงวดในหลายรีเจี้ยน DynamoDB ช่วยให้มั่นใจได้ว่าการเขียนแบบจำลองใด ๆ ในรีเจี้ยนใดก็ได้พร้อมใช้งานได้ทันทีสำหรับการอ่านจากแบบจำลองอื่น หากการดำเนินการเขียนจะแก้ไขรายการที่กำลังได้รับการแก้ไขแล้วในรีเจี้ยนอื่น การเขียนนั้นจะล้มเหลวโดยมีข้อยกเว้นที่สามารถทดสอบซ้ำได้
ในโหมดความสอดคล้องที่สุดหลายรีเจี้ยน DynamoDB จะจำลองการเขียนไปยังแบบจำลองใด ๆ ในรีเจี้ยนใดก็ได้ไปยังแบบจำลองอื่น ๆ ทั้งหมด โดยปกติจะภายในหนึ่งถึงสองวินาที หากมีการแก้ไขรายการเดียวกันในหลายรีเจี้ยน DynamoDB จะแก้ไขความขัดแย้งโดยใช้วิธีการแก้ปัญหาผู้เขียนสุดท้าย
ตารางส่วนกลางช่วยให้คุณสามารถอ่านและเขียนข้อมูลของคุณในเครื่องได้ โดยให้เวลาแฝงเพียงหลักมิลลิวินาทีเดียวสำหรับแอปพลิเคชันที่กระจายทั่วโลกในทุกระดับ สิ่งนี้สามารถช่วยเพิ่มประสิทธิภาพสำหรับแอปพลิเคชันระดับโลกขนาดใหญ่ได้