data model for data warehouse
DESCRIPTION
แบบจำลองข้อมูลของคลังข้อมูล (การออกแบบคลังข้อมูล)TRANSCRIPT
![Page 1: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/1.jpg)
LOGO
1
Data Warehousingบทท� 5 แบบจาลองสาหรบคลงขอมล
(Data Modeling for Data Warehouse)
![Page 2: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/2.jpg)
Contents
รปแบบการออกแบบคลงขอมล2
แนวทางการออกแบบคลงขอมล3
คานยามของขอมลท�เกบลงคลงขอมล1
LOGO2
แนวทางการออกแบบคลงขอมล3
การออกแบบจาลองหลายมตจาก ER-diagram4
การออกแบบคยของตาราง5
![Page 3: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/3.jpg)
การออกแบบ Dimensional Data Model
Relational Data Model แสดงความสมพนธท�มอยจรงของขอมลตางๆ ท�ม
อยในองคกร แตเน�องจากมความซบซอนของความสมพนธคอนขางมาก ทาให
การคนหาขอมลและคานวณผลลพธท�ตองการใชในการวเคราะหระบบธรกจ
เปนไปไดยาก
ดงน�น เพ�อความสะดวกในการใชขอมล จงมการคดคน Data Model แบบ
LOGO3
ดงน�น เพ�อความสะดวกในการใชขอมล จงมการคดคน Data Model แบบ
ใหม ท�เหมาะสาหรบการแสดงผลลพธท�ตองการใช เรยกวา “แบบจาลองขอมล
เชงมต (Dimensional Data Model)”
![Page 4: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/4.jpg)
คานยามของขอมลตางๆ ท�เกบในคลงขอมล
สวนประกอบของคลงขอมล
Fact table
Measures
Dimensions (table)
LOGO4
Dimensions (table)
Attributes
Hierarchies
![Page 5: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/5.jpg)
(1) ตาราง Fact
ตาราง Fact เปนตารางหลก ใชสาหรบเกบขอมลท�เก�ยวกบหวขอท�ผใชสารสนเทศสนใจ
LOGO5
โดยตารางน�จะเกบขอมลท�มการเปล�ยนแปลงตางๆ ในองคกร รวมถงขอมลเก�ยวกบสถานะ (State) ของส�งตางๆ ท�เก�ยวของกบองคกร
![Page 6: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/6.jpg)
(1) ตาราง Fact
ในการออกแบบ Fact Table น�น ส�งท�เราตองคานงถง คอ
- Measure
- Dimension
- ความตองการในการวเคราะหขอมล
ซ�งในการสรางโครงสรางคราวๆ ของ Fact ท�เราสนใจ จะทาใหเรา
LOGO6
ซ�งในการสรางโครงสรางคราวๆ ของ Fact ท�เราสนใจ จะทาใหเราสามารถมองเหนภาพของโครงสรางของ Fact Table ท�เกดข�นได
** ตวอยางเชน ในการวเคราะหขอมล ยอดขายสนคาของรานคา ผบรหารตองการท�จะวเคราะห “ยอดขาย ตาม เวลา และประเภทสนคา”
![Page 7: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/7.jpg)
(1) ตาราง Fact
ประเภท ช�อ คาท�เปนไปได (Possible Values)
Measure ยอดขาย จานวนจรงใดๆ
Dimension (1) ประเภทสนคา สนคาบรโภค, สนคาควบคม ฯลฯ
Dimension (2) วนท� วนท� 4 กนยายน 2550, เดอนกรกฏาคม ฯลฯ
LOGO7
จากตารางทาใหเราทราบวา
Measure ตวหน�งๆ น�น จะถกกาหนดมมมองดวย Dimension ใดบาง
คาท�เปนไปได (Possible Values) บอกเราไดวา ขอบเขตของคาท�สนใจสาหรบ Dimension คออะไรบาง และสามารถบอกไดวาคา Measure จะมลกษณะเปนอยางไร (เชน เปนจานวนจรง – มทศนยม หรอเปนจานวนเตม – ไมมทศนยม)
![Page 8: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/8.jpg)
(1) ตาราง Fact
Dimension ชดหน�งๆ น�น อาจสามารถใชกาหนด Measure ไดหลายๆ ตวกได
อยางเชน Dimension ประเภทสนคา และเวลา อาจจะใชเพ�อกาหนดมมมองใหกบ
Measure จานวนสนคาท�ขาย ไดดวย โดยสามารถเพ�มเตม Measure ตวใหมไดดงน�
ประเภท ช�อ คาท�เปนไปได (Possible Values)
LOGO8
ประเภท ช�อ คาท�เปนไปได (Possible Values)
Measure (1) ยอดขาย จานวนจรงใดๆ
Measure (2) จานวนสนคาท�ขายได จานวนเตมใดๆ
Dimension (1) ประเภทสนคา สนคาบรโภค, สนคาควบคม ฯลฯ
Dimension (2) วนท� วนท� 4 กนยายน 2550, เดอนกรกฏาคม ฯลฯ
![Page 9: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/9.jpg)
(2) ตาราง Dimension
Dimension คอ รปแบบท�เราตองการดขอมล
เรามกจะตองการดขอมลในชวงเวลาตางๆ ตามภมภาคตางๆ ตามแตละชนดสนคา แตละพนกงาน เปนตน
Dimension ถกกาหนดข�นโดยอาจจะม หรอไมม Hierarchies
รายป รายไตรมาส รายเดอน รายวน
LOGO9
รายป รายไตรมาส รายเดอน รายวน
กลมผลตภณฑ รายผลตภณฑ
ตาราง Dimension แตละตารางจะประกอบดวยหน�งคยหลก (Primary Key) ท�ใชสาหรบเกบขอมลอางองจากคยท�จดเกบไวใน Fact table
![Page 10: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/10.jpg)
(3) Measures
Measures คอ คาท�ตองการอยากจะทราบ เพ�อนาไปใชประกอบการตดสนใจ
โดยท�วไปจะเปนคาทางตวเลข
มกจะเปนคาท�บวกรวมกนมา
LOGO10
มกจะเปนคาท�บวกรวมกนมา
ยอดขาย จานวนหนวยท�ขายได ผลกาไร คาใชจายอ�นๆ
Measures บางอยางก บวก รวมกนไมได
จานวนสนคาคงคลง จานวนของลกคา
![Page 11: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/11.jpg)
รปแบบการออกแบบคลงขอมล
รปแบบของการออกแบบขอมลหลายมต
Star schema: รปแบบขอมลหลายมตแบบน� จะม Fact table เปนศนยกลางและสรางความสมพนธเช�อมไปยงกลมของ Dimension tables
LOGO11
tables
Snowflake schema: เปนรปแบบของการจด Star schema ใหสละสลวยข�น โดยท�บางมตของขอมลใน Dimension table จะไดรบการปรบฐานใหเปนขอมลท�มขนาดเลกลง
![Page 12: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/12.jpg)
การออกแบบคลงขอมลแบบ Star schema
LOGO12
![Page 13: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/13.jpg)
การออกแบบคลงขอมลแบบ Snowflake schema
LOGO13
![Page 14: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/14.jpg)
ขอมลสาหรบการเลอกใชงาน Schema
Star schema Snowflake schema
จานวนแถว มากกวา นอยกวา
งายตอการเขาใจ งายกวา ยากกวา
จานวนตาราง นอยกวา มากกวา
LOGO14
จานวนตาราง นอยกวา มากกวา
ความซบซอนในการประมวลผล Query
งายกวา ยากกวา
การคนหามตขอมล เรวกวา งายกวา
![Page 15: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/15.jpg)
การออกแบบคลงขอมลDesigning of a Data Warehouse
หลงจากท�ไดทางานวเคราะหความตองการผใช และทาการจาแนกขอมล (Fact/Dimension/Measure) แลวน�น ในข�นตอนน�จะเปนการออกแบบโครงสรางของฟลดท�จาเปนของตารางท�ง 2 กลมน�น
ซ�งอาจจะประมวลเปน 2 วธ ดงน�
LOGO15
ซ�งอาจจะประมวลเปน 2 วธ ดงน�
1. การออกแบบแบบจาลองหลายมตจากขอมลการวเคราะหในแนวทางของท�ง Query oriented approach และ Business oriented approach
2. การออกแบบแบบจาลองหลายมตจาก ER-diagram
![Page 16: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/16.jpg)
การออกแบบคลงขอมล จาก ER-diagram
Step 0: เพ�มตารางขอมลมตขอมลท�เก�ยวกบเวลา
Step 1: จาแนกประเภทของ entities
Step 2: กาหนดลาดบช�นของขอมล
Step 3: การออกแบบมตของขอมล
LOGO16
Step 3: การออกแบบมตของขอมล
Step 4: การออกแบบ Schema
![Page 17: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/17.jpg)
Step 1: การจาแนกประเภทของ Entities
1. Transaction entities
คอตารางท�เกบขอมลท�เก�ยวของกบเหตการณตางๆ ท�เกดข�นในองคกร
อนไดแก
- ขอมลท�เก�ยวกบการทาธรกรรมตางๆ ท�เกดข�นในองคกร
(business transaction)
LOGO17
(business transaction)
- ขอมลท�เก�ยวกบเหตการณท�เกดข�นในองคกร
ส�งสาคญคอ แตละจดของขอมลจะมความสมพนธกบเวลา
![Page 18: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/18.jpg)
Step 1: การจาแนกประเภทของ Entities
2. Component entities
คอตารางท�เกบขอมลคาอธบายของฟลดบางฟลด ในตารางท�จดอยในประเภท Transaction entities
โดยสวนใหญความสมพนธระหวางตารางในกลม Component entities กบ Transaction entities มนอยในรป 1-M
LOGO18
Transaction entities มนอยในรป 1-M
นอกจากน�ขอมลท�จดเกบอยในตารางในกลม Component entities น�มกใชสาหรบแทนความหมายของ ใคร, อะไร, ท�ไหน, อยางไร
ดงน�น ตารางขอมลมตขอมลท�เก�ยวกบเวลา ท�เพ�มใน Step 0 กถอวาเปน Component entity ประเภทหน�ง
![Page 19: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/19.jpg)
Step 1: การจาแนกประเภทของ Entities
3. Classification entities
คอตารางท�เกบความหมายของตารางท�อยในกลมของ Component entities
โดยสวนใหญความสมพนธระหวางตารางในกลม Classification entities กบ Component entities มนอยในรป 1-M
ขอมลของตารางในกลมน� สามารถนามาใชสาหรบการจดลาดบช�น (Hierarchy)
LOGO19
ขอมลของตารางในกลมน� สามารถนามาใชสาหรบการจดลาดบช�น (Hierarchy) ของขอมล
ในบางกรณ ตารางใดตารางหน�งอาจจาแนกอยใน entities ไดหลายประเภท ดงน�งจงตองมการจดลาดบความสาคญของประเภท entities
![Page 20: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/20.jpg)
Step 2: การกาหนดลาดบช�นของขอมล
ในข�นตอนน� เปนข�นตอนท�สาคญในการสรางแบบจาลองมตของขอมล (Dimensional model)
การกาหนดลาดบช�นของขอมล หมายถง การกาหนดระดบความละเอยดของการประมวลผลขอมลสารสนเทศ
LOGO20
ถาหากจดเกบขอมลท�มการจาแนกขอมลสรปท�ละเอยดมากๆ ไวในฐานขอมล จะทาใหส�นเปลองพ�นท�ในการจดเกบ
แตในขณะเดยวกน ถาไมจดเกบขอมลท�ละเอยดไว ขอมลในสวนท�ถกยบหรอสรปรวม กจะสญหาย ไมสามารถเรยกคนได
![Page 21: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/21.jpg)
Step 3: การสรางแบบจาลองมตขอมล
ข�นตอนท� 1 เลอกความสมพนธในรปลาดบช�นของขอมลท�สรปไวใน Step 2 มาพจารณาทละความสมพนธ
ข�นตอนท� 2 ทาการกาหนดฟลดใหกบ Component entities โดยการยบลาดบช�น
ข�นตอนท� 3 จาก Component entities ท�พบในข�นตอนท� 2 ใหพจารณา
LOGO21
ข�นตอนท� 3 จาก Component entities ท�พบในข�นตอนท� 2 ใหพจารณาความสมพนธในลาดบช�นตอไป
ข�นตอนท� 4 ทาการเลอกความสมพนธในรปลาดบช�นของขอมลท�สรปไวใน Step 2 มาพจารณาเพ�มเตม จนกระท�งพจารณาทกความสมพนธ
![Page 22: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/22.jpg)
Step 4: การออกแบบ Schema
ในท�น�สามารถแบงวธการออกแบบ Schema ออกไดเปน 2 แบบ คอ
4.1 Star schema
4.2 Snowflake schema
LOGO22
4.2 Snowflake schema
(**ไดจากการทา Normalizing Star schema)
![Page 23: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/23.jpg)
Step 4: การออกแบบ Schema
4.1 Star schema สามารถสรางมาไดจาก ER diagram ดงน�
ตาราง Fact ตารางประเภทน�สามารถสรางมาจากตารางท�ถกจดใหอยในประเภท Transaction entities โดยคยหลกของตารางน�จะเปนคยท�ประกอบมาจากคยหลกของตารางประเภท Component entities
ตาราง Dimension ตารางประเภทน�สามารถสรางมาจากตารางท�ถกจดให
LOGO23
ตาราง Dimension ตารางประเภทน�สามารถสรางมาจากตารางท�ถกจดใหอยในประเภท Component entities
เกณฑ (Measure) คอขอมลสรปของแตละตาราง Fact ซ�งขอมลเหลาน� มกเปนเปาหมายและวตถประสงคขององคกร
![Page 24: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/24.jpg)
Step 4: การออกแบบ Schema
4.2 Snowflake schema สามารถสรางมาไดจาก ER diagram ดงน�
โดยสามารถสรางจาก Star schema ดวยการแตกการยบรวมลาดบช�น หรอ Normalizing
ตาราง Fact ตารางประเภทน�สามารถสรางมาจากตารางท�ถกจดใหอยในประเภท Transaction entities โดยคยหลกของตารางน�จะเปนคยท�รวมคย
LOGO24
ประเภท Transaction entities โดยคยหลกของตารางน�จะเปนคยท�รวมคยอ�นๆ ท�อางถง Component entities
ตาราง Dimension ตารางประเภทน�สามารถสรางมาจากตารางท�ถกจดใหอยในประเภท Component entities
**ลาดบช�นของตาราง Dimension ยงคงอย
![Page 25: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/25.jpg)
สรป: Step 4
Snowflake schema เปนวธการออกแบบท�ไมพงประสงคนก เน�องจากในข�นตอนของการดงขอมลจากคลงขอมล เพ�อนามาวเคราะหแบบ Online น�น จะเปนตองทาการ Join ตารางมากมาย เพ�อใหสรางรายงานไดตรงตามความตองการ
LOGO25
การกระจายขอมลออกเปนลาดบช�นน�น มขอดคอ เขาใจงาย สาหรบผท�มพ�นฐานการออกแบบฐานขอมลปฏบตการประจาวน (OLTP database)
![Page 26: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/26.jpg)
การออกแบบคยของตาราง
คยหลกของตาราง Dimension และตาราง Fact ในคลงขอมล มกจะถกกาหนดคยหลกข�นมาใหมแทนท�คยหลกเดม ท�เรยกวา Business keyท�งน� เน�องจาก
ขอมลท�นามาเกบรวบรวมในคลงขอมล มกเปนขอมลท�มาจากหลายแหลง ซ�งมโอกาสท�คย/ขอมลแตละแหลงอาจมมาตรฐานในการ
LOGO26
ขอมลท�นามาเกบรวบรวมในคลงขอมล มกเปนขอมลท�มาจากหลายแหลง ซ�งมโอกาสท�คย/ขอมลแตละแหลงอาจมมาตรฐานในการจดเกยไมเหมอนกน
คยหลกในตาราง Fact มกเปนคยท�ประกอบดวยคยจานวนมาก ทาใหเกดการเสยเวลาในการทา index ขอมล
![Page 27: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/27.jpg)
การออกแบบคยของตาราง
LOGO27
![Page 28: Data Model for Data Warehouse](https://reader033.vdocuments.net/reader033/viewer/2022052317/568c38f41a28ab0235a09f45/html5/thumbnails/28.jpg)
LOGO
28
Do you have any Question ??