การออกแบบฐานข้อมูล
Lis Sulmont
Curriculum Manager
ตารางขยายใหญ่ขึ้น (หลักร้อย GB / TB)
ปัญหา: คิวรีและการอัปเดตช้าลง
สาเหตุ: เช่น อินเดกซ์ใหญ่เกินกว่าจะโหลดในหน่วยความจำ
วิธีแก้: แบ่งตารางออกเป็นส่วนย่อย (= การแบ่งพาร์ติชัน)

1. Conceptual data model
2. Logical data model
สำหรับการแบ่งพาร์ติชัน logical data model จะเหมือนเดิม
3. Physical data model
การแบ่งพาร์ติชันเป็นส่วนหนึ่งของ physical data model
แบ่งตารางได้แม้จะนอร์มัลไลซ์แล้วอย่างสมบูรณ์
เช่น เก็บ long_description ไว้บนสื่อบันทึกที่ช้ากว่า


CREATE TABLE sales ( ... timestamp DATE NOT NULL ) PARTITION BY RANGE (timestamp);CREATE TABLE sales_2019_q1 PARTITION OF sales FOR VALUES FROM ('2019-01-01') TO ('2019-03-31'); ... CREATE TABLE sales_2019_q4 PARTITION OF sales FOR VALUES FROM ('2019-10-01') TO ('2020-01-31');CREATE INDEX ON sales ('timestamp');
ข้อดี
ข้อเสีย
การออกแบบฐานข้อมูล