กลไกการคำนวณขั้นสูงThe enhanced compute engine

กลไกการคำนวณขั้นสูงใน Power BI ช่วยให้ผู้สมัครใช้งาน Power BI Premium สามารถใช้ความจุของพวกเขาเพื่อปรับใช้กระแสข้อมูลในระดับประสิทธิภาพสูงสุดThe enhanced compute engine in Power BI enables Power BI Premium subscribers to use their capacity to optimize the use of dataflows. การใช้กลไกการคำนวณขั้นสูงมีข้อดีดังต่อไปนี้:Using the enhanced compute engine provides the following advantages:

  • ลดเวลาการรีเฟรชที่จำเป็นสำหรับขั้นตอน ETL ที่ใช้งานเป็นเวลานานผ่านเอนทิตีที่มีการคำนวณลงได้อย่างมาก เช่น การดำเนินการ รวม แยกแยะ กรอง และจัดกลุ่มตามDrastically reduces the refresh time required for long-running ETL steps over computed entities, such as performing joins, distinct, filters, and group by
  • ดำเนินการคิวรี DirectQuery ผ่านเอนทิตี (ในเดือนกุมภาพันธ์ 2020)Perform DirectQuery queries over entities (in February 2020)

ส่วนต่อไปนี้อธิบายถึงวิธีการเปิดใช้งานกลไกการคำนวณขั้นสูง และตอบคำถามที่พบบ่อยThe following sections describe how to enable the enhanced compute engine, and answer common questions.

การใช้กลไกการคำนวณขั้นสูงUsing the enhanced compute engine

กลไกการคำนวณขั้นสูงเปิดใช้งานจากหน้า การตั้งค่าความจุ ในบริการของ Power BI ในส่วน กระแสข้อมูลThe enhanced compute engine is enabled from the Capacity Settings page in the Power BI service, in the dataflows section. โดยค่าเริ่มต้น กลไกการคำนวณขั้นสูงจะปิดBy default, the enhanced compute engine is Off. เมื่อต้องการเปิดใช้งาน ให้สลับเป็น เปิด ดังที่แสดงในภาพต่อไปนี้ แล้วบันทึกการตั้งค่าของคุณTo turn it on switch the toggle to On, as shown in the following image, and save your settings.

เปิดกลไกการคำนวณขั้นสูง

ข้อสำคัญ

กลไกการคำนวณขั้นสูงทำงานเฉพาะสำหรับความจุ Power BI ของ A3 และสูงกว่าThe enhanced compute engine works only for Power BI capacities of A3 and above.

เมื่อเปิดกลไกการคำนวณขั้นสูงแล้ว ให้กลับไปที่กระแสข้อมูล คุณควรจะมองเห็นการปรับปรุงประสิทธิภาพที่ดีขึ้นในเอนทิตีที่คำนวณใดๆ ซึ่งทำงานที่ซับซ้อนต่าง ๆ เช่น รวม หรือ จัดกลุ่มตาม การดำเนินการสำหรับกระแสข้อมูลที่สร้างจากเอนทิตีที่ลิงก์ซึ่งมีอยู่แล้วบนความจุเดียวกันOnce you turn on the enhanced compute engine, return to dataflows and you should see a performance improvement in any computed entity that performs complex operations, such as joins or group by operations for dataflows created from existing linked entities on the same capacity.

เพื่อใช้กลไกการคำนวณให้ได้รับประโยชน์สูงสุด คุณควรแยกขั้นตอน ETL ออกเป็นกระแสข้อมูลที่แยกจากกันสองรายการด้วยวิธีการต่อไปนี:To make best use of the compute engine, you should split the ETL stage into two separate dataflows in the following way:

  • กระแสข้อมูล 1 - กระแสข้อมูลนี้ควรส่งถ่ายรายการที่จำเป็นทั้งหมดจากแหล่งข้อมูล และวางลงในกระแสข้อมูล 2Dataflow 1 - this dataflow should only be ingesting all of the required from a data source, and placing it into dataflow 2.
  • กระแสข้อมูล 2 - ดำเนินการ ETL ทั้งหมดในกระแสข้อมูลที่สองนี้ แต่ตรวจสอบให้แน่ใจว่าคุณกำลังอ้างอิงกระแสข้อมูล 1 ที่ควรมีความจุเดียวกันอยู่Dataflow 2 - perform all ETL operations in this second dataflow, but ensure you're referencing Dataflow 1, which should be on the same capacity. นอกจากนี้ ตรวจสอบให้แน่ใจว่าคุณดำเนินงานที่สามารถพับได้ก่อน (กรอง, จัดกลุ่มตาม, แยกแยะ, รวม) ก่อนที่จะดำเนินการอืนใด เพื่อให้แน่ใจว่าสามารถใช้ประโยชน์จากกลไกการคำนวณได้Also ensure you perform operations that can fold (filter, group by, distinct, join) first, before any other operation, to ensure the compute engine is utilized.

คำถามที่พบทั่วไปและคำตอบCommon questions and answers

คำถาม: ฉันเปิดใช้กลไกการคำนวณขั้นสูง แต่ระบบรีเฟรชช้าลงQuestion: I've enabled the enhanced compute engine, but my refreshes are slower. ทำไม?Why?

คำตอบ: หากคุณเปิดใช้กลไกการคำนวณขั้นสูง มีคำอธิบายสองแบบที่เป็นไปได้ ที่อาจทำให้เวลารีเฟรชช้าลง:Answer: If you enable the enhanced compute engine, there are two possible explanations that could lead to slower refresh times:

  • เมื่อเปิดใช้กลไกการคำนวณขั้นสูง ระบบต้องการหน่วยความจำบางส่วนเพื่อทำงานได้อย่างถูกต้องWhen the enhanced compute engine is enabled, it requires some memory to function properly. ดังนั้น หน่วยความจำที่พร้อมสำหรับการรีเฟรชจะลดลง และจะเพิ่มความเป็นไปได้เช่นเดียวกันนี้ต่อรายการรีเฟรชที่รอต่อคิวดำเนินการอยู่ ซึ่งจะลดกระแสข้อมูลที่อาจรีเฟรชอยู่ในเวลาเดียวกันเช่นกันAs such, memory available to perform a refresh is reduced and therefore increases the likelihood of refreshes to be queued, which in turn reduces the number of dataflow dataflows that can refresh concurrently. เพื่อแก้ไขปัญหานี้ เมื่อเปิดใช้การคำนวณขั้นสูง ให้เพิ่มหน่วยความจำที่กำหนดมาสำหรับกระแสข้อมูล เพื่อให้แน่ใจว่าหน่วยข้อมูลที่พร้อมใช้งานสำหรับการรีเฟรชกระแสข้อมูลในเวลาเดียวกันจะยังคงเหมือนเดิมTo address this, when enabling enhanced compute, increase the memory assigned for dataflows to ensure the memory available for concurrent dataflow refreshes remains the same.

  • อีกเหตุผลหนึ่งที่คุณอาจพบจากการรีเฟรชที่ช้าลงคือ กลไกการคำนวณจะทำงานบนเอนทิตีที่มีอยู่เท่านั้น ในกรณีที่กระแสข้อมูลของคุณอ้างอิงถึงแหล่งข้อมูลที่ไม่ใช่กระแสข้อมูล คุณจะไม่เห็นการปรับปรุงที่ดีขึ้นของระบบAnother reason you may encounter slower refreshes is that the compute engine only works on top of existing entities, if your dataflow references a data source that's not a dataflow you won't see an improvement. ประสิทธิภาพการทำงานจะไม่เพี่มขึ้น เนื่องจากในสถานการณ์สมมติครั้งใหญ่บางอย่าง ค่าเริ่มต้นจากแหล่งข้อมูลจะช้าลง เนื่องจากข้อมูลจำเป็นต้องผ่านไปยังกลไกการคำนวณขั้นสูงThere will be no performance increase, since in some big data scenarios, the initial read from a data source would be slower because the data needs to be passed to the enhanced compute engine.

คำถาม: ฉันไม่เห็นการสลับกลไกการคำนวณขั้นสูงQuestion: I cannot see the enhanced compute engine toggle. ทำไม?Why?

คำตอบ: กลไกการคำนวณขั้นสูงถูกปล่อยออกมาในขั้นตอนต่างๆ ไปยังภูมิภาคต่าง ๆ ทั่วโลกAnswer: The enhanced compute engine is being released in stages to regions around the world. เราคาดการณ์ว่า ระบบจะรองรับในทุกภูมิภาคภายในสิ้นปีค.ศ.2020We anticipate all regions will supported by the end of 2020.

คำถาม: ประเภทข้อมูลที่ได้รับการสนับสนุนสำหรับกลไกการคำนวณคืออะไรQuestion: What are the supported data types for the compute engine?

คำตอบ: ปัจจุบัน กลไกการคำนวณขั้นสูงและกระแสข้อมูลสนับสนุนประเภทข้อมูลต่อไปนี้Answer: The enhanced compute engine and dataflows currently support the following data types. หากกระแสข้อมูลของคุณไม่ได้ใช้หนึ่งในประเภทข้อมูลต่อไปนี้ จะมีข้อผิดพลาดเกิดขึ้นระหว่างการรีเฟรช:If your dataflow doesn't use one of the following data types, an error occurs during refresh:

  • วันที่/เวลาDate/Time
  • เลขทศนิยมDecimal Number
  • ข้อความText
  • จำนวนเต็มWhole number
  • วันที่/เวลา/โซนDate/Time/Zone
  • จริง/เท็จTrue/False
  • วันที่Date
  • เวลาTime

ขั้นตอนถัดไปNext steps

บทความนี้ระบุข้อมูลเกี่ยวกับการใช้กลไกการคำนวณขั้นสูงสำหรับกระแสข้อมูลThis article provided information about using the enhanced compute engine for dataflows. บทความต่อไปนี้อาจมีประโยชน์:The following articles may also be helpful:

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Power Query และการรีเฟรชตามกำหนดการ สามารถดูได้ในบทความเหล่านี้:For more information about Power Query and scheduled refresh, you can read these articles:

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Common Data Model สามารถดูได้ในบทความภาพรวม:For more information about the Common Data Model, you can read its overview article: