0Pricing
Cloud & IT Cert Prep · บทเรียน

ความจุแบบจัดสรรเทียบกับแบบตามต้องการ

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

ความจุแบบจัดสรรเทียบกับแบบตามต้องการ เป็นบทเรียน Cloud & IT Cert Prep ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cloud & IT Cert Prep และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน

อธิบายหน่วยความจุของ DynamoDB

DynamoDB วัดอัตราการประมวลผลด้วยหน่วยความจุการอ่าน (RCU) และหน่วยความจุการเขียน (WCU) RCU หนึ่งหน่วยรองรับการอ่านแบบสอดคล้องอย่างเข้มงวดหนึ่งครั้งต่อวินาที (หรือการอ่านแบบสอดคล้องในที่สุดสองครั้ง) สำหรับรายการข้อมูลขนาดไม่เกิน 4 KB ส่วน WCU หนึ่งหน่วยรองรับการเขียนหนึ่งครั้งต่อวินาทีสำหรับรายการข้อมูลขนาดไม่เกิน 1 KB

สำหรับรายการข้อมูลที่มีขนาดใหญ่ขึ้น ค่าใช้จ่ายจะเพิ่มขึ้นตามสัดส่วน เช่น การเขียนข้อมูลขนาด 10 KB มีค่าใช้จ่าย 10 WCU ส่วนการอ่านแบบสอดคล้องอย่างเข้มงวดขนาด 10 KB มีค่าใช้จ่าย 3 RCU (ceil(10/4) = 3) การทำความเข้าใจหน่วยความจุเป็นสิ่งสำคัญต่อการประเมินค่าใช้จ่ายและวินิจฉัยข้อผิดพลาดการจำกัดอัตรา ProvisionedThroughputExceededException

โหมดความจุแบบจัดสรรล่วงหน้า

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

โหมดแบบจัดสรรล่วงหน้าเหมาะอย่างยิ่งสำหรับงานที่มีปริมาณการใช้งานที่คาดการณ์ได้และคงที่ ค่าใช้จ่ายต่อหน่วยต่ำกว่าโหมดตามการใช้งานจริง และคุณยังลดค่าใช้จ่ายได้ด้วยการซื้อความจุสำรองของ DynamoDB (ข้อผูกพัน 1 ปีหรือ 3 ปี พร้อมส่วนลดสูงสุด 76%)

# Create a table with provisioned capacity
aws dynamodb create-table \
  --table-name Products \
  --attribute-definitions AttributeName=ProductId,AttributeType=S \
  --key-schema AttributeName=ProductId,KeyType=HASH \
  --provisioned-throughput ReadCapacityUnits=100,WriteCapacityUnits=50

โหมดความจุแบบตามการใช้งานจริง

ในโหมดตามการใช้งานจริง DynamoDB จะปรับขนาดโดยอัตโนมัติเพื่อรองรับปริมาณการใช้งานทุกระดับ โดยไม่ต้องวางแผนความจุ คุณจ่ายตามคำขอ ได้แก่ RRU (หน่วยคำขออ่าน) และ WRU (หน่วยคำขอเขียน) ที่ใช้จริง ไม่มีความจุแบบจัดสรรล่วงหน้าให้ต้องจัดการ และไม่มีการจำกัดอัตราเนื่องจากขีดจำกัดของความจุแบบจัดสรรล่วงหน้า

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

# Create a table in on-demand mode
aws dynamodb create-table \
  --table-name Events \
  --attribute-definitions AttributeName=EventId,AttributeType=S \
  --key-schema AttributeName=EventId,KeyType=HASH \
  --billing-mode PAY_PER_REQUEST

การสลับระหว่างโหมดความจุ

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

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

# Switch a table to on-demand billing mode
aws dynamodb update-table \
  --table-name Products \
  --billing-mode PAY_PER_REQUEST

การปรับขนาดอัตโนมัติของ DynamoDB สำหรับโหมดแบบจัดสรรล่วงหน้า

การปรับขนาดอัตโนมัติของ DynamoDB จะปรับ RCU และ WCU ที่จัดสรรไว้โดยอัตโนมัติตามปริมาณการใช้งานจริง คุณกำหนดเปอร์เซ็นต์การใช้ประโยชน์เป้าหมาย (เช่น 70%) และช่วงความจุขั้นต่ำ/สูงสุด นโยบายการปรับขนาดอัตโนมัติของแอปพลิเคชันจะตรวจสอบความจุที่ตารางใช้ไป และปรับความจุที่จัดสรรไว้เพื่อรักษาระดับการใช้ประโยชน์เป้าหมาย

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

# Register table as an auto scaling target
aws application-autoscaling register-scalable-target \
  --service-namespace dynamodb \
  --resource-id 'table/Products' \
  --scalable-dimension dynamodb:table:ReadCapacityUnits \
  --min-capacity 10 \
  --max-capacity 1000

ความจุสำรองรับปริมาณการใช้งานที่พุ่งขึ้น

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

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

การจำกัดอัตราและการจัดการข้อผิดพลาด

เมื่อใช้ความจุแบบจัดสรรล่วงหน้าเกินขีดจำกัด (และใช้ความจุสำรองจนหมด) DynamoDB จะส่งคืน ProvisionedThroughputExceededException ชุดเครื่องมือพัฒนาซอฟต์แวร์ AWS มีตรรกะการลองใหม่ในตัวพร้อมการหน่วงเวลาแบบทวีคูณและการสุ่มช่วงหน่วง ซึ่งจะลองส่งคำขอที่ถูกจำกัดอัตราใหม่โดยอัตโนมัติ

หากต้องการวินิจฉัยการจำกัดอัตรา ให้ตรวจสอบเมตริก CloudWatch SystemErrors และ ThrottledRequests หากคีย์พาร์ทิชันบางรายการถูกจำกัดอัตรา ขณะที่การใช้ประโยชน์ของตารางโดยรวมยังต่ำ แสดงว่าคุณมีปัญหาพาร์ทิชันร้อน—ให้ออกแบบคีย์พาร์ทิชันใหม่ เพิ่มคีย์เรียงลำดับ หรือใช้การแบ่งส่วนการเขียน

การประเมินข้อกำหนดด้านความจุ

หากต้องการประเมินความจุสำหรับโหมดแบบจัดสรรล่วงหน้า:

  • คำนวณจำนวนการเขียนสูงสุดต่อวินาที × ขนาดรายการข้อมูลเฉลี่ย / 1 KB (ปัดขึ้น) = WCU ที่ต้องใช้
  • คำนวณจำนวนการอ่านสูงสุดต่อวินาที × ขนาดรายการข้อมูลเฉลี่ย / 4 KB (ปัดขึ้น) = RCU ที่ต้องใช้ (แบบสอดคล้องอย่างเข้มงวด) แล้วหารสองสำหรับการอ่านแบบสอดคล้องในที่สุด
  • เพิ่มเผื่อจากค่าสูงสุดอีก 20–30% เพื่อรองรับปริมาณการใช้งานที่พุ่งขึ้นก่อนใช้ความจุสำรองจนหมด

ตัวอย่าง: การเขียน 1,000 ครั้งต่อวินาที โดยมีรายการข้อมูลขนาด 2 KB = 2,000 WCU การอ่าน 5,000 ครั้งต่อวินาที โดยมีรายการข้อมูลขนาด 8 KB (แบบสอดคล้องในที่สุด) = ceil(8/4) × 5,000 / 2 = 5,000 RCU

ความจุสำรองเพื่อลดค่าใช้จ่าย

ความจุสำรองของ DynamoDBช่วยให้คุณซื้อ RCU และ WCU จำนวนคงที่เป็นระยะเวลา 1 ปีหรือ 3 ปี โดยชำระเงินล่วงหน้าเพื่อรับส่วนลดจำนวนมาก (สูงสุด 76%) เมื่อเทียบกับราคาแบบตามการใช้งานจริง ความจุสำรองมีผลกับตารางทั้งหมดที่ใช้โหมดแบบจัดสรรล่วงหน้าใน Region เดียวกัน และระบบจะนำไปหักกับค่าใช้จ่ายรายชั่วโมงของคุณโดยอัตโนมัติ

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

การเปรียบเทียบโหมด: คู่มือการตัดสินใจสำหรับการสอบ

ใช้คู่มือการตัดสินใจนี้สำหรับคำถามเกี่ยวกับโหมดความจุใน SAA-C03:

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

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

ความจุแบบปรับตามการใช้งาน

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

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

ตรวจสอบความเข้าใจอย่างรวดเร็ว

ทดสอบความเข้าใจแนวคิด AWS Solutions Architect (SAA-C03) จากบทเรียนนี้

สรุปบทเรียน

ในบทเรียนนี้ คุณได้เรียนรู้ว่า โหมดแบบจัดสรรล่วงหน้ากำหนด RCU/WCU คงที่สำหรับงานที่คาดการณ์ได้ด้วยค่าใช้จ่ายที่ต่ำกว่า โหมดตามการใช้งานจริงจะปรับขนาดโดยอัตโนมัติสำหรับปริมาณการใช้งานที่คาดเดาไม่ได้ โดยมีราคาต่อคำขอสูงกว่า และการปรับขนาดอัตโนมัติจะปรับความจุแบบจัดสรรล่วงหน้าตามเปอร์เซ็นต์การใช้ประโยชน์เป้าหมาย บทถัดไปจะกล่าวถึง Global Secondary Indexes และ Local Secondary Indexes สำหรับรูปแบบการสืบค้นทางเลือก

คำถามที่พบบ่อย

บทเรียน “ความจุแบบจัดสรรเทียบกับแบบตามต้องการ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ความจุแบบจัดสรรเทียบกับแบบตามต้องการ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cloud & IT Cert Prep ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ความจุแบบจัดสรรเทียบกับแบบตามต้องการ”

เลือกระหว่างปริมาณงานที่จัดสรรพร้อมการปรับขนาดอัตโนมัติกับโหมดตามต้องการ โดยพิจารณาจากความคาดการณ์ได้ของปริมาณการใช้งานและต้นทุน คุณปฏิบัติ Cloud & IT Cert Prep ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cloud & IT Cert Prep หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cloud & IT Cert Prep บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “ความจุแบบจัดสรรเทียบกับแบบตามต้องการ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cloud & IT Cert Prep นี้ได้ไหม

ได้ บทเรียน Cloud & IT Cert Prep ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ตาราง รายการ และคีย์หลัก
  2. ความจุแบบจัดสรรเทียบกับแบบตามต้องการ
  3. ดัชนีรองระดับโลกและดัชนีรองเฉพาะที่
  4. สตรีม DynamoDB และตารางทั่วโลก
← กลับไปที่ Cloud & IT Cert Prep