OBIEE - การสร้างแบบจำลองมิติ
การสร้างแบบจำลองมิติให้ชุดวิธีการและแนวคิดที่ใช้ในการออกแบบ DW ตามที่ที่ปรึกษา DW Ralph Kimball กล่าวว่าการสร้างแบบจำลองมิติเป็นเทคนิคการออกแบบสำหรับฐานข้อมูลที่มีวัตถุประสงค์เพื่อรองรับการสืบค้นของผู้ใช้ปลายทางในคลังข้อมูล มุ่งเน้นไปที่ความเข้าใจและประสิทธิภาพ ตามที่เขากล่าวแม้ว่า ER ที่มุ่งเน้นธุรกรรมจะมีประโยชน์มากสำหรับการดักจับธุรกรรม แต่ก็ควรหลีกเลี่ยงสำหรับการจัดส่งผู้ใช้ปลายทาง
การสร้างแบบจำลองมิติใช้ตารางข้อเท็จจริงและตารางมิติข้อมูลเสมอ ข้อเท็จจริงคือค่าตัวเลขซึ่งสามารถรวบรวมและวิเคราะห์ค่าความจริงได้ มิติข้อมูลกำหนดลำดับชั้นและคำอธิบายเกี่ยวกับค่าข้อเท็จจริง
ตารางมิติ
ตารางมิติเก็บแอตทริบิวต์ที่อธิบายวัตถุในตารางข้อเท็จจริง ตารางมิติมีคีย์หลักที่ระบุแถวมิติข้อมูลแต่ละแถวโดยไม่ซ้ำกัน คีย์นี้ใช้เพื่อเชื่อมโยงตาราง Dimension กับตาราง Fact
โดยปกติตารางมิติจะถูกยกเลิกการทำให้เป็นมาตรฐานเนื่องจากไม่ได้สร้างขึ้นเพื่อดำเนินธุรกรรมและใช้เพื่อวิเคราะห์ข้อมูลโดยละเอียดเท่านั้น
ตัวอย่าง
ในตารางมิติข้อมูลต่อไปนี้โดยปกติมิติของลูกค้าจะประกอบด้วยชื่อลูกค้าที่อยู่รหัสลูกค้าเพศกลุ่มรายได้ระดับการศึกษา ฯลฯ
รหัสลูกค้า | ชื่อ | เพศ | รายได้ | การศึกษา | ศาสนา |
---|---|---|---|---|---|
1 | Brian Edge | ม | 2 | 3 | 4 |
2 | เฟรดสมิ ธ | ม | 3 | 5 | 1 |
3 | แซลลี่โจนส์ | ฉ | 1 | 7 | 3 |
ตารางข้อเท็จจริง
ตารางข้อเท็จจริงประกอบด้วยค่าตัวเลขที่เรียกว่าการวัด ตารางข้อมูลข้อเท็จจริงมีคอลัมน์สองประเภทคือข้อเท็จจริงและคีย์ต่างประเทศของตารางมิติข้อมูล
มาตรการในตารางข้อเท็จจริงมีสามประเภท -
Additive - มาตรการที่สามารถเพิ่มได้ในทุกมิติ
Non-Additive - มาตรการที่ไม่สามารถเพิ่มในมิติใด ๆ
Semi-Additive - มาตรการที่สามารถเพิ่มได้ในบางมิติ
ตัวอย่าง
รหัสเวลา | รหัสผลิตภัณฑ์ | รหัสลูกค้า | หน่วยขาย |
---|---|---|---|
4 | 17 | 2 | 1 |
8 | 21 | 3 | 2 |
8 | 4 | 1 | 1 |
ตารางข้อเท็จจริงนี้ประกอบด้วยคีย์ต่างประเทศสำหรับมิติเวลามิติผลิตภัณฑ์มิติลูกค้าและหน่วยมูลค่าการวัดที่ขาย
สมมติว่า บริษัท ขายสินค้าให้กับลูกค้า การขายทุกครั้งเป็นความจริงที่เกิดขึ้นภายใน บริษัท และตารางข้อเท็จจริงจะใช้ในการบันทึกข้อเท็จจริงเหล่านี้
ข้อเท็จจริงทั่วไปคือ - จำนวนหน่วยที่ขายได้ส่วนต่างรายได้จากการขาย ฯลฯ ปัจจัยรายการตารางมิติข้อมูลเช่นลูกค้าเวลาผลิตภัณฑ์ ฯลฯ ที่เราต้องการวิเคราะห์ข้อมูล
ตอนนี้ถ้าเราพิจารณาตารางข้อเท็จจริงและมิติข้อมูลลูกค้าด้านบนก็จะมีมิติข้อมูลผลิตภัณฑ์และเวลาด้วย จากตารางข้อเท็จจริงและตารางมิติข้อมูลทั้งสามนี้เราสามารถถามคำถามเช่น: มีนาฬิกากี่เรือนที่ขายให้กับลูกค้าชายในปี 2010?
ความแตกต่างระหว่างมิติข้อมูลและตารางข้อเท็จจริง
ความแตกต่างของการทำงานระหว่างตารางมิติข้อมูลและตารางข้อเท็จจริงคือตารางข้อเท็จจริงจะเก็บข้อมูลที่เราต้องการวิเคราะห์และตารางมิติเก็บข้อมูลที่จำเป็นเพื่อให้เราสืบค้นได้
ตารางรวม
ตารางรวมประกอบด้วยข้อมูลรวมซึ่งสามารถคำนวณได้โดยใช้ฟังก์ชันการรวมที่แตกต่างกัน
อัน aggregate function เป็นฟังก์ชันที่มีการจัดกลุ่มค่าของหลายแถวเข้าด้วยกันเป็นข้อมูลเข้าในเกณฑ์ที่กำหนดเพื่อสร้างค่าเดียวที่มีความหมายหรือการวัดที่สำคัญกว่า
ฟังก์ชันการรวมทั่วไป ได้แก่ -
- Average()
- Count()
- Maximum()
- Median()
- Minimum()
- Mode()
- Sum()
ตารางรวมเหล่านี้ใช้สำหรับการเพิ่มประสิทธิภาพเพื่อรันคิวรีที่ซับซ้อนในคลังข้อมูล
ตัวอย่าง
คุณบันทึกตารางที่มีข้อมูลรวมเช่นรายปี (1 แถว) รายไตรมาส (4 แถว) รายเดือน (12 แถว) และตอนนี้คุณต้องทำการเปรียบเทียบข้อมูลเช่นรายปีจะมีการประมวลผลเพียง 1 แถวเท่านั้น อย่างไรก็ตามในตารางที่ไม่ได้รวมแถวทั้งหมดจะถูกประมวลผล
นาที | ส่งคืนค่าที่น้อยที่สุดในคอลัมน์ที่กำหนด |
MAX | ส่งคืนค่าที่มากที่สุดในคอลัมน์ที่กำหนด |
SUM | ส่งคืนผลรวมของค่าตัวเลขในคอลัมน์ที่กำหนด |
AVG | ส่งคืนค่าเฉลี่ยของคอลัมน์ที่กำหนด |
นับ | ส่งคืนจำนวนค่าทั้งหมดในคอลัมน์ที่กำหนด |
COUNT (*) | ส่งคืนจำนวนแถวในตาราง |
เลือก Avg (เงินเดือน) จากพนักงานโดยที่ title = 'developer' คำสั่งนี้จะคืนเงินเดือนโดยเฉลี่ยสำหรับพนักงานทุกคนที่มีตำแหน่งงานเท่ากับ 'Developer'
สามารถใช้การรวมที่ระดับฐานข้อมูล คุณสามารถสร้างการรวมและบันทึกไว้ในตารางรวมในฐานข้อมูลหรือคุณสามารถใช้การรวมได้ทันทีที่ระดับรายงาน
Note - หากคุณบันทึกมวลรวมในระดับฐานข้อมูลจะช่วยประหยัดเวลาและเพิ่มประสิทธิภาพการทำงาน