ตนเองคืออะไรใน Python: ตัวอย่างในโลกแห่งความเป็นจริง
ตนเองคืออะไรใน Python: ตัวอย่างในโลกแห่งความเป็นจริง
เราจะดำเนินการต่อในซีรี่ส์ของเราเกี่ยวกับการวางแผนและการใช้งานโครงการ LuckyTemplates ใน ครั้งนี้ เราจะพูดถึงการออกแบบชุดข้อมูลการทำโปรไฟล์และโหมดต่างๆ ตรวจสอบส่วนแรกของชุดการวางแผนโครงการของเราที่เกี่ยวข้องกับโหมดการปรับใช้และส่วนที่สองซึ่งพูดถึงการค้นพบและการส่งผ่านข้อมูล
สารบัญ
การออกแบบชุดข้อมูลสำหรับการดำเนินโครงการ LuckyTemplates
มาพูดคุยเกี่ยวกับกระบวนการออกแบบชุดข้อมูลและหารือเกี่ยวกับเมทริกซ์บัสคลังข้อมูลซึ่งเป็นเครื่องมือที่มีมาระยะหนึ่งแล้ว
การออกแบบชุดข้อมูล power BI คล้ายกับการออกแบบคลังข้อมูล ดังนั้นทั้งชุดข้อมูลและคลังข้อมูลจึงมีแนวคิดที่คล้ายคลึงกัน เช่น ตารางแฟคท์และไดเมนชัน สคีมาแบบดาว มิติที่เปลี่ยนแปลงอย่างช้าๆ ความละเอียดของตารางแฟค และคีย์ที่ได้รับแจ้งภายในเครื่องสำหรับสร้างความสัมพันธ์ระหว่างตาราง
4 ขั้นตอนในการออกแบบชุดข้อมูล
กระบวนการออกแบบชุดข้อมูลมีสี่ขั้นตอน: เลือกกระบวนการทางธุรกิจประกาศรายละเอียดของตารางข้อเท็จจริงของคุณระบุมิติข้อมูลแล้วกำหนดข้อเท็จจริง
เลือกกระบวนการทางธุรกิจ
สำหรับขั้นตอนแรก แต่ละกระบวนการทางธุรกิจจะแสดงด้วยตารางข้อเท็จจริงที่มีสคีมาแบบดาวของความสัมพันธ์แบบกลุ่มต่อหนึ่งกับมิติข้อมูล
ในระหว่างกระบวนการค้นหาหรือการรวบรวมความต้องการ เป็นการยากที่จะมุ่งเน้นไปที่กระบวนการทางธุรกิจเดียวโดยแยกจากกัน เนื่องจากผู้ใช้มักวิเคราะห์กระบวนการทางธุรกิจหลายกระบวนการพร้อมกัน
Anti-Pattern ที่ควรหลีกเลี่ยงในการใช้งาน LuckyTemplates
รูปแบบต่อต้านทั่วไป(ซึ่งเป็นการตอบสนองต่อปัญหาที่เกิดขึ้นซ้ำซึ่งโดยทั่วไปไม่ได้ผลและอาจก่อให้เกิดผลตรงกันข้าม) ที่คุณต้องการหลีกเลี่ยงในโครงการ LuckyTemplates คือการพัฒนาชุดข้อมูลสำหรับโครงการหรือทีมเฉพาะ แทนที่จะเป็นสำหรับกระบวนการทางธุรกิจ
ตัวอย่างเช่น การพัฒนาชุดข้อมูลเฉพาะสำหรับทีมการตลาดและชุดข้อมูลอื่นสำหรับองค์กรการขาย วิธีการนี้นำไปสู่การสูญเสียทรัพยากรโดยธรรมชาติ เนื่องจากข้อมูลการขายชุดเดียวกันจะถูกสอบถามและรีเฟรชสองครั้งในชุดข้อมูลทั้งสองชุด สิ่งเหล่านี้จะใช้ทรัพยากรพื้นที่เก็บข้อมูลในบริการของ LuckyTemplates
นี่คือเหตุผลบางประการที่คุณต้องการผ่านกระบวนการที่ดีสำหรับการออกแบบชุดข้อมูล วิธีการแบบแยกส่วนนำไปสู่ปัญหาความสามารถในการจัดการและการควบคุมเวอร์ชัน เนื่องจากชุดข้อมูลอาจมีการเปลี่ยนแปลงและการแปลง
แม้ว่าความต้องการเชิงวิเคราะห์ของผู้ใช้หรือทีมจะมีความสำคัญของโครงการ LuckyTemplates ก็ตาม การวางแผนสำหรับโซลูชันที่ยั่งยืนที่สามารถแบ่งปันระหว่างทีมในท้ายที่สุดก็มีความสำคัญเช่นกัน
ประกาศเมล็ดข้าว.
ในที่สุดแล้ว ตารางข้อเท็จจริงโดยละเอียดจะครอบคลุมระดับของรายละเอียดที่มีอยู่สำหรับการค้นหาเชิงวิเคราะห์ ตลอดจนจำนวนข้อมูลที่สามารถเข้าถึงได้
เกรนสูงหมายถึงรายละเอียดมากขึ้นในขณะที่เกรนต่ำหมายถึงรายละเอียดน้อยลง ตัวอย่างนี้คือเมื่อคุณต้องการรับระดับรายการใบสั่งขาย หรือถ้าคุณต้องการให้โครงการมีเฉพาะระดับสรุปของใบสั่งขายแต่ละรายการ และไม่ลงลึกถึงผลิตภัณฑ์เฉพาะที่สั่งซื้อโดยเป็นส่วนหนึ่งของการขายนั้น
บางครั้งเม็ดนี้อาจแตกต่างกันไปขึ้นอยู่กับกรอบเวลาของคุณ ฉันพบลูกค้าจำนวนมากที่ต้องการตารางข้อเท็จจริงที่ละเอียดมากสำหรับไตรมาสปัจจุบัน แต่สำหรับไตรมาสก่อนหน้า พวกเขาเพียงแค่ต้องการทราบว่ายอดขายรวมสำหรับไตรมาสนี้เป็นอย่างไร
ในระหว่างขั้นตอนนี้ คุณต้องการกำหนดว่าแต่ละแถวของกระบวนการทางธุรกิจต่างๆ แสดงถึงอะไร ตัวอย่างเช่น แต่ละแถวของตารางข้อเท็จจริงการขายจากคลังข้อมูลของเราแสดงถึงรายการของใบสั่งขายจากลูกค้า
ในทางกลับกัน แถวของแผนการขายและกำไรขั้นต้นจะรวมกันในเดือนปฏิทิน หมวดหมู่ย่อยของผลิตภัณฑ์ และภูมิภาคของพื้นที่ขาย ดังนั้น ในกรณีนี้ คุณมีตารางข้อเท็จจริงสองตารางที่แตกต่างกัน และธัญพืชสองรายการที่แตกต่างกัน หากคุณต้องการเปรียบเทียบทั้งสอง จะมีงานสร้างแบบจำลองข้อมูลที่เกี่ยวข้อง
ระบุขนาด
ขนาดเป็นเพียงผลพลอยได้ตามธรรมชาติของธัญพืชที่เลือกไว้ในขั้นตอนการออกแบบก่อนหน้านี้
ดังนั้น แถวตัวอย่างเดียวจากตารางแฟคท์จึงควรระบุมิติขององค์กรธุรกิจที่เกี่ยวข้องกับกระบวนการที่กำหนดอย่างชัดเจน เช่น ลูกค้าที่ซื้อโครงการแต่ละโครงการ ผลิตภัณฑ์ในวันที่กำหนดและเวลาที่กำหนด ตารางข้อเท็จจริงที่แสดงเกรนล่างจะมีขนาดน้อยกว่า
ตัวอย่างเช่น ตารางแฟคท์ที่แสดงระดับหัวข้อของใบสั่งซื้ออาจระบุผู้จัดจำหน่าย แต่ไม่ใช่การซื้อผลิตภัณฑ์แต่ละรายการจากผู้จัดจำหน่าย ดังนั้น ในกรณีนั้น คุณไม่จำเป็นต้องมีหมวดหมู่ผลิตภัณฑ์หรือมิติข้อมูลหมวดหมู่ย่อยของผลิตภัณฑ์
กำหนดข้อเท็จจริง
ข้อเท็จจริงแสดงถึงคอลัมน์ตัวเลขที่รวมอยู่ในตารางข้อเท็จจริง ดังนั้น ในขณะที่คอลัมน์มิติจากขั้นตอนที่ 3 ใช้สำหรับความสัมพันธ์ คอลัมน์ข้อเท็จจริงจะถูกใช้ในการวัดที่มีตรรกะการรวม เช่น ผลรวมของคอลัมน์ปริมาณหรือค่าเฉลี่ยของคอลัมน์ราคา
Data Bus Matrix สำหรับการดำเนินโครงการ LuckyTemplates
เมทริกซ์บัสของคลังข้อมูลเป็นวัตถุดิบหลักของสถาปัตยกรรมคลังข้อมูล Ralph Kimball ซึ่งให้แนวทางที่เพิ่มขึ้นและบูรณาการในการออกแบบคลังข้อมูล
สถาปัตยกรรมที่คุณเห็นนี้มาจากThe Data Warehouse Toolkitรุ่นที่ 3 โดย Ralph Kimball ช่วยให้มีโมเดลข้อมูลที่ปรับขนาดได้ซึ่งทีมธุรกิจหรือฟังก์ชันต่างๆ มักต้องการเพื่อเข้าถึงกระบวนการทางธุรกิจและมิติข้อมูลเดียวกัน
การเก็บเมทริกซ์บัสคลังข้อมูลไว้รอบ ๆ นั้นมีประโยชน์ เมื่อคุณกรอกข้อมูล คุณจะทราบว่ามีชุดข้อมูลอื่นที่มีตารางข้อเท็จจริงทางอินเทอร์เน็ตและตารางมิติที่คล้ายกันหรือไม่ สิ่งนี้ส่งเสริมการนำกลับมาใช้ใหม่ของโครงการและปรับปรุงการสื่อสารของโครงการ
ดังนั้นแต่ละแถวจึงสะท้อนถึงกระบวนการทางธุรกิจที่สำคัญและเกิดซ้ำ เช่น การปิดบัญชีแยกประเภททั่วไปรายเดือน แต่ละคอลัมน์แสดงถึงเอนทิตีธุรกิจ ซึ่งอาจเกี่ยวข้องกับกระบวนการทางธุรกิจหนึ่งหรือหลายกระบวนการ ในขณะที่แถวที่แรเงาแสดงถึงกระบวนการทางธุรกิจที่รวมอยู่ในโครงการ
การทำโปรไฟล์ข้อมูลสำหรับการใช้งาน LuckyTemplates
เมื่อคุณระบุเกรนและกระบวนการออกแบบชุดข้อมูลสี่ขั้นตอนเสร็จสมบูรณ์แล้ว ควรตามด้วยการวิเคราะห์ทางเทคนิคของแหล่งข้อมูลของตารางข้อเท็จจริงและมิติข้อมูล ทันที
ข้อมูลเมตาทางเทคนิค รวมถึงไดอะแกรมฐานข้อมูลและผลลัพธ์การทำโปรไฟล์ข้อมูล เป็นสิ่งจำเป็นสำหรับขั้นตอนการวางแผนโครงการ
ข้อมูลนี้ใช้เพื่อให้แน่ใจว่าชุดข้อมูล power BI สะท้อนถึงคำจำกัดความทางธุรกิจที่ตั้งใจไว้ และสร้างขึ้นจากแหล่งข้อมูลที่เชื่อถือได้
สามวิธีคือสามวิธีที่แตกต่างกันในการรวบรวมข้อมูลการทำโปรไฟล์ ซึ่งควรเป็นขั้นตอนแรกที่ผู้คนจะทำเมื่อออกจากกระบวนการออกแบบ
บริการการรวมเซิร์ฟเวอร์ SQL
มีสองวิธีที่จะไปเกี่ยวกับเรื่องนี้ วิธีหนึ่งคือใช้งานการทำโปรไฟล์ข้อมูลภายใน แพ็คเกจ SQL Server Integration Services (SSIS)
งานการทำโปรไฟล์ข้อมูลต้องการการเชื่อมต่อ ADO.NET และสามารถเขียนเอาต์พุตไปยังไฟล์ XML หรือตัวแปร SSIS
ในตัวอย่างนี้ ข้อมูลต้นฉบับของ ADO.NET คือคลังข้อมูล ฐานข้อมูล และเซิร์ฟเวอร์ SQL ของ AdventureWorks และปลายทางคือไฟล์ XML
ดังนั้นเมื่อดำเนินการงานแล้ว ไฟล์ XML จะสามารถอ่านผ่านโปรแกรมดูโปรไฟล์ข้อมูลเซิร์ฟเวอร์ SQL คุณสามารถดูผลลัพธ์ในรูปของการนับค่าว่างและเปอร์เซ็นต์การนับค่าว่าง
แด็กซ์ สตูดิโอ
การทำโปรไฟล์ข้อมูลอีกวิธีหนึ่งคือผ่าน DAX Studio คุณต้องนำข้อมูลเข้าสู่ชุดข้อมูล LuckyTemplates โดยไปที่ DAX Studio ไปที่แท็บขั้นสูง และเรียกใช้VertiPaq Analyzer
จะแสดงข้อมูลประเภทเดียวกันรอบๆ จำนวนสมาชิกของคอลัมน์ ดังนั้นคุณจะรู้ว่าข้อมูลใดใช้พื้นที่มากที่สุดในโมเดลข้อมูลของคุณ รวมสถิติต่าง ๆ รอบ ๆ ข้อมูล
เดสก์ท็อป LuckyTemplates
การทำโปรไฟล์ข้อมูลยังมีอยู่ใน Power Query ภายในเดสก์ท็อป LuckyTemplates หากคุณไปที่แท็บมุมมองคุณสามารถเปิดสิ่งต่างๆ เช่น คุณภาพของคอลัมน์ การกระจายคอลัมน์ และโปรไฟล์คอลัมน์ สำหรับอย่างน้อยหนึ่งพันแถวแรก คุณจะเห็นข้อมูลเช่น ข้อผิดพลาด ค่าว่าง ค่าเฉลี่ย และส่วนเบี่ยงเบนมาตรฐาน
การวางแผนชุดข้อมูลสำหรับการใช้งาน LuckyTemplates
หลังจากที่ข้อมูลต้นทางได้รับการสร้างโปรไฟล์และประเมินตามข้อกำหนดที่ระบุในกระบวนการออกแบบชุดข้อมูลสี่ขั้นตอนแล้ว ทีม BI จะสามารถวิเคราะห์ตัวเลือกการใช้งานสำหรับชุดข้อมูลเพิ่มเติมได้
ในโครงการ LuckyTemplates เกือบทั้งหมด แม้แต่โครงการที่มีการลงทุนจำนวนมากในข้อมูลองค์กร คลังสินค้า สถาปัตยกรรม และเครื่องมือและกระบวนการ ETL จำเป็นต้องมีตรรกะเพิ่มเติม การรวมหรือการเปลี่ยนแปลงในระดับหนึ่งเพื่อเพิ่มคุณภาพและมูลค่าของข้อมูลต้นทาง
ขั้นตอนการวางแผนชุดข้อมูลกำหนดวิธีแก้ไขปัญหาการแปลงข้อมูลที่ระบุเพื่อสนับสนุนชุดข้อมูล นอกจากนี้ ทีมงานโครงการต้องพิจารณาว่าจะพัฒนา ชุด ข้อมูลโหมดการนำเข้าชุดข้อมูลการค้นหาโดยตรงหรือชุดข้อมูลผสม
เพื่อชี้แจงกระบวนการวางแผนชุดข้อมูล ไดอะแกรมนี้ระบุชั้นต่างๆ ของคลังข้อมูลและชุดข้อมูล LuckyTemplates ที่ซึ่งการแปลงและตรรกะทางธุรกิจสามารถนำไปใช้ได้
ในบางโครงการ จำเป็นต้องมีการแปลงเพียงเล็กน้อยและสามารถรวมอยู่ในชุดข้อมูล power BI ได้อย่างง่ายดาย ตัวอย่างเช่น หากต้องการเพียงไม่กี่คอลัมน์เพิ่มเติมสำหรับตารางไดเมนชัน และมีคำแนะนำที่ตรงไปตรงมาเกี่ยวกับวิธีคำนวณคอลัมน์เหล่านี้ องค์กร IT อาจเลือกใช้การแปลงเหล่านี้ภายใน M power query แทนที่จะแก้ไขคลังข้อมูล
หากช่องว่างที่สำคัญระหว่างความต้องการ BI และคลังข้อมูลขององค์กรยังคงอยู่ ชุดข้อมูล LuckyTemplates จะซับซ้อนมากขึ้นในการสร้างและบำรุงรักษา
ผู้ออกแบบชุดข้อมูลควรวิเคราะห์และสื่อสารความหมายของชุดข้อมูลอย่างสม่ำเสมอหากมีความซับซ้อนมากขึ้น
อย่างไรก็ตาม หากตรรกะการแปลงที่จำเป็นมีความซับซ้อนหรือกว้างขวางด้วยการดำเนินการร่วมกันหลายรายการ ตัวกรองแถว และการเปลี่ยนแปลงประเภทข้อมูล องค์กร IT อาจเลือกใช้การเปลี่ยนแปลงที่จำเป็นในคลังข้อมูลเพื่อรองรับชุดข้อมูลใหม่และโครงการ BI ในอนาคต
ตัวอย่างเช่น อาจจำเป็นต้องมีตารางจัดเตรียมและขั้นตอนการจัดเก็บ SQL เพื่อสนับสนุน แก้ไข และอัปเดตกระบวนการ หรืออาจจำเป็นต้องสร้างดัชนีเพื่อปรับปรุงประสิทธิภาพการสืบค้นสำหรับชุดข้อมูล DirectQuery
การเลือกโหมดชุดข้อมูล
ขั้นตอนที่ตามมาแต่เกี่ยวข้องอย่างใกล้ชิดกับการวางแผนชุดข้อมูลคือการเลือกระหว่างโหมดนำเข้าเริ่มต้น โหมด DirectQuery/สด หรือโหมดผสม
ในบางโครงการ นี่เป็นการตัดสินใจง่ายๆ ที่มีเพียงตัวเลือกเดียวที่เป็นไปได้หรือเป็นไปได้จริงตามข้อกำหนดที่ทราบ ในขณะที่โครงการอื่นๆ จะนำมาซึ่งการวิเคราะห์ที่สำคัญเกี่ยวกับข้อดีและข้อเสียของการออกแบบแต่ละแบบ
ดังนั้น หากแหล่งข้อมูลได้รับการพิจารณาว่าช้าหรือไม่พร้อมในการจัดการกับการค้นหาเชิงวิเคราะห์จำนวนมาก ชุดข้อมูลโหมดนำเข้าจึงเป็นตัวเลือกที่ต้องการ
ในทำนองเดียวกัน หากการมองเห็นแหล่งข้อมูลแบบเกือบเรียลไทม์เป็นสิ่งสำคัญ DirectQuery หรือโหมดใช้งานจริงคือตัวเลือกเดียวที่จะทำให้บรรลุผลดังกล่าว DirectQuery และโหมดสดมีความคล้ายคลึงกันมาก ทั้งสองวิธีไม่เก็บข้อมูลภายในชุดข้อมูล และทั้งสองวิธีสอบถามระบบต้นทางโดยตรงเพื่อดึงข้อมูลตามการกระทำของผู้ใช้ ขณะนี้เรามี DirectQuery สำหรับชุดข้อมูล LuckyTemplates และ DirectQuery สำหรับ Analysis Services
คำถามที่ควรถามเมื่อเลือกโหมดชุดข้อมูล
ต่อไปนี้คือคำถามบางส่วนที่ต้องถามเมื่อตัดสินใจว่าจะใช้โหมดใด มีแหล่งข้อมูลเดียวสำหรับชุดข้อมูลของเราหรือไม่ หากไม่มีแหล่งข้อมูลเดียว แสดงว่าในอดีตคุณไม่สามารถใช้ DirectQuery/Live source ได้
แม้ว่าตอนนี้เราจะมีชุดข้อมูลโหมดผสม แต่ก็ยังเป็นคำถามที่ดีที่จะถามในตอนเริ่มต้น เพราะหากไม่มีแหล่งที่มาเดียว ก็จะนำเข้าหรือผสม
หากแหล่งที่มา DirectQuery/Live เป็นตัวเลือก แหล่งที่มานั้นสามารถรองรับการค้นหาเชิงวิเคราะห์ได้หรือไม่ หากคุณกำลังทำงานกับแถวหลายพันล้านหรือล้านล้านแถว ชุดข้อมูลโหมดนำเข้าอาจไม่สามารถทำได้ และคุณจะต้องลงไปที่โหมด DirectQuery หรือโหมดผสมเพื่อให้แน่ใจว่าชุดข้อมูลนั้นใช้งานได้
หากแหล่งที่มา DirectQuery/Live สามารถรองรับปริมาณงานได้ การเชื่อมต่อ DirectQuery/Live มีค่ามากกว่าประสิทธิภาพและความยืดหยุ่นที่ได้รับจากโมเดลการนำเข้าหรือไม่
บทสรุป
โพสต์นี้สรุปซีรี่ส์นี้เกี่ยวกับการวางแผนโครงการ LuckyTemplates ฉันคิดว่าสิ่งเหล่านี้เป็นขั้นตอนสำคัญสำหรับโครงการ LuckyTemplates ทุกโครงการที่คุณดำเนินการ ขั้นตอนเหล่านี้มีความสำคัญเมื่อทำ Due diligence โดยเฉพาะอย่างยิ่งในการตั้งค่าระบบข่าวกรองธุรกิจระดับองค์กร
สิ่งที่ดีที่สุด
เกร็ก เด็คเลอร์
ตนเองคืออะไรใน Python: ตัวอย่างในโลกแห่งความเป็นจริง
คุณจะได้เรียนรู้วิธีการบันทึกและโหลดวัตถุจากไฟล์ .rds ใน R บล็อกนี้จะครอบคลุมถึงวิธีการนำเข้าวัตถุจาก R ไปยัง LuckyTemplates
ในบทช่วยสอนภาษาการเข้ารหัส DAX นี้ เรียนรู้วิธีใช้ฟังก์ชัน GENERATE และวิธีเปลี่ยนชื่อหน่วยวัดแบบไดนามิก
บทช่วยสอนนี้จะครอบคลุมถึงวิธีการใช้เทคนิค Multi Threaded Dynamic Visuals เพื่อสร้างข้อมูลเชิงลึกจากการแสดงข้อมูลแบบไดนามิกในรายงานของคุณ
ในบทความนี้ ฉันจะเรียกใช้ผ่านบริบทตัวกรอง บริบทตัวกรองเป็นหนึ่งในหัวข้อหลักที่ผู้ใช้ LuckyTemplates ควรเรียนรู้ในขั้นต้น
ฉันต้องการแสดงให้เห็นว่าบริการออนไลน์ของ LuckyTemplates Apps สามารถช่วยในการจัดการรายงานและข้อมูลเชิงลึกต่างๆ ที่สร้างจากแหล่งข้อมูลต่างๆ ได้อย่างไร
เรียนรู้วิธีคำนวณการเปลี่ยนแปลงอัตรากำไรของคุณโดยใช้เทคนิคต่างๆ เช่น การแยกสาขาและการรวมสูตร DAX ใน LuckyTemplates
บทช่วยสอนนี้จะหารือเกี่ยวกับแนวคิดของการทำให้แคชข้อมูลเป็นรูปธรรมและวิธีที่สิ่งเหล่านี้ส่งผลต่อประสิทธิภาพของ DAX ในการให้ผลลัพธ์
หากคุณยังคงใช้ Excel อยู่จนถึงตอนนี้ นี่เป็นเวลาที่ดีที่สุดในการเริ่มใช้ LuckyTemplates สำหรับความต้องการในการรายงานทางธุรกิจของคุณ
เกตเวย์ LuckyTemplates คืออะไร ทั้งหมดที่คุณต้องการรู้