DAX چیست؟

DAX که مخفف Data Analysis eXpressions است، زبان برنامه نویسی Microsoft Power BI، Microsoft Analysis Services و Microsoft Power Pivot برای Excel است.

 

فهم معماری موتورهای  DAX

زبان DAX در چندین محصول مایکروسافت بر اساس فناوری Tabular استفاده می شود. با این حال، ویژگی‌های خاص ممکن است تنها در چند نسخه یا شرایط مجاز موجود باشد. یک مدل جدولی از DAX و MDX به عنوان زبان پرس و جو استفاده می کند. این بخش معماری گسترده تر یک مدل جدولی را بدون توجه به زبان پرس و جو و محدودیت های محصولات خاص توصیف می کند.

DAX  برای کاربران Power BI

 DAX زبان مادری Power BI است و اگر تجربه ای در Excel،SQL  یا MDX ندارید، Power BI اولین جایی است که DAX را یاد می گیرید. اگر تجربه قبلی در ساخت مدل با ابزارهای دیگر ندارید، خواهید آموخت که Power BI یک ابزار تحلیلی و مدل سازی قدرتمند است که DAX بهترین همراه آن است.

DAX  به عنوان یک زبان پرس وجو و برنامه نویسی

DAX و MDX هر دو زبان برنامه نویسی و زبان پرس وجو هستند. در MDX، تفاوت با حضور کد MDX مشخص می شود. شما از MDX در کد MDX به همراه چندین دستور خاص که فقط در کد قابل استفاده هستند، مانند دستورات SCOPE استفاده می کنید. از MDX  در پرس وجو ها هنگام نوشتن دستورات SELECT که داده ها را بازیابی می کنند، استفاده می کنید. در DAX، این تا حدودی متفاوت است. شما از DAX به عنوان یک زبان برنامه نویسی برای تعریف ستون های محاسبه شده، جداول محاسبه شده و measureها استفاده می کنید. مفهوم ستون های محاسبه شده و جداول محاسبه شده برای DAX جدید است و در MDX وجود ندارد. measureها مشابه اعضای محاسبه شده در MDX هستند. همچنین می توانید از DAX به عنوان یک زبان پرس وجو استفاده کنید

DAX  برای توسعه دهندگان  MDX

بسیاری از متخصصان هوش تجاری شروع به یادگیری DAX می کنند زیرا این زبان جدید جدولی است. در گذشته، آنها از زبان MDX برای ساخت و پرسش مدل های چند بعدی خدمات تحلیلی استفاده می کردند. اگرشما در میان آنها هستید، برای یادگیری یک زبان کاملاً جدید آماده باشید:  DAX و MDX اشتراکات زیادی ندارند. بدتر از آن، برخی از مفاهیم در DAX مفاهیم مشابه موجود در MDX را به یاد شما می‌آورند، اگرچه متفاوت هستند.

Excel  و DAX :  دو زبان تابعی

یکی از جنبه های مشابه این دو زبان این است که هر دو اکسل و DAX زبان های تابعی هستند. یک زبان تابعی از عباراتی تشکیل شده است که اساساً فراخوانی تابع هستند. در Excel و DAX، مفاهیم دستورات، حلقه‌ها و پرش‌ها وجود ندارند، اگرچه در بسیاری از زبان‌های برنامه‌نویسی رایج هستند. در DAX، همه چیز یک عبارت است. این جنبه از زبان اغلب برای برنامه نویسان از زبان های مختلف یک چالش است، اما برای کاربران اکسل اصلاً جای تعجب ندارد.