แนวคิดพื้นฐาน Multidimensional Databases and Data Warehousing

บทที่ 2

NUTHDANAI WANGPRATHAM
5 min readApr 20, 2019

ในบทนี้เราครอบคลุมแนวคิดพื้นฐานของฐานข้อมูลหลายมิติและลูกบาศก์มิติข้อเท็จจริงและการวัด จากนั้นเราจะแสดงให้เห็นว่าสิ่งเหล่านี้สามารถแสดงความสัมพันธ์ ฐานข้อมูล และเราจะนำเสนอคลังข้อมูลและ Data Mart ท้ายที่สุดเราจะครอบคลุมการวิเคราะห์ข้อมูลและ การสืบค้นโดยใช้ฐานข้อมูลหลายมิติ

ตลอดหนังสือ Multidimensional Databases and Data Warehousing แสดงแนวคิดโดยพิจารณาการขายในร้านหนังสือที่สมมติขึ้น ซึ่งมีร้านค้าในเมืองต่าง ๆ เรามีตัวอย่างอย่างง่าย แต่ในตอนท้ายของเรื่องนี้และ บทต่อไปนี้เราจะสรุปแนวคิดที่สำคัญโดยใช้วิธีที่สมบูรณ์และสมจริงยิ่งขึ้น

CUBES

คิวบ์เป็นโครงสร้างข้อมูลหลายมิติสำหรับการวิเคราะห์ข้อมูล โดยทั่วไปคิวบ์เป็นตารางที่มีจำนวนมิติใด ๆ (และไม่จำเป็นต้องสองมิติเท่านั้น) นอกจากนี้ลำดับชั้นในมิติและสูตรเป็นแนวคิดชั้นหนึ่งในตัว หมายความว่าสิ่งเหล่านี้ได้รับการสนับสนุนโดยไม่ต้องทำซ้ำคำจำกัดความของพวกเขา แม้ว่าคำว่า “คิวบ์” แสดงให้เห็นว่ามีสามมิติก็สามารถมีจำนวนมิติใด ๆ มากกว่านั้นด้วยเหตุผลดังกล่าว บางครั้งใช้คำว่าไฮเปอร์คิวบ์แทนคิวบ์ อาจถูดเรียกว่า ฐานข้อมูลหลายมิติหรือคลังข้อมูลหลายมิติ

รูปที่ 2.1 แสดงลูกบาศก์สามมิติที่แสดงยอดขายหนังสือ เราสมมติว่าตารางที่ 1.1 มีข้อมูลการขายรวมสำหรับปี 2008 จากนั้นคิวบ์จะเพิ่มมิติเวลาและ มีการนับยอดขายสำหรับสองเมืองหนังสือสองเล่มและสองปี (คิวบ์โลกแห่งความจริงจะมี จำนวนมาก แต่เพื่อความสะดวกในการทำความเข้าใจเราจึงกำหนดตัวเลขไว้ต่ำ ดังตัวอย่างนี้)

คิวบ์ประกอบด้วยเซลล์ที่ระบุได้ไม่ซ้ำกันที่จุดตัดของแต่ละส่วนข้อมูล ตัวอย่างในรูปที่ 2.1 มีข้อเท็จจริงสำหรับการรวมกันของเวลา หนังสือ และเมืองที่มีการขายอย่างน้อยหนึ่งรายการ ความจริงมีจำนวนมาตรวัดที่เกี่ยวข้องเหล่านี้ คือค่าตัวเลขที่ภายในเซลล์ ในตัวอย่างที่แสดงเรามีเพียงหนึ่งการวัด จำนวนการขาย เซลล์อาจว่างเปล่าซึ่งหมายความว่าไม่มีข้อมูลที่จะบันทึกสำหรับ ค่ามิติที่กำหนด เซลล์ว่างในลูกบาศก์ในรูปที่ 2.1 จึงหมายถึงว่าหนังสือที่กำหนด ไม่ได้ขายในเมืองที่กำหนดในปีนั้น ขึ้นอยู่กับแอพพลิเคชั่นเฉพาะอย่างมาก เปอร์เซ็นต์การแปรผันของเซลล์ในคิวบ์นั้นไม่ว่างเปล่าซึ่งหมายความว่าคิวบ์มีช่วงจากการกระจัดกระจาย เพื่อความหนาแน่น ก้อนมีแนวโน้มที่จะกระจัดกระจายมากขึ้นด้วยมิติที่เพิ่มขึ้นและด้วย ละเอียดยิ่งขึ้นปลีกย่อยของค่ามิติ

ลูกบาศก์ในโลกแห่งความจริงส่วนใหญ่มีขนาด 4–12 มิติ [48; 88] แม้ว่าจะไม่มี ทฤษฎีจำกัดจำนวนมิติ แต่เครื่องมือบางอย่างอาจประสบปัญหาประสิทธิภาพการทำงาน เมื่อจำนวนมิติมากกว่า 10–15 โดยทั่วไปมีเพียง 2 หรือ 3 มิติ อาจดูได้ในเวลาเดียวกัน อย่างไรก็ตามสำหรับมิติที่มีระดับความสำคัญต่ำสามารถมีได้สูงสุด 4 มิติ สามารถแสดงโดยซ้อนหนึ่งมิติภายในอีกมิติบนแกน ดังนั้นมิติของลูกบาศก์ จะลดลงเมื่อเวลาสอบถามโดยการฉายลงไปเป็น 2 หรือ 3 มิติและรวมการวัด ค่าข้ามมิติข้อมูลที่คาดการณ์ไว้ ตัวอย่างเช่นหากเราต้องการดูยอดขายตามเมืองและเวลา เรารวบรวมมิติทั้งหมดที่กำหนดลักษณะการขายโดย Book สำหรับชุดค่าผสมแต่ละชุด ของเมืองและเวลา สำหรับคิวบ์ในรูปที่ 2.1 เราพบว่ายอดขายรวมของอาร์ลิงตันในปี 2010 คือ 573 โดยการบวกสองตัวเลข 530 และ 43

เป้าหมายที่สำคัญของการสร้างแบบจำลองหลายมิติคือ“ ให้บริบทมากที่สุด สำหรับข้อเท็จจริง” แนวคิดของมิติเป็นวิธีการกลางในการให้บริบทนี้ ผลที่ตามมาคือในฐานข้อมูลหลายมิติความซ้ำซ้อนที่ควบคุมได้นั้นโดยทั่วไปถือว่าเหมาะสมตราบใดที่มันมี การเพิ่มมูลค่าข้อมูลของข้อมูลอย่างมาก เหตุผลหนึ่งที่ทำให้เกิดความซ้ำซ้อนก็คือ ฐานข้อมูลหลายมิติมักมาจากแหล่งข้อมูลอื่นเช่นข้อมูลจากการทำธุรกรรม ระบบเชิงสัมพันธ์แทนที่จะเป็น “เกิด” เป็นข้อมูลหลายมิติซึ่ง หมายความว่าการอัปเดตนั้นหายาก และสามารถจัดการได้ง่ายขึ้น อย่างไรก็ตามโดยปกติแล้วไม่มีข้อมูลซ้ำซ้อนในข้อมูลจริงเท่านั้น

DIMENSIONS

แนวคิดของมิติเป็นแนวคิดที่จำเป็นและแตกต่างสำหรับฐานข้อมูลหลายมิติ มิติข้อมูลถูกใช้เพื่อวัตถุประสงค์สองประการ คือการเลือกข้อมูล และการจัดกลุ่มข้อมูลในระดับที่ต้องการรายละเอียด

มิติข้อมูลถูกจัดระเบียบเป็นลำดับชั้นที่คล้ายกับ hierarchy ด้วยหลายระดับ ซึ่งแต่ละชั้นแสดงถึงระดับรายละเอียดที่เป็นที่สนใจในการวิเคราะห์ ที่จะดำเนินการของมิติโดยทั่วไปเรียกว่าค่ามิติหรือสมาชิกมิติ แต่ละค่าดังกล่าวเป็นของในระดับหนึ่ง

รูปที่ 2.2 แสดง schema และ instancesของส่วนข้อมูลสถานที่ตัวอย่างสำหรับข้อมูล ตารางที่ 1.1

The Location dimension มีสามระดับคือ CiTY State และ T แสดงมิติทั้งหมดเช่นค่าทุกมิติเป็นส่วนหนึ่งของค่า

เมื่อใช้คิวบ์ชิ้นส่วนที่เกี่ยวข้องของข้อมูลจะถูกเลือกด้วยขนาด แต่ละเซลล์ในคิวบ์จะถูกระบุโดยการรวมกันของค่ามิติ ตัวอย่างเช่นการค้นหา จำนวนสำเนาของ “Winnie the Pooh” ที่ขายใน Boston เป็นเพียงเรื่องของการ จำกัด สถานที่ มิติของ“Boston ” และมิติหนังสือเป็น“ Winnie the Pooh” นอกจากนี้ยังสามารถจัดกลุ่มได้ ข้อมูลโดยใช้มิติ ตัวอย่างเช่นผู้ค้าปลีกหนังสือสามารถจัดกลุ่มข้อมูลตาม ระดับ State ในมิติ Location ที่ตั้งซึ่งยอดขายจะนับจากแต่ละCity ของState รวมเป็นหนึ่งหมายเลขสำหรับแต่ละ State

ในบ้าง multidimensional models ระดับอาจมีคุณสมบัติระดับที่เกี่ยวข้องจำนวนหนึ่ง ด้วยใช้ในการเก็บข้อมูลที่เรียบง่ายเป็น non-hierarchical ตัวอย่างเช่นขนาดประชากรของ เมืองสามารถเป็นข้อมูลในระดับต่ำสุดของมิติสถานที่ตั้ง ลำดับชั้นมิติถูกกำหนดไว้ในข้อมูลเมตาของคิวบ์หรือข้อมูลเมตาของฐานข้อมูลหลายมิติถ้าสามารถแบ่งมิติข้อมูลได้หมายความว่าปัญหาของลำดับชั้นที่ซ้ำกัน หลีกเลี่ยงคำจำกัดความตามที่กล่าวไว้ในส่วนที่ 1.4

ต่างจาก linear spaces used in matrix algebra โดยทั่วไปจะไม่มีการเรียงลำดับหรือเมตริกระยะทางบนค่ามิติในตัวแบบหลายมิติค่อนข้างการสั่งซื้อเพียงอย่างเดียวคือการบรรจุค่าระดับต่ำกว่าในค่าระดับสูงขึ้นอย่างไรก็ตามสำหรับบางส่วนข้อมูลเช่นมิติเวลาและ การเรียงลำดับของค่ามิตินั้นพร้อมใช้งานและสามารถใช้สำหรับการคำนวณข้อมูลสะสม เช่น “ยอดขายรวมในปีนี้”

ในบางกรณีจะเป็นประโยชน์สำหรับมิติที่มีการกำหนดลำดับชั้นไว้หลายชั้น สำหรับ ตัวอย่างมิติเวลาอาจมีลำดับชั้นสำหรับทั้งปีบัญชีและปีปฏิทิน หลายอย่าง ลำดับชั้นแบ่งปันระดับต่ำสุดที่พบได้ทั่วไปอย่างน้อยหนึ่งรายการเช่นวันและเดือนจากนั้นจัดกลุ่มสิ่งเหล่านี้ ในระดับที่สูงขึ้นหลายระดับเช่นไตรมาสการคลังและไตรมาสปฏิทินเพื่อให้ง่ายต่อการอ้างอิง

FACTS

ข้อเท็จจริงคือวัตถุที่แสดงถึงหัวข้อการวิเคราะห์ที่ต้องการเช่น “สิ่งต่าง ๆ” ที่น่าสนใจ หรือเหตุการณ์หรือกระบวนการที่จะต้องวิเคราะห์เพื่อให้เข้าใจพฤติกรรมที่ดีขึ้น ในหนังสือของเรา ตัวอย่างผู้ค้าปลีกเราต้องการวิเคราะห์ยอดขาย ในตัวแบบข้อมูลหลายมิติส่วนใหญ่ข้อเท็จจริงคือ การกำหนดโดยนัยโดยการรวมกันของค่ามิติ หากมีเซลล์ที่ไม่ว่างเปล่าสำหรับบางเซลล์ การรวมกันมีอยู่จริง; มิฉะนั้นจะไม่มีข้อเท็จจริงสำหรับชุดค่าผสมนั้น

multidimensional models ส่วนใหญ่ต้องการให้แต่ละข้อเท็จจริงถูกจับคู่กับค่ามิติหนึ่งอย่างแม่นยำที่ระดับต่ำสุดในแต่ละมิติ ความจริงนั้นมีความละเอียดบางอย่างซึ่ง ถูกกำหนดโดยระดับที่จะบอกค่ามิติ ตัวอย่างเช่นความจริงที่ละเอียดในคิวบ์ตัวอย่างของเราคือ“ ทุกปีโดยเมือง” กลุ่มที่ประกอบด้วยระดับที่สูงขึ้นหรือ ระดับมิติระดับต่ำกว่าความละเอียดที่กำหนดเช่น “ปีตามประเภทหนังสือตามเมือง” หรือ “วันโดย Book by City” ในตัวอย่างของเรากล่าวกันว่าหยาบกว่าหรือละเอียดกว่าที่กำหนดไว้ตามลำดับ

เป็นเรื่องธรรมดาที่จะแยกแยะระหว่างข้อเท็จจริงสองประเภท: ข้อเท็จจริงของเหตุการณ์และข้อเท็จจริงของภาพรวม ข้อเท็จจริงของเหตุการณ์เป็นตัวอย่างของเหตุการณ์ในโลกแห่งความเป็นจริง ซึ่งหมายความว่ามีความจริงเพียง ประการเดียวสำหรับเหตุการณ์ที่ไม่ซ้ำกันในกระบวนการโลกแห่งความเป็นจริงโดยรวมที่ถูกจับด้วยความละเอียดที่ดีจึงมีข้อเท็จจริงอย่างหนึ่งสำหรับการขายหนังสือแต่ละเล่มโดยเฉพาะเมื่อมีความเป็นจริงอย่างหนึ่งในแต่ละวันเมื่อมีการขายหนังสือหนึ่งครั้งขึ้นไป ตัวอย่างของข้อเท็จจริงของเหตุการณ์รวมถึงการขายการคลิกบนหน้าเว็บและการไหลของสินค้าเข้าและออก (จริง) คลังสินค้า

ข้อเท็จจริงมักจะมีคุณสมบัติตัวเลขที่เกี่ยวข้องซึ่งเรียกว่าการวัด เหล่านี้เป็น คุณสมบัติที่ผู้ใช้ต้องการวิเคราะห์เช่นจำนวนรายการและจำนวนเงินดอลลาร์

หากข้อเท็จจริงของเหตุการณ์ไม่มีข้อมูล ใด ๆ คือข้อมูลที่ไม่เป็นข้อเท็จจริง อย่างไรก็ตามนี่คือ คำที่โชคร้ายข้อเท็จจริงที่ไม่สามารถวัดได้เหล่านี้ มีการใช้ข้อเท็จจริงเพื่อบันทึกเหตุการณ์บางอย่างเกิดขึ้น แต่ที่นี่เหตุการณ์ไม่ได้มีตัวเลข คุณสมบัติที่อธิบายเพิ่มเติมอีกตัวอย่างเช่นอาจเกิดขึ้นได้หากบริษัทต้องการบันทึกสิ่งนั้นจะติดต่อลูกค้าบางอย่างในเวลาที่กำหนดเป็นส่วนหนึ่งของแคมเปญการตลาดที่กำหนด

เป็นสิ่งสำคัญที่จะต้องเข้าใจเมื่อเหตุการณ์และข้อเท็จจริงภาพรวมเกิดขึ้น ข้อเท็จจริงเหตุการณ์ ทำขึ้นเพื่อเป็นตัวแทนของเหตุการณ์เช่นยอดขายที่เกิดขึ้นในโลกแห่งความเป็นจริง โดยหลักการแล้วสิ่งเหล่านี้ เหตุการณ์สามารถเกิดขึ้นได้ตลอดเวลา ในทางกลับกันข้อเท็จจริงทั่วไปนั้นถูกสร้างขึ้นมา เพื่อเป็นตัวแทนของรัฐในเวลาที่กำหนดไว้ล่วงหน้าเช่นสินค้าคงคลังในวันแรกของแต่ละเดือน

บ่อยครั้งที่ข้อเท็จจริงต่าง ๆ ข้างต้นอยู่ร่วมกันในคลังข้อมูลที่ได้รับ อันที่จริงข้อมูลพื้นฐานเดียวกันเช่นการเปลี่ยนแปลงของสินค้าใน คลังสินค้ามักจะหาทางลงในสามลูกบาศก์ประเภทต่าง ๆ : การไหลของคลังสินค้าคลังสินค้า สินค้าคงคลังและการไหลของคลังสินค้าในปีต่อวัน

MEASURES

การวัดมีสององค์ประกอบ: การวัดที่เป็นตัวเลขของข้อเท็จจริงเช่นราคาขายหรือกำไรและ สูตร (ส่วนใหญ่มักจะเป็นฟังก์ชันการรวมอย่างง่ายเช่น SUM) ที่สามารถใช้เพื่อรวมหลาย ๆ วัดค่าเป็นหนึ่งค่า ในฐานข้อมูลหลายมิติมาตรการโดยทั่วไปจะแสดงคุณสมบัติ จากข้อเท็จจริงที่เลือกซึ่งผู้ใช้ต้องการศึกษาเช่นโดยมีวัตถุประสงค์เพื่อเพิ่มประสิทธิภาพ

ผู้ออกแบบ multidimensional database ต้องกำหนด สิ่งชี้วัดเชิงตัวเลข สำหรับข้อเท็จจริงของภาพรวมที่แสดงถึงยอดขายในวันที่กำหนด จำนวนสินค้าที่ขายระหว่างวันนั้น แต่ผู้ออกแบบยังสามารถกำหนดมาตรการที่จะสะสม (เช่นเพิ่มขึ้นอย่างเดียว) หมายความว่าการวัดแสดงยอดขายรวมในวันนั้นและทุกวัน

มาตรวัดใช้ค่าที่แตกต่างกันสำหรับการรวมกันของค่ามิติ แท้จริงแล้ว การวัดได้ในแง่คณิตศาสตร์ถือเป็นฟังก์ชันบางส่วนจาก Cartesian product ของ Cartesian product of the dimensionsมิติในคิวบ์กับชุดของตัวเลขเช่น N หรือ R คุณสมบัติและสูตรจะถูกเลือก ค่าของการวัดมีความหมายสำหรับการรวมกันทั้งหมดของระดับการรวมตัว (รวมถึงระดับ“ top”) สูตรถูกกำหนดในข้อมูลเมตาและไม่ได้จำลองแบบเหมือนในสเปรดชีต ตัวอย่าง แม้ว่าตัวแบบข้อมูลหลายมิติส่วนใหญ่จะมีตัววัด แต่ก็ไม่สามารถทำได้ ในสิ่งเหล่านี้ค่ามิติยังใช้สำหรับการคำนวณด้วยดังนั้นจึงจำเป็นต้องใช้

RELATIONAL REPRESENTATIONS

STAR SCHEMAS

STAR SCHEMAS มีตารางหนึ่งมิติสำหรับแต่ละมิติ ตารางนี้มีคอลัมน์ที่สำคัญและหนึ่ง คอลัมน์สำหรับแต่ละระดับของมิติ (ยกเว้น) คอลัมน์สำหรับระดับเก็บคำอธิบายที่เป็นข้อความ ของค่ามิติในระดับนั้น สุดท้ายตารางมิติประกอบด้วยหนึ่งคอลัมน์สำหรับแต่ละระดับ

นอกจากนี้ STAR SCHEMAS ยังมีตารางข้อมูลที่เก็บแถวสำหรับข้อเท็จจริงหลายมิติแต่ละอัน ตารางข้อเท็จจริงมีหนึ่งคอลัมน์สำหรับแต่ละการวัด ในแถวคอลัมน์นี้มีค่าการวัดสำหรับ แถวหมายถึงตารางข้อเท็จจริงยังมีหนึ่งคอลัมน์สำหรับแต่ละมิติ ในแถวเหล่านี้ คอลัมน์ประกอบด้วยค่าคีย์ต่างประเทศที่อ้างอิงค่าคีย์หลักของตารางมิติ ตัวอย่างสำหรับคิวบ์ Sales แสดงในรูปที่ 2.3 (คีย์หลักขีดเส้นใต้) ชื่อ“ STAR SCHEMAS ” หมายถึงการสังเกตว่าหากตารางถูกวาดเช่นนั้น ตารางข้อเท็จจริงอยู่ที่กึ่งกลางและตารางมิติล้อมรอบมัน(ค่อนข้าง) เหมือนดาว เพื่อช่วยให้เห็นภาพการเปรียบเทียบดวงดาวนี้จะมีการลากเส้นระหว่างตารางความจริงและตารางแต่ละมิติในรูป2.3

คอลัมน์สำคัญเช่น “CityID” และหนึ่งคอลัมน์สำหรับแต่ละระดับเช่น “City” และ “State” สำหรับ ตารางแสดงมิติสถานที่ตั้ง ไม่จำเป็นต้องมีคอลัมน์สำหรับระดับเนื่องจากคอลัมน์นั้น จะถือค่าเดิมเสมอ คอลัมน์คีย์ในตารางมิติโดยทั่วไปจะเป็น “dumb” คีย์จำนวนเต็มโดยไม่มีความหมายใด ๆ เช่นคีย์ตัวแทนซึ่งมีข้อดีกว่าตัวเลือกของการใช้คีย์แบกข้อมูลจากระบบต้นทางรวมถึงการใช้พื้นที่เก็บข้อมูลที่ดีขึ้นการป้องกัน ปัญหาที่เกี่ยวข้องกับการใช้งานซ้ำที่สำคัญรองรับการปรับปรุงมิติ และมีประสิทธิภาพมากขึ้นการประมวลผลแบบสอบถาม

จะเห็นได้ว่ามีความซ้ำซ้อนในข้อมูลระดับสูง ตัวอย่างเช่น“ March 2009” จะ นำเสนอในแต่ละวันในช่วงเดือนนั้นหมายความว่าคอลัมน์เดือนจะใช้ค่า“ มีนาคม 2009” ใน 31 แถว (สมมติว่าขายหนังสืออย่างน้อยหนึ่งเล่มในแต่ละวันของเดือนนั้น ทุกวันต้องเป็นตัวแทน) อย่างไรก็ตามโดยทั่วไปมิติจะใช้เวลาเพียง 1–5% ของ ที่เก็บข้อมูลทั้งหมดที่จำเป็นสำหรับSTAR SCHEMAS ความซ้ำซ้อนไม่ใช่ปัญหาเรื่องพื้นที่ มันไม่ทำให้เกิด ปัญหาการปรับปรุงประสิทธิภาพ นอกจากนี้การอัปเดตของมิติจะได้รับการจัดการจากส่วนกลางดังนั้น ยังเป็นไปได้เพื่อให้แน่ใจว่าสอดคล้อง ดังนั้นจึงเป็นความคิดที่ดีที่จะใช้มิติที่ซ้ำซ้อนดังกล่าว ตารางเนื่องจากสิ่งเหล่านี้สนับสนุนการกำหนดแบบสอบถาม (แล ประสิทธิภาพที่ดีกว่า) ได้ง่ายกว่าการเรียกข้อมูล

SNOWFLAKE SCHEMAS

SNOWFLAKE SCHEMAS มีตารางความเป็นจริงเช่นเดียวกับ STAR SCHEMAS อย่างไรก็ตามSNOWFLAKE SCHEMAS จะมี ตารางหลายมิติสำหรับแต่ละมิติคือหนึ่งตารางสำหรับแต่ละระดับ ซึ่งหมายความว่า หลีกเลี่ยงความซ้ำซ้อนนั้นซึ่งอาจเป็นประโยชน์ในบางสถานการณ์และทำให้ ลำดับชั้นในมิติที่ชัดเจน ตารางมิติประกอบด้วยคีย์คอลัมน์ที่มีข้อความ คำอธิบายของค่าระดับและคอลัมน์ที่เป็นไปได้สำหรับคุณสมบัติระดับตารางสำหรับระดับที่ต่ำกว่าด้วย มี foreign key ไปยังระดับที่บรรจุ หากตารางถูกวาดด้วยตารางข้อเท็จจริงที่อยู่ตรงกลาง และตารางมิติที่เกี่ยวข้องซึ่งอยู่ติดกันจะมีรูปร่างคล้ายกับเกล็ดหิมะ ซึ่งเป็นที่มาของชื่อ SNOWFLAKE SCHEMAS รูปที่ 2.4 แสดง SNOWFLAKE SCHEMAS ที่เก็บข้อมูลเดียวกับ STAR SCHEMASในรูปที่ 2.3

แอปพลิเคชั่นการปฏิบัติงานที่ใช้งานจริง ตัวอย่างเช่นผู้ค้าปลีกหนังสืออาจมีความแตกต่างกับ แอปพลิเคชั่นสำหรับการสั่งซื้อหนังสือจากสำนักพิมพ์การจัดจำหน่ายไปยังร้านค้าการตลาดแคมเปญและการบัญชี การวิเคราะห์กำไรจากการขายในช่วงแคมเปญนั้นจำเป็นต้องมี นักวิเคราะห์เพื่อรับข้อมูลจากระบบต่าง ๆ ที่จัดระเบียบข้อมูลของพวกเขาในวิธีที่แตกต่างกันและเป็น มีแนวโน้มที่จะให้ข้อมูลที่ไม่สอดคล้องกัน

กระบวนการ Extract — Transform — Load (ETL) เพื่อทำการแยกข้อมูลจากระบบแหล่งต่าง ๆ ล้างข้อมูลและแปลงข้อมูลเป็นรูปแบบรวมก่อนที่จะโหลดข้อมูลลงในคลังข้อมูล เป็นส่วนสำคัญของโครงการคลังข้อมูลใด ๆสร้างกระบวนการ ETL ที่ใช้งานได้คลังข้อมูลยังแปรผันตามเวลาซึ่งหมายความว่าคลังข้อมูลแสดงวิวัฒนาการ เมื่อเวลาผ่านไปและไม่เพียง แต่ข้อมูลล่าสุดเนื่องจากระบบปฏิบัติการมักจะทำ กล่าวอีกนัยหนึ่งก็คือ เป็นไปได้ที่จะเห็นว่าโลกที่เป็นแบบอย่างนั้นมีลักษณะอย่างไร ณ เวลาใดเวลาหนึ่ง สำหรับผู้ค้าปลีกหนังสือ จากนั้นเป็นไปได้ที่จะเห็นว่ามีการจำหน่าย“ Winnie the Pooh” ทั้งหมดกี่ชุด ตอนนี้และจำนวนที่ขายได้ในปีเดียวกัน คลังข้อมูลยังรวบรวม การเปลี่ยนแปลงในโลกจำลองเช่นเมื่อร้านค้าหนึ่งในร้านหนังสือถูกขยาย มันเป็นแล้ว เป็นไปได้สำหรับนักวิเคราะห์ที่จะเห็นขนาดของร้านค้า ณ จุดต่าง ๆ ในเวลาและตรวจสอบวิธีการการขยายตัวได้ส่งผลกระทบต่อยอดขาย คลังข้อมูลใด ๆ มีมิติเวลา

คลังข้อมูล นั้นไม่มีการลบและการอัปเดตจะใช้กับข้อมูลที่มีอยู่แล้วในคลังข้อมูล การเปลี่ยนแปลงเพียงอย่างเดียวเกิดจากการโหลด จากข้อมูลใหม่ ในทางตรงกันข้ามระบบปฏิบัติการได้รับการออกแบบมาเพื่อรองรับการอัปเดต (พร้อมกัน) และ ดังนั้นจึงต้องใช้การจัดการธุรกรรมขั้นสูงและการออกแบบที่เป็นมาตรฐานเพื่อเปิดใช้งานการปรับปรุงที่มีประสิทธิภาพ และหลีกเลี่ยงความผิดปกติในการอัพเดท ในคลังข้อมูลไม่จำเป็นต้องทำการทำให้เป็นมาตรฐาน นอกจากนี้ระบบปฏิบัติการโดยทั่วไปจะรวมเฉพาะข้อมูลที่เป็นธรรมและทำล่าสุด ไม่สนับสนุนการวิเคราะห์ข้อมูลประวัติ

data mart โดยทั่วไปถือว่าเป็นชุดย่อยของคลังข้อมูลในขณะที่คลังข้อมูล ใช้ร่วมกันทั่วทั้งองค์กรและสามารถเก็บข้อมูลเกี่ยวที่แตกต่างกันเป็น data mart เก็บข้อมูลเกี่ยวกับหัวเรื่องเดียวเช่นยอดขาย บ่อยครั้งที่ Data mart นั้นมีความเชี่ยวชาญต่อความต้องการของแผนก(ย่อย) ดังนั้นคลังข้อมูลขององค์กรสามารถมีคิวบ์และมิติสำหรับทั้งคู่การขายของร้านค้าการขายทางอินเทอร์เน็ตการเก็บรักษาสินค้าและการจัดหาพนักงานข้อมูลเกี่ยวกับการขายซึ่งเป็นกระบวนการเดียวที่ฝ่ายขายสนใจเช่นเดียวกันดาต้ามาร์ทสามารถสร้างขึ้นเพื่อเก็บข้อมูลเกี่ยวกับการจัดพนักงานซึ่งเป็นสิ่งที่ทรัพยากรมนุษย์สนใจ แผนก อย่างไรก็ตามโปรดทราบว่าแผนกไม่ควรมีมาร์ทข้อมูลส่วนตัวของตัวเอง ถ้าแผนกสองแผนกขึ้นไปจำเป็นต้องใช้ข้อมูลการขายทั้งคู่ควรใช้มาร์ทข้อมูลการขายเดียวกัน คลังข้อมูลจะเต็มไปด้วยข้อมูลจากระบบแหล่งปฏิบัติการที่แตกต่างกันในขณะที่ data mart ถูกโหลดด้วยข้อมูล (ล้างแล้วและรวมเข้าด้วยกัน) จากคลังข้อมูลหรือแม้แต่ให้มุมมองแบบลอจิคัลของข้อมูลในคลังข้อมูล data marts นั้นได้มาจาก data warehouse ในลักษณะจากบนลงล่าง ด้วยวิธีการจากล่างขึ้นบน มันขาดการบูรณาการที่สำคัญ

MULTIDIMENSIONAL MODELING PROCESSES

ข้อแตกต่างที่สำคัญของการสร้างแบบจำลองหลายมิติจากการสร้างแบบจำลองข้อมูล“ ธรรมดา” คือตัวสร้างแบบหลายมิติไม่ควรพยายามรวมข้อมูลที่มีอยู่ทั้งหมดหรือความสัมพันธ์ที่มีอยู่ทั้งหมด ในข้อมูลในรูปแบบ ควรมีเฉพาะประเด็นที่จำเป็นต่อ “ไดรเวอร์” ของธุรกิจเท่านั้นที่รวมอยู่

ความแตกต่างอีกประการหนึ่งคือความซ้ำซ้อนเป็นที่ยอมรับในบางสถานที่ที่ได้รับการคัดเลือกเป็นอย่างดีส่วนข้อมูล) ถ้ามันทำให้แบบจำลองใช้งานง่ายขึ้นสำหรับผู้ใช้ ตัวอย่างเช่นเราได้เห็นว่าชื่อเดือนถูกทำซ้ำในมิติเวลาสำหรับแต่ละวันของเดือน ข้อมูลเกี่ยวกับ ลูกค้าอาจมีอยู่ทั้งในมิติลูกค้าและบุคคลที่มุ่งเน้นกลุ่มมิติข้อมูลประชากร

  1. Choose the business process(es) to model. เกี่ยวข้องกับการสังเกตว่ากระบวนการทางธุรกิจไม่ได้มีความสำคัญเท่ากันสำหรับธุรกิจ ตัวอย่างเช่นสำหรับผู้ค้าปลีกหนังสือมีกระบวนการทางธุรกิจสำหรับการขายหนังสือให้กับลูกค้าและการซื้อหนังสือจากผู้จัดพิมพ์ แต่กระบวนการขายอาจเป็นหนังสือที่มีขนาดใหญ่ที่สุด ศักยภาพในการเพิ่มผลกำไรด้วยเหตุนี้กระบวนการทางธุรกิจจึงควรได้รับการจัดลำดับความสำคัญ
  2. Choose the granularity of the business process. แสดงว่าเป็นสิ่งสำคัญที่จะต้องใช้ความละเอียดของข้อมูลที่ตรงกับการวิเคราะห์มากที่สุด จำเป็น ตัวอย่างเช่น “ยอดขายหนังสือแต่ละเล่ม” อาจถูกจับหรือรวมอยู่ด้วยกัน ยอดขายต่อเล่มต่อร้านค้าต่อวัน” อาจมีรายละเอียดเพียงพอในขณะที่เปิดใช้งานประสิทธิภาพและการจัดเก็บ กำไร เมล็ดจึงตัดสินใจในความเป็นจริงหมายถึง
  3. Design the dimensions. จากนั้นไปปรับแต่งสคีมาของแต่ละส่วนของตารางให้เป็นมิติที่สมบูรณ์ ด้วยระดับและคุณลักษณะสำหรับตัวอย่างด้านบนจะมีการระบุมิติ Store, a Book และ aTime
  4. Choose the measures.มาตรการเชิงตัวเลขเพื่อวัด สำหรับการรวมกันของค่ามิติสำหรับ ตัวอย่างการขายดอลลาร์การขายต่อหน่วยราคาดอลลาร์และผลกำไรถูกเลือกสุดท้าย

1. ANALYSIS AND QUERYING

วัตถุประสงค์ของฐานข้อมูลหลายมิติคือเพื่อรองรับการวิเคราะห์ข้อมูลของข้อมูลจำนวนมาก ที่นี่เราอธิบายการดำเนินงานที่สำคัญที่สุดที่นักวิเคราะห์สามารถใช้ได้

  1. พิจารณาลูกบาศก์ที่แสดงในรูปที่ 2.5 คิวบ์นี้มีสามมิติหนังสือสถานที่และ เวลา. จำได้ว่าคิวบ์มีเซลล์สำหรับการรวมกันของค่าแต่ละมิติ รูปที่ 2.5 แสดงให้เห็นถึง เซลล์ที่จุดตัดของค่ามิติจากระดับต่ำสุดในลำดับชั้น สังเกตได้ว่า เพื่อเหตุผลในทางปฏิบัติเราจะแสดงค่าน้อยมากในแต่ละมิติ คิวบ์โลกแห่งความจริงจะ

มีค่ามิติอื่น ๆ อีกมากมาย จะอย่างไรก็ตามหรือไม่ค่อยพิจารณาทั้งหมด ข้อมูลที่ระดับต่ำสุดในลำดับชั้น นักวิเคราะห์อาจต้องการมุมมองที่มีรายละเอียดน้อยกว่าเช่น แสดงยอดขายต่อประเภทแทนที่จะเป็นยอดขายต่อหนังสือแต่ละเล่ม ในการทำเช่นนี้นักวิเคราะห์ สามารถม้วนขึ้นไปที่ระดับประเภทในมิติหนังสือ โดยการทำเช่นนั้นนักวิเคราะห์จะพิจารณาเซลล์ที่จุดตัดของค่ามิติจากแต่ละตำแหน่งระดับต่ำสุดและเวลาและค่ามิติจากระดับประเภทหนังสือซึ่งแสดงในรูปที่ 2.6 เซลล์ในรูปนี้มีอยู่
จำนวนการขายต่อประเภท แต่ละหมายเลขดังกล่าวคือผลรวมของยอดขายต่อหนังสือในประเภทการวัดประกอบด้วยคุณสมบัติตัวเลขและสูตร — ในกรณีนี้ SUM — ที่มีความสามารถ การรวมหรือการรวมหลายค่าการวัดเป็นหนึ่ง จำนวนตำราอาหารที่จำหน่าย อาร์ลิงตันมอบให้โดย 2 + 1 = 3 เป็น“ สำเนาการทำอาหารอิตาเลียน” สองชุดและ“ อาหารเขตร้อน” หนึ่งชุด ถูกขายที่นั่น ในการเลื่อนขึ้นหมายถึงการเปลี่ยนจากบางระดับในลำดับชั้นเป็นระดับที่สูงขึ้นใน ลำดับชั้นเดียวกันในคิวบ์พิจารณา กล่าวอีกนัยหนึ่งรายละเอียดน้อยลงจะเห็นหลังจากม้วนขึ้น

2. SLICING AND DICING

คิดว่าลูกบาศก์เป็นหัวหอม เมื่อมีการเตรียมหัวหอมสำหรับทำอาหารอาจจะหั่นเป็นชิ้นและ หั่นเป็นชิ้นเล็ก ๆ ในบริบทของคิวบ์กระบวนการที่เรียกว่าการแบ่งส่วนและการแบ่งสี่เหลี่ยมมี ผลที่คล้ายกัน เมื่อวิเคราะห์คิวบ์นักวิเคราะห์อาจต้องการพิจารณาเซ็ตย่อยของคิวบ์เท่านั้น ในการทำเช่นนี้นักวิเคราะห์สามารถเลือกค่าเฉพาะสำหรับส่วนข้อมูล (เช่นปี 2009 จากเวลา มิติ). วิธีนี้ได้รับชิ้นของก้อนดังแสดงในรูปที่ 2.10 เป็นไปได้ที่จะ ฝานชิ้นที่เกิดขึ้นต่อไปเพื่อให้นักวิเคราะห์พิจารณาลูกเต๋า ลูกเต๋ายังสามารถได้รับจาก ให้เงื่อนไขที่ซับซ้อนมากขึ้นในการเลือกชุดย่อยของข้อมูล (เช่นพิจารณาปี 2008 และ 2009 และหนังสือที่เขียนโดย Jane Austen) เราเรียกขั้นตอนการสร้างการแบ่งย่อยและการแบ่งย่อยเหล่านี้

DRILL-ACROSS

จนถึงตอนนี้เราพิจารณาการทำงานของคิวบ์เดียวเท่านั้น ทีนี้สมมติว่าร้านหนังสือของเรา เปิดร้านอินเทอร์เน็ตเพื่อเสริมร้านค้าทางกายภาพผู้จำหน่ายหนังสือไม่ต้องการใช้ คิวบ์การขายที่มีอยู่เพื่อจับภาพการขายจากร้านค้าทางกายภาพและร้านอินเทอร์เน็ตเป็นที่ตั้งส่วนข้อมูลอธิบายที่ตั้งของร้านค้าทางกายภาพในสหรัฐอเมริกาอย่างไรก็ตามร้านอินเทอร์เน็ตอาจจัดส่งไปยังลูกค้าที่สามารถระบุตัวได้ในส่วนต่างๆของโลก ผู้ค้าปลีกหนังสือขยายความฐานข้อมูลหลายมิติพร้อมคิวบ์การขายทางอินเทอร์เน็ต การขายทางอินเทอร์เน็ตและการแบ่งปันคิวบ์การขายแบบเก่า มิติหนังสือและเวลาที่สอดคล้อง นอกจากนี้การขายทางอินเทอร์เน็ตใช้มิติลูกค้า

เมื่อนักวิเคราะห์พิจารณาการขายหนังสือตอนนี้มีสองคิวบ์ให้ใช้ อย่างไรก็ตาม นักวิเคราะห์ต้องการดูตัวเลขยอดขายของหนังสือสองเล่มที่ขายดีที่สุดโดยรวมทั้งสองฉบับ ร้านค้าและการขายทางอินเทอร์เน็ต ในการค้นหาหนังสือที่ขายดีที่สุดมันไม่เพียงพอที่จะใช้คิวบ์ Sales เพื่อค้นหา หนังสือที่ขายดีที่สุดในร้านค้าและใช้คิวบ์การขายทางอินเทอร์เน็ตเพื่อค้นหาหนังสือที่ขาย สิ่งที่ดีที่สุดบนอินเทอร์เน็ต หากต้องการดูสิ่งนี้สมมติว่าในร้านขายหนังสือ“ ขายหนังสือ A” ขาย 10,000 ครั้ง“ หนังสือ B” 9,000 ครั้งและ“ หนังสือ C” 8,000 ครั้ง จากร้านอินเทอร์เน็ตมีการขาย“ Book D” 5,000 เท่า,“ Book E” 5,000 ครั้ง, และ“ Book C” 4,000 ครั้ง หากนักวิเคราะห์เพิ่งพบพูดสอง หนังสือขายดีที่สุดจากคิวบ์นักวิเคราะห์จะสรุปว่า “หนังสือ A” ขายดีที่สุด

จากรูปจะเห็นว่า C ขายดีสุดดังนั้นเราจึงต้องมาร่วมกัน

ข้อมูลในสองคิวบ์สามารถรวมกันได้โดยการดำเนินการเจาะลึกที่รวมข้อมูลเข้า สองคิวบ์โดยใช้มิติข้อมูลที่แชร์อย่างน้อยหนึ่งมิติ ในแง่เชิงสัมพันธ์การเจาะข้ามสอดคล้องกัน เพื่อเข้าร่วมเต็มรูปแบบภายนอก รูปที่ 2.11 แสดงการเจาะทะลุของคิวบ์ฝ่ายขายและฝ่ายขายทางอินเทอร์เน็ต (เพื่อความสะดวกในการอ่านค่าการวัดจะไม่แสดง)คิวบ์ที่เกิดขึ้นมีมิติเป็นมิติข้อมูลที่แชร์ระหว่างต้นฉบับลูกบาศก์. มิติข้อมูลที่ไม่แชร์สามารถคิดได้ว่าถูกรีดขึ้นไปถึงระดับสูงสุดในคิวบ์ดั้งเดิม ก่อนที่จะรวมก้อน คิวบ์ที่ได้รับสืบทอดการวัดทั้งหมดของทั้งต้นฉบับ ลูกบาศก์. มาตรการเหล่านี้จะใช้กับข้อมูลในคิวบ์ดั้งเดิม ในตัวอย่างของเรานักวิเคราะห์ ควรพิจารณามาตรการที่ได้รับคือผลรวมของมาตรการขายสองก้อนเพื่อค้นหา หนังสือขายดี เมื่อทำการเจาะลึกมิติข้อมูลที่แชร์จะต้องสอดคล้อง แต่ไม่จำเป็นต้องเป็น เหมือนกัน (โปรดจำไว้ว่าสองมิติมีความสอดคล้องกันหากพวกเขาเหมือนกันหรือหากเป็นส่วนย่อยของอื่น ๆ ) ดังนั้นคิวบ์อาจมีความละเอียดแตกต่างกัน ขนาดในคิวบ์ที่เกิดขึ้น

จะมีระดับที่ก้อนต้นฉบับใช้ร่วมกัน ตัวอย่างเช่นคิวบ์งบประมาณสามารถแยกตามประเภท จนแต่ละปีในขณะที่คิวบ์การขายมีความละเอียดปลีกย่อยสำหรับมิติหนังสือและเวลา ข้อมูลใน จากนั้นสามารถขายคิวบ์การขายจนถึงระดับปีและประเภทก่อนที่จะรวมคิวบ์ ในการเจาะข้าม สามารถแสดงมาตรการที่แสดงยอดขายตามแผนและยอดขายตามจริง เปรียบเทียบอย่างมีความหมาย

อ่านบทอื่นๆได้ที่

สรุปแหนังสือ Multidimensional Databases and Data Warehousing บทที่ 1

แนวคิดพื้นฐาน Multidimensional Databases and Data Warehousing บทที่ 2

Multidimensional Databases and Data Warehousing : บทที่ 3 Advanced Concepts

--

--

NUTHDANAI WANGPRATHAM
NUTHDANAI WANGPRATHAM

Written by NUTHDANAI WANGPRATHAM

I am a learner and have a multipotential life. You can contact me at nutdnuy@gmail.com

No responses yet