แปลงข้อมูลแบบตารางไปยังลูกบาศก์

คุณสามารถสร้างลูกบาศก์จากข้อมูลแบบตารางโดยการดึงข้อมูลตารางแฟคท์จากฐานข้อมูลเชิงสัมพันธ์ไปยังไฟล์ Excel แล้วใช้งานลูกบาศก์

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

  • ความสัมพันธ์ระหว่างคอลัมน์

  • ความสัมพันธ์ระหว่างประเภทคอลัมน์ (เช่น วันที่ ตัวเลข และข้อความ)

  • การวิเคราะห์ข้อความส่วนหัวสำหรับคำศัพท์ที่มีคำนำหน้าทั่วไปและที่เกี่ยวข้องกับข่าวกรองธุรกิจ (เช่น ต้นทุน ราคา แอคเคาท์)

  • โครงสร้างรายงาน (เช่น เซลล์ที่รวมและเซลล์ที่ว่างเปล่า)

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

  • ลำดับชั้นการวัด (ซึ่งสามารถสร้างใน 'แปลงรูปแบบข้อมูล' ในเครื่องมือออกแบบลูกบาศก์ด้วยเช่นกัน)

ไฟล์ Excel ข้อมูลแบบตารางตัวอย่างมีไว้เพื่อแสดงแนวคิดของส่วนหัวในระบบและที่บังคับการกำหนดชื่อ

เมื่อทำงานกับข้อมูลแบบตาราง คุณควรวิเคราะห์ข้อมูลก่อนที่คุณจะสร้างลูกบาศก์จากข้อมูล หลังจากที่สร้างลูกบาศก์ คุณควรกำหนดว่าเอาต์ไลน์ของลูกบาศก์เป็นวิธีที่คุณต้องการหรือไม่

คุณสามารถสร้างลูกบาศก์จากข้อมูลแบบตารางในอินสแตนซ์ Essbase หรือในเครื่องมือออกแบบลูกบาศก์ โปรดดู สร้างและอัปเดตลูกบาศก์จากข้อมูลแบบตาราง

ใช้ส่วนหัวที่สร้างโดยระบบเพื่อแปลงข้อมูลแบบตารางเป็นลูกบาศก์

ส่วนหัวในระบบจะใช้รูปแบบ table.column ซึ่งแสดงในไฟล์ Sample_Table.xlsx ในไฟล์ตัวอย่างนี้ ส่วนหัวคอลัมน์มีชื่อ เช่น หน่วย, ส่วนลด, Time.Month, Regions.Region และ Product.Brand

กระบวนการแปลงรูปแบบจะสร้างลำดับชั้นดังนี้

Units
Discounts
Fixed Costs
Variable Costs
Revenue
Time
   Month
   Quarter
Years
Regions
   Region
   Area
   Country
Channel
Product
   Brand
...

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

การใช้ส่วนหัวที่บังคับการกำหนดชื่อ (คำแนะนำ) ทำให้คุณสามารถระบุวิธีการที่ข้อมูลแบบตารางควรได้รับการจัดการระหว่างกระบวนการแปลงรูปแบบ

ตัวอย่างเช่น คุณสามารถบังคับให้ถือว่าคอลัมน์เป็นการวัดหรือไดเมนชันแอททริบิว ส่วนหัวที่บังคับการกำหนดชื่อส่วนใหญ่ต้องมีคำหลักในวงเล็บ [ ] ส่วนหัวที่บังคับการกำหนดชื่อแสดงในเทมเพลท Unstr_Hints.xlsx และเทมเพลท Sample_Table.xlsx (มีในแกลเลอรี่)

รูปแบบส่วนหัวที่บังคับการกำหนดชื่อที่รองรับ ได้แก่

ตาราง 6-1 รูปแบบส่วนหัวที่บังคับการกำหนดชื่อ

การกำหนดชื่อ รูปแบบส่วนหัว ตัวอย่าง

Dimension generation

ParentGeneration.CurrentGeneration

Category.Product

Alias

ReferenceGeneration.Generation[alias]

Year.ShortYearForm[alias]

Attribute

ReferenceGeneration.AttributeDimName[attr]

Product.Discounted[attr]

Measures

MeasureName[measure]

Price[measure]

Measure generation

Parent.child[measure]

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

Measures.profit[measure]

profit.cost[measure]

cost.price[measure]

Measures formula

MeasureName[=formula_syntax;]

profit[="price"-"cost";]

profit[="D1"-"E1";]

price[=IF ("S1" == #MISSING) "R1"; ELSE "S1"; ENDIF;]

Measures consolidation

MeasureName[+]: เพิ่มในรายการระดับบน

MeasureName[-]: ลบออกจากรายการระดับบน

MeasureName[~] : ไม่มีการรวม (เทียบเท่ากับ [measure])

ค่าดีฟอลต์คือ ไม่มีการรวม

price.shipment[+]

สามารถกำหนดการรวมสำหรับไดเมนชันการวัดเท่านั้น

Formula consolidation

FormulaName[+=<formula>]: เพิ่มในรายการระดับบน

FormulaName[-=<formula>]: ลบออกจากรายการระดับบน

profit[+=price-cost]

cost.external[+=ExternalWork+ExternalParts]

UDA

ReferenceGeneration[uda]

Product[uda]

Skip

ระบบจะไม่อ่านคอลัมน์

ColumnName[skip]

column[skip]

Recur

ค่าเซลล์ของคอลัมน์สุดท้ายใช้สำหรับเซลล์ที่ว่างเปล่า

สามารถรวม Recur กับการกำหนดชื่อที่บังคับอื่นๆ ระบุลิสต์ที่คั่นด้วยคอมมาของการกำหนดชื่อที่บังคับภายในวงเล็บ ColumnName[designationA,recur]

ColumnName[recur]

Product[recur]

Product[uda,recur]

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

นอกจากนี้ คุณยังสามารถรวมการวัดและสูตรโดยการเพิ่มหรือลบออกจากรายการระดับบน

ในการระบุคอลัมน์ที่จะเป็นไดเมนชันการวัด ในส่วนหัวคอลัมน์ ให้คุณป้อนชื่อของไดเมนชันการวัด แล้วต่อท้ายด้วยคำหลัก [measure] ตัวอย่างเช่น คุณสามารถระบุคอลัมน์ "หน่วย" และ "ต้นทุนคงที่" เป็นไดเมนชันการวัดโดยใช้รูปแบบคำสั่งนี้: Units[measure] และ Fixed Costs[measure]

กระบวนการแปลงรูปแบบจะสร้างลำดับชั้นนี้โดยมีหน่วย ส่วนลด ต้นทุนคงที่ ต้นทุนแปรผัน และรายรับเป็นการวัดดังนี้

Time
   Year
      Quarter
         Month
Regions
   Region
      Area
         Country
...
Product
   Brand
...
Units
Discounts
Fixed Costs
Variable Costs
Revenue

คุณสามารถสร้างลำดับชั้นของรุ่นการวัด (ลำดับชั้น parent.child[measure]) ด้วยวิธีการที่คล้ายคลึงกับวิธีที่คุณสร้างรุ่นไดเมนชันปกติ

ตัวอย่างเช่น ในการสร้างลำดับชั้นการวัด ให้คุณป้อน Measures.profit[measure], profit.cost[measure] และ cost.price[measure] ซึ่งจะสร้างลำดับชั้นต่อไปนี้

Measures
      profit
            cost
                price

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

สมมติว่าคุณมีไฟล์ Excel ที่ชื่อ Spend_Formulas.xlsx โดยมีข้อมูลแบบตารางในเวิร์กชีท SpendHistory ซึ่งมีคอลัมน์มากมาย ตัวอย่างเช่น มีไดเมนชันที่ชื่อ "ปี" (คอลัมน์ A) และ "ไตรมาส" (คอลัมน์ B) และไดเมนชันการวัดที่ชื่อ "การใช้จ่าย" (คอลัมน์ J) และ "การใช้จ่ายที่ระบุได้" (คอลัมน์ K) คอลัมน์เหล่านี้มีข้อมูล จากนั้น มีส่วนหัวคอลัมน์ที่ใช้สูตรเพื่อสร้างไดเมนชันการวัด คอลัมน์เหล่านี้ไม่มีข้อมูล ตัวอย่างเช่น ในการสร้างไดเมนชัน "ยอดรวมการใช้จ่าย" ส่วนหัวในคอลัมน์ O จะใช้สูตรของ Essbase นี้: Measure.Total Spend[="Addressable Spend" + "Non-Addressable Spend";] ในการสร้างไดเมนชัน "AddSpendPercent" ส่วนหัวในคอลัมน์ P จะใช้สูตรของ Essbase นี้: Measure.AddSpendPercent[="Addressable Spend"/"Total Spend";]

กระบวนการแปลงรูปแบบจะสร้างลำดับชั้นดังนี้


รูปภาพ "ตัวอย่างการแปลงรูปแบบข้อมูลแบบตาราง"

นอกจากนี้ กระบวนการแปลงรูปแบบยังสามารถระบุไดเมนชันการวัดเมื่อชื่อไดเมนชันซ้ำกัน สมมติว่าคุณมีส่วนหัวคอลัมน์ที่ใช้สูตรนี้ Meas.profit[="a1"-"b1";] ซึ่งสร้างไดเมนชัน "Meas" หากในส่วนหัวคอลัมน์อื่น คุณใช้ชื่อไดเมนชัน "Meas" เป็นรายการระดับบนสุด เช่น Meas.Sales ไดเมนชัน "ยอดขาย" ยังถือว่าเป็นไดเมนชันการวัดอีกด้วย