Star schema และ Snowflake schema

การออกแบบฐานข้อมูล

Lis Sulmont

Curriculum Manager

Star schema

Dimensional modeling: star schema

Fact table

  • เก็บบันทึกของเมตริก
  • เปลี่ยนแปลงอยู่สม่ำเสมอ
  • เชื่อมต่อกับ dimension ผ่าน foreign key

Dimension table

  • เก็บคำอธิบายของแอตทริบิวต์
  • เปลี่ยนแปลงไม่บ่อยนัก

ตัวอย่าง:

  • จัดหาหนังสือให้ร้านค้าในสหรัฐอเมริกาและแคนาดา
  • ติดตามยอดขายหนังสือ
การออกแบบฐานข้อมูล

ตัวอย่าง star schema

ไดอะแกรม star schema

การออกแบบฐานข้อมูล

Snowflake schema (ส่วนขยาย)

ไดอะแกรม snowflake schema

การออกแบบฐานข้อมูล

Fact table เดียวกัน dimension ต่างกัน

$$

ไดอะแกรม star schema

Star schema: dimension เดียว

$$

ไดอะแกรม snowflake schema

Snowflake schema: มากกว่าหนึ่ง dimension

เนื่องจาก dimension table ถูก normalize แล้ว

การออกแบบฐานข้อมูล

Normalization คืออะไร?

  • เทคนิคการออกแบบฐานข้อมูล
  • แบ่งตารางออกเป็นตารางย่อยและเชื่อมกันผ่านความสัมพันธ์
  • เป้าหมาย: ลดความซ้ำซ้อนและเพิ่มความถูกต้องของข้อมูล
การออกแบบฐานข้อมูล

Normalization คืออะไร?

  • เทคนิคการออกแบบฐานข้อมูล
  • แบ่งตารางออกเป็นตารางย่อยและเชื่อมกันผ่านความสัมพันธ์
  • เป้าหมาย: ลดความซ้ำซ้อนและเพิ่มความถูกต้องของข้อมูล

ระบุกลุ่มข้อมูลที่ซ้ำกันและสร้างตารางใหม่สำหรับข้อมูลเหล่านั้น

การออกแบบฐานข้อมูล

Book dimension ของ star schema

$$ Book dimension ของ star schema

ค่าที่มีแนวโน้มซ้ำกันมากที่สุด:

  • ผู้แต่ง
  • สำนักพิมพ์
  • ประเภท
การออกแบบฐานข้อมูล

Book dimension ของ snowflake schema

Book dimension ของ snowflake schema

การออกแบบฐานข้อมูล

Store dimension ของ star schema

$$ Store dimension ของ star schema

  • เมือง
  • รัฐ
  • ประเทศ
การออกแบบฐานข้อมูล

Store dimension ของ snowflake schema

Store dimension ของ snowflake schema

Book dimension ของ snowflake schema

การออกแบบฐานข้อมูล

$$ $$ $$ $$ $$ Time dimension ของ star schema

$$ Time dimension ของ snowflake schema

การออกแบบฐานข้อมูล

$$

Snowflake schema

การออกแบบฐานข้อมูล

มาฝึกกันเถอะ!

การออกแบบฐานข้อมูล

Preparing Video For Download...