DAX | |
---|---|
Semantiikka | kaavamainen, toiminnallinen , verkkoaluekohtainen |
Kieliluokka | kyselyn kieli |
Esiintyi | 2010 |
Tekijä | Jeffrey Wang kehitystiimi |
Kehittäjä | Microsoft |
Vapauta | Syyskuu 2018 (kuukausijulkaisut) (2018) |
Tyyppijärjestelmä | Dynaaminen |
Tärkeimmät toteutukset | Microsoft Power BI Desktop , Microsoft Analysis Services , Microsoft Excel |
Vaikutettu | Microsoft Excel |
vaikutti | Microsoft Power BI , Microsoft Analysis Services , Microsoft Excel |
Lisenssi | n/a |
Alusta | x86-64, x86-32 |
OS | Microsoft Windows |
DAX ( englanniksi Data Analysis eXpressions - lausekkeet tietojen analysointiin ) on Microsoftin kehittämä ja ylläpitämä kaavamainen toiminnallinen kyselykieli lausekkeiden muodostamiseen ja tietojen poimimiseen, jotka sijaitsevat taulukkomallissa - datan esitysmallissa, joka on ideologisesti samanlainen kuin moniulotteinen OLAP - malli. DAX-kysely tai lauseke muistuttaa Excel -kaavojen syntaksia , joissa tiettyjä kielifunktioita kutsutaan, mutta toisin kuin Excel, se toimii joko tietotaulukon kokonaisilla sarakkeilla kerralla tai osalla näistä sarakkeista. Toisin kuin Excel, datataulukon missä tahansa solussa olevien tietojen osoittaminen DAX:n avulla on mahdotonta, mikä tuo kielen lähemmäksi SQL :ää tai MDX :ää .
Se on yksi kolmesta Microsoftin BI -järjestelmien rakentamiskonseptin avainelementistä yhdessä ETL - työkalujen Power Query ja Power View -visualisointialijärjestelmän kanssa . DAX:n käyttö on rojaltivapaata.
Koska DAX:n luojat saivat inspiraationsa Excelin kaavasyntaksista [1] , mikä tahansa DAX-kysely voidaan esittää merkkijonona. Riippujen palautukset, välilyönnit ja sarkaimet kyselyelementtien välillä ohitetaan, ja monirivisiä kyselyjä käytetään vain koodin lukemisen helpottamiseksi.
Esimerkki uuden suuren luomisesta (analogisesti uuden ohjelmointikielien funktion kanssa), joka palauttaa eilisen päivämäärän:
Вчерашняя дата = TODAY () - 1DAX:n PowerPivot for Excel -toteutus käyttää arvoa ":=" määritysinfix -osoitteena "="":n sijaan. Muu osa syntaksista pysyy ennallaan. SSAS : n DAX-kyselyä edeltää EVALUATE. Muissa toteutuksissa (esimerkiksi PowerPivot for Excel, Power BI) avainsanaa EVALUATE, samoin kuin monia muita avainsanoja ( DEFINE, MEASURE, GROUP BY, ORDERja vastaavia) ei käytetä käyttöliittymässä, ja niitä käytetään automaattisesti.
Kyselyn tai lausekkeen tulos voi olla taulukko tai yksittäinen skalaariarvo. Yli kaksisataa sisäänrakennettua kielitoimintoa on jaettu seuraaviin ryhmiin:
Kielen syntaksi on osittain lokalisoitu: kielifunktioiden nimet kirjoitetaan aina englanniksi ( ABS, AVERAGE, BLANK, NOW, TODAY, SUMja niin edelleen), ja desimaalierotin ja funktionerotin riippuvat käyttöjärjestelmän alueesta , esimerkiksi englanninkielisessä versiossa a pistettä käytetään desimaalierottimena ja pilkkua funktion erottimena (jos pyynnössä on useampi kuin yksi funktio), ja venäläisessä lokalisoinnissa desimaalierottimena käytetään oletusarvoisesti pilkkua ja puolipistettä (“; ”) käytetään erottamaan toimintoja saman pyynnön tai toimintoparametrien sisällä.
Kielen ominaisuus on varmistaa datakyselyiden korkea suorituskyky ja keskittyä paikalliseen laskentaan ( esim . in-memory computing ), jonka ansiosta kyselyn suorittaminen nopeutuu ja BI - raporttien elementtien kanssa on mahdollista olla vuorovaikutuksessa. Näiden tietojen pohjalta rakennetaan kojelaudat , joissa on vuorovaikutteisen yksityiskohtien lataamisen ( drill-down ) toiminnot, kysymys-vastaus-rajapinnat ja lukuisia muita vastaavia työkaluja.
DAX ei ole ohjelmointikieli. DAX on ensisijaisesti kaavakieli sekä kyselykieli. DAX:n avulla voit määrittää mukautettuja laskelmia lasketuille sarakkeille, mitoille, lasketuille taulukoille, laskentaryhmille, mukautetuille muotomerkkijonoille ja suodatinlausekkeille roolipohjaisessa suojauksessa taulukkomalleissa. Samaa Analysis Services -moottoria taulukkomalleille käytetään myös Power BI:ssä ja Power Pivot for Excelissä. Power BI käyttää myös DAX:ia ehdollisen muotolausekkeen ja muiden visuaalisten komponenttien dynaamisten ominaisuuksien luomiseen. [3]
Toteutettaessa saraketietojen muistiin tallennuksen tekniikkaa , jota käytetään "moottoreissa" xVelocity (vertiPaq), vaadittiin kyselykieli, joka mahdollistaisi taulukkotietojen sarakkeisiin tallennettujen tietojen käsittelyn (kuten MDX-mitoissa). Toisaalta kielen tulisi olla syntaktisesti samanlainen kuin Excelin kaavakieltä, joka vuosiin 2008-2009 oli tuttu valtaosalle data-analyysiin osallistuvista yrityskäyttäjistä. DAX:n samankaltaisuus lokalisoimattomaan, englanninkieliseen Excel-kaavakieleen on kuitenkin enemmän markkinointitemppu kuin todellinen tarve yksirivisille kyselyille.
Koska kyselyitä tehtiin muistissa oleville tiedoille eikä I/O :ta tarvittu , uusi kieli saattoi jättää huomioimatta useita MDX/SQL:ssä [4] käytettyjä kyselyn optimointimenetelmiä , mikä johti kompakteihin kyselyihin, nopeampaan kehitykseen ja mahdollisesti parempaan suorituskykyyn kuin MDX/SQL.
Vuonna 2010 DAX integroitiin taulukkotietomallin kanssa SSAS - versioon 2012 [5] ja Microsoft Excel 2010 Professionalille julkaistiin lisäosa , jonka versioksi tuli Professional Plus.
Kokeilu tunnustettiin onnistuneeksi, koska myöhemmin Microsoft rakensi DAX-tuen kaikkiin tuotteisiinsa Microsoft Analysis Services -sarjan Enterprise and Business Intelligence -versioissa (SQL Server 2014, SQL Server 2016, SQL Server 2017) [6] ja Microsoftin laajennettuihin versioihin. Excel Windows- alustalle (Excel 2013, Excel 2016) sekä pilvitoteutukset Azure- alustalle [ 7] [8] .
Alkuvuodesta 2015 julkaistiin Power BI -sarjan ensimmäinen tuote - Power BI Designer, joka integroi kaikki "Power"-tekniikat, jotka sisältyivät lisäosien muodossa tai muuten integroitiin Exceliin - PowerPivot, Power Query, Power View ja Power Maps. Vuoden 2015 lopussa tämä integroitu tuote muutti nimensä Power BI Desktopiksi, ja siitä lähtien se on ollut rojaltivapaa henkilökohtaiseen käyttöön.
Kyselykielet | |
---|---|