Iterator Dan Peralihan Konteks Dalam Pertanyaan DAX

Iterator Dan Peralihan Konteks Dalam Pertanyaan DAX

Tutorial ini akan membincangkan peralihan konteks dan Iterator bersarang. Anda akan mempelajari kepentingan entiti ini dan cara mereka boleh menjadi sumber yang baik untuk pengoptimuman.

Jika anda ingat, peralihan konteks berlaku apabila konteks baris berubah menjadi konteks penapis yang setara. Anda perlu sedar tentang perkara yang berlaku apabila peralihan konteks berlaku dalam iterator anda kerana ia selalunya boleh menjana hasil yang perlahan.

Isi kandungan

Nested Iterators Versus CALCULATE

Jika peralihan konteks digunakan semasa lelaran, jadual pewujudan dibuat. Ini bermakna peralihan konteks digunakan melalui formula dalam DAX anda. Jadual ialah data tidak dimampatkan yang dihantar ke enjin formula.

Untuk menunjukkan, ukuran pertama adalah untuk Jualan Besar yang mendapat Harga Semasa jika lebih besar daripada atau sama dengan 500.

Iterator Dan Peralihan Konteks Dalam Pertanyaan DAX

Ukuran seterusnya adalah untuk purata Jualan Besar dengan iterator bersarang.

Iterator Dan Peralihan Konteks Dalam Pertanyaan DAX

Ukuran terakhir mendapat purata Jualan Besar tanpa iterator bersarang dan CallBackDataID.

Iterator Dan Peralihan Konteks Dalam Pertanyaan DAX

Jalankan ukuran dengan iterator bersarang. Pastikan untuk mengosongkan cache sebelum menjalankan, dan kemudian hidupkan Pemasa Pelayan dan Pelan Pertanyaan.

Iterator Dan Peralihan Konteks Dalam Pertanyaan DAX

Anda dapat melihat bahawa ia menghasilkan 3 imbasan, 2 CallBackDataID dan 15,003 baris. Ini membimbangkan kerana hanya terdapat 101 baris untuk output. Ini berlaku kerana ukuran mempunyai dua iterator atau fungsi X.

Ini ialah bentuk ukuran yang dikembangkan sepenuhnya yang telah dijalankan:

Iterator Dan Peralihan Konteks Dalam Pertanyaan DAX

Ia mengulangi jadual Jualan Fakta dengan . Ia kemudian mengulangi sekali lagi dengan CallBackDataID menggunakan . Format yang dipendekkan bagi ukuran ini mempunyai fungsi tersirat yang menggunakan peralihan konteks dan merealisasikan jadual. Itulah sebabnya ia menarik 15,003 baris, walaupun terdapat hanya 101 baris untuk output.

Jalankan ukuran lain yang tidak mempunyai iterator bersarang. Ia masih mengulangi jadual Jualan Fakta menggunakan AVERAGEX tetapi Harga Semasa berada di luar fungsi. Ia menapis keluar produk yang harga semasa lebih besar daripada atau sama dengan 500 dan kemudian mengira purata.

Iterator Dan Peralihan Konteks Dalam Pertanyaan DAX

Anda boleh melihat bahawa ia hanya mempunyai 2 imbasan, 104 baris dan tidak mempunyai CallBackDataID. Jadi jika anda menggunakan CALCULATE , anda boleh menyingkirkan iterator bersarang dan CallBackDataIDs .


Fungsi DAX Dalam LuckyTemplates: Menggunakan Iterator
Cara Menggunakan Fungsi Lelaran Dalam LuckyTemplates
Pengiraan DAX – Peralihan Konteks Penapis

Kesimpulan

Terdapat banyak punca DAX berprestasi perlahan. Salah satunya adalah disebabkan oleh iterator bersarang yang menyebabkan peralihan konteks yang tidak perlu. Iterator ini mewujudkan lebih banyak baris daripada yang diperlukan, yang menyebabkan pertanyaan anda menjadi perlahan.

Penyelesaian terbaik untuk ini ialah meletakkannya di dalam CALCULATE . Ini menghasilkan kurang kerja untuk enjin formula dan memaksimumkan keupayaan enjin storan.


Apa Itu Diri Dalam Python: Contoh Dunia Sebenar

Apa Itu Diri Dalam Python: Contoh Dunia Sebenar

Apa Itu Diri Dalam Python: Contoh Dunia Sebenar

Cara Menyimpan & Memuatkan Fail RDS Dalam R

Cara Menyimpan & Memuatkan Fail RDS Dalam R

Anda akan belajar cara menyimpan dan memuatkan objek daripada fail .rds dalam R. Blog ini juga akan membincangkan cara mengimport objek dari R ke LuckyTemplates.

N Hari Perniagaan Pertama Dilawati Semula – Penyelesaian Bahasa Pengekodan DAX

N Hari Perniagaan Pertama Dilawati Semula – Penyelesaian Bahasa Pengekodan DAX

Dalam tutorial bahasa pengekodan DAX ini, pelajari cara menggunakan fungsi GENERATE dan cara menukar tajuk ukuran secara dinamik.

Pamerkan Cerapan Menggunakan Teknik Visual Dinamik Berbilang Thread Dalam LuckyTemplates

Pamerkan Cerapan Menggunakan Teknik Visual Dinamik Berbilang Thread Dalam LuckyTemplates

Tutorial ini akan merangkumi cara menggunakan teknik Visual Dinamik Berbilang Thread untuk mencipta cerapan daripada visualisasi data dinamik dalam laporan anda.

Pengenalan Untuk Menapis Konteks Dalam LuckyTemplates

Pengenalan Untuk Menapis Konteks Dalam LuckyTemplates

Dalam artikel ini, saya akan menjalankan konteks penapis. Konteks penapis ialah salah satu topik utama yang perlu dipelajari oleh mana-mana pengguna LuckyTemplates pada mulanya.

Petua Terbaik Menggunakan Aplikasi Dalam Perkhidmatan Dalam Talian LuckyTemplates

Petua Terbaik Menggunakan Aplikasi Dalam Perkhidmatan Dalam Talian LuckyTemplates

Saya ingin menunjukkan cara perkhidmatan dalam talian LuckyTemplates Apps boleh membantu dalam mengurus laporan dan cerapan berbeza yang dijana daripada pelbagai sumber.

Analisis Perubahan Margin Keuntungan Lebih Masa – Analitis Dengan LuckyTemplates Dan DAX

Analisis Perubahan Margin Keuntungan Lebih Masa – Analitis Dengan LuckyTemplates Dan DAX

Ketahui cara untuk menyelesaikan perubahan margin keuntungan anda menggunakan teknik seperti mengukur percabangan dan menggabungkan formula DAX dalam LuckyTemplates.

Idea Pewujudan Untuk Cache Data Dalam DAX Studio

Idea Pewujudan Untuk Cache Data Dalam DAX Studio

Tutorial ini akan membincangkan tentang idea pewujudan cache data dan cara ia mempengaruhi prestasi DAX dalam memberikan hasil.

Pelaporan Perniagaan Menggunakan LuckyTemplates

Pelaporan Perniagaan Menggunakan LuckyTemplates

Jika anda masih menggunakan Excel sehingga sekarang, maka inilah masa terbaik untuk mula menggunakan LuckyTemplates untuk keperluan pelaporan perniagaan anda.

Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu

Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu

Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu