ما هي الذات في بايثون: أمثلة من العالم الحقيقي
ما هي الذات في بايثون: أمثلة من العالم الحقيقي
في هذا البرنامج التعليمي ، ستتعلم أسلوب تحسين DAX باستخدام وظيفة UNION. سيقارن هذا البرنامج التعليمي أداء وظيفة UNION مقابل Power Query والأساليب الأخرى لدمج الجداول.
تجمع الدالة بين جدولين في جدول واحد عن طريق الجمع بين صفوفهم وإزالة أي صفوف مكررة.
المثال في هذا البرنامج التعليمي هو جدول المبيعات الذي تم تقسيمه إلى ثلاثة جداول لكل عام (2007 ، 2008 ، 2009).
جدول المحتويات
وظيفة الاتحاد في DAX
افتح DAX Studio وابدأ توقيتات الخادم وخطة الاستعلام.
يتم استخدام رمز DAX أدناه كمثال:
بعد تشغيل الرمز ، انتقل إلى علامة التبويب توقيتات الخادم . يمكنك أن ترى أن تنفيذ الكود يستغرق 5.4 ثانية. تم قضاء معظم وقت التنفيذ في محرك التخزين . يحتوي كل من هذه الاستعلامات الثلاثة على نفس العملية ، لكن السنوات مختلفة.
بعد أن يتم إرجاع هذه الاستعلامات الثلاثة بواسطة Storage Engine ، يقوم Formula Engine بتنفيذ UNION ، والتي يمكن رؤيتها في خطة الاستعلام المنطقي. تنفذ خطة الاستعلام أيضًا لحساب إجمالي المبيعات.
في خطة الاستعلام المادي ، يمكنك رؤية مخابئ البيانات الثلاثة التي تحتوي على العمليات التي يتم إجراؤها لكل عام في جدول المبيعات.
مقارنة أداء DAX
لبناء المقارنة ، دعنا ننشئ مقياسًا لإجمالي المبيعات باستخدام جدول المبيعات الأصلي.
إذا قمت بتشغيل هذا الرمز وانتقلت إلى علامة التبويب توقيتات الخادم ، يمكنك أن ترى أن هذا أكثر كفاءة بكثير من وظيفة الاتحاد.
تستهلك وظيفة UNION 97.9 كيلو بايت بينما يستهلك المقياس الجديد 1 كيلو بايت فقط.
عند استخدام UNION ، يقوم محرك DAX بإرجاع قدر كبير من ذاكرة التخزين المؤقت للبيانات مرة أخرى إلى Formula Engine. هذا يضع الكثير من الضغط على ذاكرة الوصول العشوائي.
لذلك إذا كنت تتعامل مع نموذج بيانات يحتوي على أكثر من مليون صف ، فلا يوصى باستخدام وظيفة UNION
بدائل وظيفة UNION DAX
بدلاً من استخدام UNION ، يمكنك استخدام ثلاث وظائف SUMX لهذا المثال. أي ، دالة SUMX واحدة لكل سنة.
عند تشغيل هذا الرمز والانتقال إلى علامة التبويب توقيتات الخادم ، يمكنك أن ترى أن وقت التنفيذ أقل بكثير. انتقل من 5400 مللي ثانية إلى 33 مللي ثانية مع استمرار تنفيذ ثلاثة استعلامات مختلفة.
هناك طريقة أخرى وهي إلحاق جدول نموذج البيانات في Power Query أو في مصدر البيانات نفسه.
لكن الخيار الأفضل هو إنشاء جدول محسوب يؤدي إلى توحيد هذه الجداول الثلاثة. لكن هذا الخيار له إيجابياته وسلبياته.
يسمح لك استخدام جدول محسوب بحفظ وقت المعالجة الإجمالي بدلاً من إجراء إلحاق في Power Query. ومع ذلك ، سيؤدي هذا إلى زيادة حجم قاعدة البيانات في VertiPaq.
عند استخدام جدول محسوب ، فأنت تقوم بإنشاء جدول جديد يضم الجداول الثلاثة. لكن هذه الجداول المنقسمة الثلاثة ستستمر في البقاء في قاعدة البيانات.
في هذا المثال ، تستهلك الجداول الثلاثة إجمالي 25 ميغا بايت. إذا قمت بإنشاء جدول محسوب ، فسيستهلك 25 ميغا بايت أخرى في ذاكرة الوصول العشوائي الخاصة بك.
بالنسبة للحالات الحساسة مثل هذه ، تحتاج إلى اتخاذ قرار مستنير بشأن أفضل مسار للعمل يمكن اتخاذه.
خاتمة
تجمع الدالة UNION في DAX بين جدولين في جدول واحد ، مما يسهل تحليل البيانات. إنه يعمل عن طريق أخذ جدولين كمدخلات وإرجاع جدول جديد يحتوي على جميع الصفوف من كلا جدولي الإدخال. ومع ذلك ، فإن هذه الوظيفة لها حدودها الخاصة.
يمكن أن تكون وظيفة UNION أبطأ من الطرق الأخرى لدمج البيانات ، خاصةً إذا كانت جداول الإدخال كبيرة. يمكن أن تستهلك أيضًا مساحة أكبر في التخزين بدلاً من البدائل الأخرى.
عندما يتطلب الموقف دمج الجداول ، من المهم أولاً موازنة الإيجابيات والسلبيات قبل اتخاذ قرار باستخدام وظيفة الاتحاد. تتضمن البدائل الخاصة بك دالة SUMX أو جدول نموذج بيانات أو جدول محسوب.
أتمنى لك كل خير،
ما هي الذات في بايثون: أمثلة من العالم الحقيقي
ستتعلم كيفية حفظ وتحميل الكائنات من ملف .rds في R. ستغطي هذه المدونة أيضًا كيفية استيراد الكائنات من R إلى LuckyTemplates.
في هذا البرنامج التعليمي للغة ترميز DAX ، تعرف على كيفية استخدام وظيفة الإنشاء وكيفية تغيير عنوان القياس ديناميكيًا.
سيغطي هذا البرنامج التعليمي كيفية استخدام تقنية Multi Threaded Dynamic Visuals لإنشاء رؤى من تصورات البيانات الديناميكية في تقاريرك.
في هذه المقالة ، سأقوم بتشغيل سياق عامل التصفية. يعد سياق عامل التصفية أحد الموضوعات الرئيسية التي يجب على أي مستخدم LuckyTemplates التعرف عليها في البداية.
أريد أن أوضح كيف يمكن لخدمة تطبيقات LuckyTemplates عبر الإنترنت أن تساعد في إدارة التقارير والرؤى المختلفة التي تم إنشاؤها من مصادر مختلفة.
تعرف على كيفية إجراء تغييرات في هامش الربح باستخدام تقنيات مثل قياس التفرع والجمع بين صيغ DAX في LuckyTemplates.
سيناقش هذا البرنامج التعليمي أفكار تجسيد مخازن البيانات وكيفية تأثيرها على أداء DAX في توفير النتائج.
إذا كنت لا تزال تستخدم Excel حتى الآن ، فهذا هو أفضل وقت لبدء استخدام LuckyTemplates لاحتياجات إعداد تقارير الأعمال الخاصة بك.
ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته