ยูทิลิตีออปติไมซ์ลูกบาศก์เกณฑ์พื้นฐาน แคชเครื่องคำนวณ ลำดับการแปลค่า และการกระจายข้อมูล จะช่วยให้คุณปรับแต่งลูกบาศก์เพื่อประสิทธิภาพที่ดีขึ้นได้
ยูทิลิตี | ข้อมูลที่แสดง |
---|---|
เกณฑ์พื้นฐาน | เมตริคประสิทธิภาพของลูกบาศก์ |
ลำดับการแปลค่า | ลำดับการแปลค่าของสมาชิกในลูกบาศก์ |
แคชเครื่องคำนวณ | ข้อมูลที่ช่วยให้คุณเลือกค่าแคชเครื่องคำนวณที่ดีที่สุดสำหรับลูกบาศก์ |
การกระจายข้อมูล | ข้อมูลที่ช่วยให้คุณเลือกไดเมนชันที่จะกำหนดให้เป็นแบบหนาแน่นและแบบสปาร์ซ |
เมตริคที่ติดตามโดยยูทิลิตีเกณฑ์พื้นฐานจะแสดงวิธีที่ระบบกำลังดำเนินการอยู่ ใช้เมตริคเหล่านี้เพื่อกำหนดประสิทธิภาพของเกณฑ์พื้นฐาน และเพื่อเป็นเกณฑ์วัดประโยชน์ของการออปติไมซ์ถัดไปที่คุณดำเนินการ
ก่อนการใช้ยูทิลิตีนี้ คุณต้องสร้างเวิร์กบุคของแอปพลิเคชัน รวมถึงเอาต์ไลน์ การตั้งค่าคอนฟิเกอเรชัน สคริปต์การคำนวณ และการสืบค้นต่างๆ ที่คุณต้องการรวมไว้ในลูกบาศก์
เมื่อคุณรันยูทิลิตี ยูทิลิตีดังกล่าวจะสร้างลูกบาศก์ โหลดไฟล์ข้อมูลที่เลือก รันสคริปต์การคำนวณที่เลือก และรันการสืบค้นที่อยู่ในเวิร์กบุคของแอปพลิเคชัน คุณจำเป็นต้องมีตัวอย่างการสืบค้นจากผู้ใช้ของคุณ
ยูทิลิตีเกณฑ์พื้นฐานจะสร้างแผงข้อมูลของแอปพลิเคชันและกระบวนการในการดำเนินการต่างๆ ซึ่งช่วยให้คุณออกแบบและออปติไมซ์ลูกบาศก์ได้ เมื่อคุณใช้การเปลี่ยนแปลงและสร้างลูกบาศก์อีกครั้ง เกณฑ์พื้นฐานจะช่วยให้คุณเปรียบเทียบการวนซ้ำของการแก้ไขลูกบาศก์ได้ บนแท็บ Essbase.Stats.Baseline ของเวิร์กบุคของแอปพลิเคชัน ยูทิลิตีเกณฑ์พื้นฐานจะต่อท้ายตารางใหม่ด้วยข้อมูลล่าสุดสำหรับการวนซ้ำแต่ละครั้ง
เตรียมตัวรันยูทิลิตีออปติไมซ์เกณฑ์พื้นฐานลูกบาศก์ในลูกบาศก์โหมดไฮบริด
ดำเนินการกับงานเหล่านี้ให้เสร็จสมบูรณ์ก่อนรันยูทิลิตีเกณฑ์พื้นฐาน ดังนี้
ในการสร้างเวิร์กบุคของแอปพลิเคชัน คุณสามารถดาวน์โหลดและแก้ไขเวิร์กบุคของแอปพลิเคชันตัวอย่างเพื่อให้ตรงตามความต้องการของคุณได้ โปรดดู สำรวจเทมเพลทแกลเลอรี่
หากชีทการสืบค้นมีเมตะดาต้าจากเซิร์ฟเวอร์ที่แตกต่างกัน เครื่องมือออกแบบลูกบาศก์จะแสดงคำเตือนและหยุดการประมวลผลชั่วคราว จนกว่าคุณจะตอบกลับ
การตั้งค่า | ค่า |
---|---|
ASODYNAMICAGGINBSO | FULL |
HYBRIDBSOINCALCSCRIPT | NONE |
INDEXCACHESIZE | 100M |
DATACACHESIZE | 100M |
ASODEFAULTCACHESIZE | 100 |
MAXFORMULACACHESIZE | 102400 |
INPLACEDATAWRITEMARGINPERCENT | 20 |
CALCCACHEDEFAULT | 200000 |
LONGQUERYTIMETHRESHOLD | -1 |
รันยูทิลิตีออปติไมซ์เกณฑ์พื้นฐานลูกบาศก์ในลูกบาศก์โหมดไฮบริด
ยูทิลิตีเกณฑ์พื้นฐานจะระบุไดเมนชันที่หนาแน่นและแบบสปาร์ซ, ขนาดข้อมูล (ขนาดไฟล์ PAG และ IND), ขนาดบล็อค ตลอดจนขนาดแคชของข้อมูล, ดัชนี และเครื่องคำนวณ นอกจากนี้ ยังแสดงเมตริคสำหรับการโหลดข้อมูล การคำนวณ และการสืบค้น
ในการรันยูทิลิตีเกณฑ์พื้นฐาน ให้ทำดังนี้
เวิร์กชีทการคำนวณจะรันตามลำดับที่ปรากฏในเวิร์กบุคของแอปพลิเคชัน การออปติไมซ์ลูกบาศก์จะไม่ประมวลผลคุณสมบัติ รันการคำนวณ ในชีทการคำนวณ
ระบบรองรับเฉพาะสคริปต์การคำนวณที่สามารถรันจากงานกับคุณสมบัติออปติไมซ์ลูกบาศก์ คุณไม่สามารถรันสคริปต์การคำนวณที่ขึ้นอยู่กับคอนเท็กซ์แบบกริดของ Smart View (ตัวอย่างเช่น การคำนวณที่กำหนดโดยใช้ฟังก์ชัน @GRIDTUPLES หรือสคริปต์ที่ใช้ตัวแปรแทนแบบรันไทม์ที่กำหนดไว้ด้วยแท็ก <svLaunch>)
หากคุณไม่มีชีทข้อมูลในเวิร์กบุคของแอปพลิเคชัน ระบบจะแสดงพรอมต์ให้คุณเลือกไฟล์ข้อมูลและไฟล์กฎจากแคตตาล็อก ขอแนะนำให้จัดเก็บไฟล์ข้อมูลและไฟล์กฎไว้ในไดเรคทอรีที่ใช้ร่วมกันในแคตตาล็อก เพื่อมิให้ไฟล์เหล่านั้นสูญหายไปเมื่อคุณสร้างลูกบาศก์อีกครั้ง
การสร้างลูกบาศก์อาจใช้เวลานาน
Essbase จะสร้างและเพิ่มชีท Essbase.Stats.Baseline ในเวิร์กบุค
การเปลี่ยนไดเมนชันแบบไดนามิคเป็นไดเมนชันที่ใช้ร่วมกันจะช่วยลดจำนวนดังกล่าวได้
ตรวจดูลำดับการแปลค่าของสมาชิกที่คำนวณและเปลี่ยนแปลงเพื่อลดจำนวนการรันสูตร และปรับปรุงประสิทธิภาพการทำงาน หรือลองจัดเก็บสมาชิกที่คำนวณโดยมีสูตรเพื่อลดจำนวนการรันสูตรและปรับปรุงประสิทธิภาพการทำงาน
ยูทิลิตีลำดับการแปลค่ามีคุณสมบัติช่วยให้คุณแสดงผลข้อมูลโฟลว์ลำดับการแปลค่าที่ใช้ในแอปพลิเคชัน ซึ่งสามารถช่วยในการวินิจฉัยประสิทธิภาพของการสืบค้นที่เกี่ยวข้องกับสูตรต่างๆ ได้
ในการรันยูทิลิตีออปติไมซ์ลำดับการแปลค่าลูกบาศก์ ให้ทำดังนี้
ใช้ข้อมูลในชีท Essbase.Stats.SolveOrder เพื่อปรับปรุงลำดับการแปลค่าให้ออปติไมซ์ประสิทธิภาพของการสืบค้น โปรดดู ออปติไมซ์ลูกบาศก์สำหรับโหมดไฮบริด และ ลำดับการแปลค่าในโหมดไฮบริด
ยูทิลิตีแคชเครื่องคำนวณจะแนะนำการตั้งค่าแคชเครื่องคำนวณที่เหมาะสมสำหรับลูกบาศก์
การใช้การตั้งค่าแคชเครื่องคำนวณที่ถูกต้องจะสามารถปรับปรุงประสิทธิภาพได้เป็นอย่างมาก เมื่อคำนวณไดเมนชันแบบสปาร์ซทั้งหมดในสคริปต์การคำนวณ การคำนวณไดเมนชันแบบสปาร์ซทั้งหมดเป็นเทคนิคสำหรับการลดจำนวนบล็อคที่การสืบค้นต้องการ
ค่าดีฟอลต์ของแคชเครื่องคำนวณคือ 200,000 ไบต์ ค่าสูงสุดคือ 20,000,000 ไบต์
ควรตั้งค่าแคชเครื่องคำนวณเพียงให้มีขนาดใหญ่พอที่จะเก็บไดเมนชันแบบสปาร์ซที่คำนวณไว้ในสคริปต์การคำนวณ การตั้งค่าแคชเครื่องคำนวณให้มีขนาดใหญ่เกินความจำเป็นจะส่งผลกระทบในทางลบต่อประสิทธิภาพการทำงาน
โดยปกติ ทางเลือกที่ดีที่สุดคือ ไดเมนชันที่มีขนาดใหญ่ที่สุด
อัลกอริทึมของแคชเครื่องคำนวณจะเลือกไดเมนชันแบบสปาร์ซที่จะวางไว้ในแคช โดยเริ่มต้นด้วยไดเมนชันแบบสปาร์ซแรกสุด
ต้องสร้างลูกบาศก์เพื่อให้ยูทิลิตีแคชเครื่องคำนวณทำงาน
ยูทิลิตีจะแสดงการตั้งค่าแคชที่ถูกต้องถัดจากไดเมนชันแต่ละรายการสูงสุด 20 MB เมื่อเกิน 20 MB ระบบจะแสดง N/A โดยทั่วไป ไม่จำเป็นต้องมีการตั้งค่าเกิน 2 MB
เพิ่มค่านี้ในส่วนการตั้งค่าแอปพลิเคชันของเวิร์กชีท Cube.Settings หรือคุณสามารถตั้งค่าในการตั้งค่าคอนฟิเกอเรชันของแอปพลิเคชันในเว็บอินเตอร์เฟซ Essbase ขอแนะนำให้คุณปัดเศษขึ้น เพื่อเพิ่มพื้นที่ว่างมากขึ้นอีกเล็กน้อย
ยูทิลิตีการกระจายข้อมูลช่วยให้คุณสามารถเข้าใจข้อมูลในแอปพลิเคชันได้ดียิ่งขึ้น ซึ่งทำให้คุณสามารถตัดสินใจเกี่ยวกับวิธีการออปติไมซ์ลูกบาศก์ของคุณได้
ไดเมนชันที่แน่นหนาจะกำหนดบล็อคในแอปพลิเชันพื้นที่เก็บข้อมูลบล็อค ตามหลักการแล้ว บล็อคควรประกอบด้วยไดเมนชันที่มีข้อมูลมากที่สุด และแสดงเลย์เอาต์การสืบค้นที่มีประสิทธิภาพเหนือกว่าสำหรับแอปพลิเคชันนั้นๆ สำหรับแอปพลิเคชันการรายงานทางการเงิน ไดเมนชันเวลาและแอคเคาท์ควรเป็นไดเมนชันที่หนาแน่น เป็นต้น
หนึ่งในปัจจัยที่ส่งผลกระทบต่อประสิทธิภาพของการสืบค้นคือ จำนวนบล็อคที่ร้องขอโดยการสืบค้น หากจำนวนบล็อคที่ขอมีมากเกินไป ก็จะส่งผลต่อประสิทธิภาพของการสืบค้น ในการลดจำนวนบล็อคที่ร้องขอลง ให้คำนวณหาสมาชิกระดับบนของไดเมนชันแบบสปาร์ซอย่างน้อยหนึ่งรายการไว้ล่วงหน้า โดยก่อนอื่น ให้ตั้งค่าแอททริบิวพื้นที่เก็บข้อมูลไดเมนชันของสมาชิกระดับบนเป็นแอททริบิวที่จัดเก็บ (จัดเก็บหรือไม่ใช้ร่วมกัน) แล้วจึงรันสคริปต์การคำนวณที่สรุปรวมไดเมนชันดังกล่าวโดยใช้ CALC DIM หรือ AGG
ในการออปติไมซ์สคริปต์การคำนวณที่ใช้ในการสรุปรวมไดเมนชันแบบสปาร์ซที่จัดเก็บ ให้ใช้คำสั่ง FIXPARALLEL โดยจำเป็นต้องเลือกไดเมนชันงานที่ถูกต้อง ซึ่งไดเมนชันงานจะเป็นตัวที่กำหนดวิธีการแบ่งการคำนวณออกเป็นเธรดต่างๆ และให้รันการคำนวณแบบขนาน ไดเมนชันแบบสปาร์ซอย่างน้อยหนึ่งรายการควรมีข้อมูลที่มากที่สุดเพื่อลดงานที่ว่างเปล่า และโดยหลักการแล้ว ควรมีการกระจายข้อมูลดังกล่าวออกให้เท่าๆ กัน
กระบวนการนี้อาจใช้เวลานานในการรัน โดยเฉพาะอย่างยิ่งกับโมเดลที่มีขนาดใหญ่ขึ้น