แนวทางปฏิบัติที่ดีที่สุดเพื่อการออกแบบและพัฒนากระแสข้อมูลที่ซับซ้อน

ถ้ากระแสข้อมูลที่คุณอยู่การพัฒนามีขนาดใหญ่ขึ้นและซับซ้อนมากขึ้น นี่คือสิ่งที่คุณสามารถปรับปรุงการออกแบบเดิมของคุณ

แยกออกเป็นกระแสข้อมูลหลายรายการ

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

แยกกระแสข้อมูลการแปลงข้อมูลจากกระแสข้อมูลจัดเตรียม/แยกข้อมูล

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

สถาปัตยกรรมกระแสข้อมูลหลายชั้น

รูปภาพแสดงข้อมูลที่แยกออกจากแหล่งข้อมูลไปยังกระแสข้อมูลจัดเตรียมข้อมูลที่ข้อมูลถูกจัดเก็บไว้ใน Dataverse หรือ Azure Data Lake storage จากนั้นข้อมูลจะถูกย้ายไปยังกระแสข้อมูลการแปลงข้อมูลที่มีการแปลงและแปลงเป็นโครงสร้างคลังข้อมูล จากนั้นข้อมูลจะถูกย้ายไปยังชุดข้อมูล

ใช้ฟังก์ชันแบบปรับแต่งเอง

ฟังก์ชันแบบปรับแต่งเองจะมีประโยชน์ในสถานการณ์ที่จะต้องใช้ขั้นตอนบางอย่างในจํานวนหนึ่งกับหลายคิวรีจากแหล่งที่มาที่แตกต่างกัน สามารถพัฒนาฟังก์ชันแบบปรับแต่งเองผ่านอินเทอร์เฟซกราฟิกตัวแก้ไข Power Queryรูปแบบต่างๆ หรือโดยใช้สคริปต์ M คุณสามารถใช้ฟังก์ชันในกระแสข้อมูลได้มากเท่าที่ต้องการ

การมีฟังก์ชันแบบปรับแต่งเองช่วยให้มีเพียงเวอร์ชันเดียวของโค้ดต้นฉบับเท่านั้น ดังนั้นคุณจึงไม่เพียงแค่คัดลอกโค้ดนั้น ผลที่ได้คือ การPower Queryกระบวนการแปลงข้อมูลและกระแสข้อมูลทั้งหมดจะง่ายขึ้นมาก สามารถดูข้อมูลเพิ่มเติมที่บล็อกโพสต์: ฟังก์ชันแบบปรับแต่งเองที่ง่ายต่อการPower BI Desktop

ฟังก์ชันแบบปรับแต่งเอง

วางคิวรีลงในโฟลเดอร์

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

ใช้เอนทิตีที่ประมวลผลไว้

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

ใช้ประโยชน์จากกลไกการนับขั้นสูง

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

แบ่งหลายขั้นตอนออกเป็นหลายคิวรี

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

เพิ่มคุณสมบัติต่าง ๆ ของคิวรีและขั้นตอน

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

ตรวจสอบให้แน่ใจว่าความจุอยู่ในภูมิภาคเดียวกัน

กระแสข้อมูลไม่สนับสนุนหลายประเทศหรือภูมิภาคในขณะนี้ ความจุระดับพรีเมียมต้องอยู่ในภูมิภาคเดียวกันกับผู้เช่า Power BI ของคุณ

แยกแหล่งข้อมูลภายในองค์กรออกจากแหล่งข้อมูลระบบคลาวด์

เราขอแนะว์ให้คุณสร้างกระแสข้อมูลแยกต่างหากให้กับแหล่งข้อมูลแต่ละประเภท เช่น ภายในองค์กร ระบบคลาวด์ SQL Server Spark และ Dynamics 365 การแยกกระแสข้อมูลตามชนิดแหล่งข้อมูล จะช่วยอวยความสะดวกในการแก้ไขปัญหาด่วน และหลีกเลี่ยงขีดจํากัดภายในเมื่อคุณรีเฟรชกระแสข้อมูลของคุณ

แยกกระแสข้อมูลตามเวลาการรีเฟรชที่ต้องใช้ในเอนทิตี้

หากคุณมีตารางธุรกรรมการขายที่อัปเดตในระบบแหล่งข้อมูลทุกชั่วโมงและคุณมีตารางการแมปผลิตภัณฑ์ที่มีการอัปเดตทุกสัปดาห์ ให้แบ่งสองกระแสข้อมูลเหล่านี้เป็นสองกระแสข้อมูลด้วยตารางเวลาการรีเฟรชข้อมูลที่แตกต่างกัน

หลีกเลี่ยงการรีเฟรชตามเวลาที่ตั้งเวลาในเอนทิตีที่เชื่อมโยงในพื้นที่งานเดียวกัน

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

หากคุณตั้งค่าการรีเฟรชกระแสข้อมูลแยกต่างหาก กระแสข้อมูลสามารถรีเฟรชได้โดยไม่จําเป็น และบล็อกคุณจากการแก้ไขกระแสข้อมูล มีสองข้อเสนอแนะเพื่อหลีกเลี่ยงปัญหานี้:

  • อย่าตั้งค่าการรีเฟรชตามตารางเวลาของกระแสข้อมูลที่เชื่อมโยงในพื้นที่งานเดียวกันเป็นกระแสข้อมูลต้นทาง
  • ถ้าคุณต้องการกําหนดค่าการกําหนดเวลาการรีเฟรชแยกต่างหาก และต้องการหลีกเลี่ยงลักษณะการล็อค ให้ย้ายกระแสข้อมูลไปยังพื้นที่งานแยกต่างหาก