OBIEE - สคีมา
Schema คือคำอธิบายเชิงตรรกะของฐานข้อมูลทั้งหมด ประกอบด้วยชื่อและคำอธิบายของระเบียนทุกประเภทรวมทั้งรายการข้อมูลและการรวมที่เกี่ยวข้องทั้งหมด เช่นเดียวกับฐานข้อมูล DW ยังต้องดูแลสคีมา ฐานข้อมูลใช้โมเดลเชิงสัมพันธ์ในขณะที่ DW ใช้ Star, Snowflake และ Fact Constellation schema (Galaxy schema)
สคีมาของดาว
ใน Star Schema มีตารางมิติข้อมูลหลายตารางในรูปแบบที่ไม่เป็นมาตรฐานซึ่งรวมเข้ากับตารางข้อเท็จจริงเพียงตารางเดียว ตารางเหล่านี้รวมเข้าด้วยกันอย่างมีเหตุผลเพื่อตอบสนองความต้องการทางธุรกิจบางประการเพื่อวัตถุประสงค์ในการวิเคราะห์ สคีมาเหล่านี้เป็นโครงสร้างหลายมิติซึ่งใช้ในการสร้างรายงานโดยใช้เครื่องมือการรายงาน BI
มิติข้อมูลในสคีมาแบบดาวประกอบด้วยชุดของแอตทริบิวต์และตารางข้อเท็จจริงมีคีย์ต่างประเทศสำหรับมิติข้อมูลและค่าการวัดทั้งหมด
ใน Star Schema ด้านบนมีตารางข้อเท็จจริง“ Sales Fact” อยู่ตรงกลางและรวมเข้ากับตารางมิติข้อมูล 4 ตารางโดยใช้คีย์หลัก ตารางมิติข้อมูลจะไม่ถูกทำให้เป็นมาตรฐานต่อไปและการรวมตารางนี้เรียกว่า Star Schema ใน DW
ตารางข้อเท็จจริงยังประกอบด้วยค่าการวัด - ดอลลาร์_soldและ units_sold
สคีมาเกล็ดหิมะ
ใน Snowflakes Schema มีตารางมิติข้อมูลหลายตารางในรูปแบบปกติที่รวมเข้ากับตารางข้อเท็จจริงเพียงตารางเดียว ตารางเหล่านี้รวมเข้าด้วยกันอย่างมีเหตุผลเพื่อตอบสนองความต้องการทางธุรกิจบางประการเพื่อวัตถุประสงค์ในการวิเคราะห์
ความแตกต่างระหว่างสคีมาของ Star และ Snowflakes คือตารางมิติจะถูกทำให้เป็นมาตรฐานเพิ่มเติม การทำให้เป็นมาตรฐานจะแยกข้อมูลออกเป็นตารางเพิ่มเติม เนื่องจากการทำให้เป็นมาตรฐานในสคีมา Snowflake ความซ้ำซ้อนของข้อมูลจึงลดลงโดยไม่สูญเสียข้อมูลใด ๆ ดังนั้นจึงง่ายต่อการบำรุงรักษาและประหยัดพื้นที่จัดเก็บ
ในตัวอย่าง Snowflakes Schema ด้านบนตารางผลิตภัณฑ์และลูกค้าจะถูกทำให้เป็นมาตรฐานเพิ่มเติมเพื่อประหยัดพื้นที่จัดเก็บ บางครั้งยังมีการเพิ่มประสิทธิภาพการทำงานเมื่อคุณเรียกใช้แบบสอบถามที่ต้องการการประมวลผลแถวโดยตรงในตารางปกติดังนั้นจึงไม่ประมวลผลแถวในตารางมิติข้อมูลหลักและส่งตรงไปยังตาราง Normalized ในสคีมา
รายละเอียด
รายละเอียดในตารางแสดงถึงระดับของข้อมูลที่จัดเก็บในตาราง ความละเอียดสูงของข้อมูลหมายความว่าข้อมูลอยู่ในระดับธุรกรรมหรือใกล้เคียงซึ่งมีรายละเอียดมากกว่า ความละเอียดต่ำหมายความว่าข้อมูลมีระดับข้อมูลต่ำ
โดยปกติแล้วตารางข้อเท็จจริงจะได้รับการออกแบบให้มีความละเอียดต่ำ ซึ่งหมายความว่าเราต้องหาข้อมูลระดับต่ำสุดที่สามารถจัดเก็บไว้ในตารางข้อเท็จจริงได้ ในมิติข้อมูลระดับรายละเอียดอาจเป็นปีเดือนไตรมาสระยะเวลาสัปดาห์และวัน
กระบวนการกำหนดรายละเอียดประกอบด้วยสองขั้นตอน -
- การกำหนดมิติข้อมูลที่จะรวม
- การกำหนดตำแหน่งที่จะวางลำดับชั้นของข้อมูลแต่ละมิติ
เปลี่ยนขนาดอย่างช้าๆ
มิติที่เปลี่ยนแปลงอย่างช้าๆหมายถึงการเปลี่ยนแปลงมูลค่าของแอตทริบิวต์เมื่อเวลาผ่านไป เป็นหนึ่งในแนวคิดทั่วไปใน DW
ตัวอย่าง
Andy เป็นพนักงานของ XYZ Inc. เขาตั้งอยู่ครั้งแรกในนิวยอร์กซิตี้ในเดือนกรกฎาคม 2015 รายการต้นฉบับในตารางการค้นหาพนักงานมีบันทึกดังนี้ -
รหัสพนักงาน | 10001 |
---|---|
ชื่อ | แอนดี้ |
สถานที่ | นิวยอร์ก |
ในเวลาต่อมาเขาได้ย้ายไปที่ LA, California ตอนนี้ XYZ Inc. ควรแก้ไขตารางพนักงานอย่างไรเพื่อให้สอดคล้องกับการเปลี่ยนแปลงนี้
สิ่งนี้เรียกว่าแนวคิด "การเปลี่ยนมิติอย่างช้าๆ"
มีสามวิธีในการแก้ปัญหาประเภทนี้ -
โซลูชันที่ 1
ระเบียนใหม่แทนที่ระเบียนเดิม ไม่มีร่องรอยของบันทึกเก่า
การเปลี่ยนมิติข้อมูลอย่างช้าๆข้อมูลใหม่จะเขียนทับข้อมูลเดิม กล่าวอีกนัยหนึ่งคือไม่มีการเก็บประวัติ
รหัสพนักงาน | 10001 |
---|---|
ชื่อ | แอนดี้ |
สถานที่ | แอลเอแคลิฟอร์เนีย |
Benefit - นี่เป็นวิธีที่ง่ายที่สุดในการจัดการกับปัญหาการเปลี่ยนแปลงอย่างช้าๆเนื่องจากไม่จำเป็นต้องติดตามข้อมูลเก่า
Disadvantage - ข้อมูลทางประวัติศาสตร์ทั้งหมดสูญหาย
Use - ควรใช้โซลูชันที่ 1 เมื่อ DW ไม่จำเป็นต้องติดตามข้อมูลในอดีต
โซลูชันที่ 2
บันทึกใหม่ถูกป้อนลงในตารางมิติข้อมูลพนักงาน ดังนั้นพนักงานแอนดี้จึงถือว่าเป็นสองคน
มีการเพิ่มระเบียนใหม่ลงในตารางเพื่อแสดงข้อมูลใหม่และทั้งระเบียนเดิมและระเบียนใหม่จะปรากฏขึ้น ระเบียนใหม่ได้รับคีย์หลักของตัวเองดังนี้ -
รหัสพนักงาน | 10001 | 10002 |
---|---|---|
ชื่อ | แอนดี้ | แอนดี้ |
สถานที่ | นิวยอร์ก | แอลเอแคลิฟอร์เนีย |
Benefit - วิธีนี้ช่วยให้เราจัดเก็บข้อมูลประวัติทั้งหมด
Disadvantage- ขนาดโต๊ะโตเร็วขึ้น เมื่อจำนวนแถวของตารางสูงมากพื้นที่และประสิทธิภาพของตารางอาจเป็นปัญหา
Use - ควรใช้โซลูชันที่ 2 เมื่อจำเป็นสำหรับ DW เพื่อเก็บข้อมูลในอดีต
โซลูชันที่ 3
บันทึกเดิมในมิติข้อมูลพนักงานได้รับการแก้ไขเพื่อให้สอดคล้องกับการเปลี่ยนแปลง
จะมีสองคอลัมน์เพื่อระบุแอตทริบิวต์ที่เฉพาะเจาะจงโดยคอลัมน์หนึ่งระบุค่าดั้งเดิมและอีกคอลัมน์หนึ่งระบุค่าใหม่ นอกจากนี้ยังมีคอลัมน์ที่ระบุเมื่อค่าปัจจุบันเริ่มทำงาน
รหัสพนักงาน | ชื่อ | ตำแหน่งเดิม | ตำแหน่งใหม่ | วันที่ย้าย |
---|---|---|---|---|
10001 | แอนดี้ | นิวยอร์ก | แอลเอแคลิฟอร์เนีย | กรกฎาคม 2558 |
Benefits- สิ่งนี้จะไม่เพิ่มขนาดของตารางเนื่องจากมีการอัปเดตข้อมูลใหม่ สิ่งนี้ช่วยให้เราสามารถเก็บข้อมูลทางประวัติศาสตร์
Disadvantage - วิธีนี้จะไม่เก็บประวัติทั้งหมดเมื่อมีการเปลี่ยนแปลงค่าแอตทริบิวต์มากกว่าหนึ่งครั้ง
Use - ควรใช้โซลูชัน 3 เมื่อ DW จำเป็นต้องเก็บข้อมูลการเปลี่ยนแปลงในอดีตเท่านั้น
Normalization
นอร์มัลไลเซชันเป็นกระบวนการย่อยสลายตารางให้เป็นตารางขนาดเล็กที่ซ้ำซ้อนน้อยลงโดยไม่สูญเสียข้อมูลใด ๆ ดังนั้นการทำให้เป็นมาตรฐานฐานข้อมูลเป็นกระบวนการจัดระเบียบแอตทริบิวต์และตารางของฐานข้อมูลเพื่อลดความซ้ำซ้อนของข้อมูล (ข้อมูลที่ซ้ำกัน)
วัตถุประสงค์ของการทำให้เป็นมาตรฐาน
ใช้เพื่อกำจัดข้อมูลบางประเภท (ซ้ำซ้อน / จำลองแบบ) เพื่อปรับปรุงความสอดคล้อง
ให้ความยืดหยุ่นสูงสุดเพื่อตอบสนองความต้องการข้อมูลในอนาคตโดยการรักษาตารางที่สอดคล้องกับประเภทออบเจ็กต์ในรูปแบบที่เรียบง่าย
สร้างแบบจำลองข้อมูลที่ชัดเจนและอ่านได้
ข้อดี
- ความสมบูรณ์ของข้อมูล.
- ช่วยเพิ่มความสอดคล้องของข้อมูล
- ลดความซ้ำซ้อนของข้อมูลและพื้นที่ที่ต้องการ
- ลดต้นทุนการอัปเดต
- ความยืดหยุ่นสูงสุดในการตอบสนองต่อคำค้นหาเฉพาะกิจ
- ลดจำนวนแถวทั้งหมดต่อบล็อก
ข้อเสีย
แบบสอบถามในฐานข้อมูลทำงานช้าเนื่องจากต้องทำการรวมเพื่อดึงข้อมูลที่เกี่ยวข้องจากตารางปกติหลาย ๆ ตาราง
คุณต้องเข้าใจโมเดลข้อมูลเพื่อที่จะทำการเชื่อมต่อระหว่างตารางต่างๆได้อย่างเหมาะสม
ตัวอย่าง
ในตัวอย่างข้างต้นตารางในบล็อกสีเขียวแสดงถึงตารางปกติของตารางที่อยู่ในบล็อกสีแดง ตารางในบล็อกสีเขียวมีความซ้ำซ้อนน้อยกว่าและมีจำนวนแถวน้อยลงโดยไม่สูญเสียข้อมูลใด ๆ