ในโมดูลก่อนหน้านี้ เราได้กำหนดรูปแบบการเข้าถึงแอปพลิเคชันเกม มาในโมดูลนี้ เราออกแบบคีย์หลักสำหรับตาราง DynamoDB และเปิดใช้งานรูปแบบการเข้าถึงส่วนหลัก
ระยะเวลาที่ใช้ในการศึกษาโมดูล: 20 นาที
ขณะที่กำลังออกแบบคีย์หลักสำหรับตาราง DynamoDB โปรดคำนึงถึงวิธีปฏิบัติที่ดีที่สุดต่อไปนี้อยู่เสมอ:
- เริ่มต้นจากเอนทิตีที่ต่างกันในตาราง หากคุณกำลังคืนค่าประเภทข้อมูลที่แตกต่างกันจำนวนมากในตารางเดียว เช่น พนักงาน แผนก ลูกค้า และใบสั่ง โปรดตรวจสอบให้แน่ใจว่าคีย์หลักของคุณสามารถระบุเอนทิตีแต่ละเอนทิตีได้อย่างชัดเจน และสามารถดำเนินการหลักๆ กับไอเท็มแต่ละไอเท็ม
- ใช้คำนำหน้าเพื่อแยกความแตกต่างระหว่างประเภทของเอนทิตี การใช้คำนำหน้าเพื่อแยกความแตกต่างระหว่างประเภทของเอนทิตีนั้น จะสามารถป้องกันการขัดแย้งกันและช่วยในการสืบค้นข้อมูล ตัวอย่างเช่น หากคุณมีทั้งลูกค้าและพนักงานในตารางเดียวกัน คีย์หลักสำหรับลูกค้าอาจจะเป็น CUSTOMER#<CUSTOMERID> และคีย์หลักสำหรับพนักงานอาจจะเป็น EMPLOYEE#<EMPLOYEEID>
- มุ่งเป้าไปที่การดำเนินการกับไอเท็มเดียวก่อน จากนั้น จึงเพิ่มการดำเนินการกับไอเท็มจำนวนมาก หากสามารถทำได้ สำหรับคีย์หลักนั้น สิ่งที่สำคัญก็คือ คุณต้องสามารถตอบสนองตัวเลือกในการอ่านและเขียนบนไอเท็มเดียวโดยใช้ API ไอเท็มเดียว: GetItem, PutItem, UpdateItem และ DeleteItem นอกจากนี้ คุณอาจต้องสามารถตอบสนองรูปแบบการอ่านไอเท็มจำนวนมากของคุณด้วยคีย์หลักโดยใช้ การสืบค้น หากทำไม่ได้ คุณสามารถเพิ่มดัชนีรองเพื่อจัดการกรณีการใช้ การสืบค้น
เรามาออกแบบคีย์หลักสำหรับตารางของแอปพลิเคชันเกมและดำเนินการขั้นพื้นฐานบางอย่างโดยคำนึงถึงวิธีปฏิบัติที่ดีที่สุดเหล่านี้กันเถอะ