Adatok elemzése és kezelése az MDX segítségével

Az MDX (Multidimensional Expressions) egy hatékony adatmanipulációs és lekérdező nyelv.

Az MDX-nek köszönhetően a következő lehetőségek állnak a rendelkezésére:

  • Lekérdezés és kimutatás az Essbase kockákban lévő adatok és metaadatok segítségével

  • Adatok beszúrása egy Essbase kockába

  • Adatok exportálása egy Essbase kockából

Az MDX lekérdezés egyetlen MDX utasítás, amely egyetlen kockára alkalmazható, pontosan egy eredményhalmazzal rendelkezik.

Az MDX kimutatás egyetlen MDX lekérdezés, amely a kockakörnyezetben van elmentve. A Smart View alkalmazásból és az Essbase webes felületéről férhet hozzá az MDX kimutatásokhoz.

Az MDX parancsfájl egy .mdx kiterjesztésű fájl, amelyet feltölthet, majd futtathat a Feladatok részből vagy a Smart View alkalmazásból. Csak az MDX beszúrás és exportálás utasítások használhatók az MDX parancsfájlokban. Rácsadat elemzéséhez az MDX parancsfájlok helyett használja az MDX kimutatásokat.

Témakörök:

Adatok elemzése az MDX kimutatásokkal

Az Essbase webes felületén az MDX kimutatások segítségével eltárolhatja és megjelenítheti a lekérdezéseket. A kimutatások létrehozásához szükséges minimális engedély az Adatbázis-kezelői.

Az Eseti elemzés lap használatával történő elrendezésdefiniálás nem mindig a leghatékonyabb módja a kifinomult kimutatások létrehozásának. Ha pontosan tudja, mit szeretne lekérdezni, az MDX segítségével létrehozhat egy lekérdezést a rács feltöltéséhez.

Az MDX kimutatás létrehozásának menete:
  1. Jelentkezzen be az Essbase webes felületére Adatbázis-kezelőként vagy magasabb szereppel.
  2. Navigáljon az Adatok elemzése szakaszra:
    • A Redwood felületen nyissa meg az alkalmazást, nyissa meg az adatbázist (kocka), majd kattintson az Adatok elemzése elemre.
    • A Klasszikus webes felületen bontsa ki az alkalmazást, válasszon ki egy kockát, kattintson a kocka nevétől jobbra látható Műveletek menüre, és válassza az Adatok elemzése lehetőséget.
  3. Az Elemzés nézetben válassza ki a Kimutatások lapot, és kattintson a Létrehozás gombra.
  4. Írja be a kimutatás nevét és a leírását (ez utóbbi nem kötelező).
  5. A Lekérdezés mezőben adjon meg egy, az aktuális kockához megfelelő MDX lekérdezést. Például:
    SELECT
      {([West].children)}
    ON COLUMNS,
      {([Diet].children)}
    ON ROWS
    

    A lekérdezésnek sor- és az oszloptengelyek specifikációit is tartalmaznia kell. Más szóval, a lekérdezés szintaxisának tartalmaznia kell az ON COLUMNS és az ON ROWS specifikációkat is, még akkor is, ha az egyik tengely esetében üres {} halmaz van meghatározva.

    Mivel az Adatok elemzése környezete az aktív kocka, azt javasoljuk, hogy ne adja meg az opcionális kockaspecifikációt (a FROM utasításrészt) az MDX kimutatásban. A FROM utasításrész kihagyása nagyobb rugalmasságot biztosít; a kocka másolása vagy átnevezése esetén a kimutatás működni fog az új kockában.

    A helyettesítő változók támogatottak az MDX lekérdezésekben, a futásidejű helyettesítő változók viszont nem. A futásidejű helyettesítő változók használatához mentse el parancsfájlként az MDX lekérdezést, és futtassa a Smart View szolgáltatásból az Essbase menüszalag Számítás elemének segítségével.

  6. Kattintson az Ellenőrzés gombra az MDX szintaxisának ellenőrzéséhez, majd kattintson a Mentés gombra.
  7. A bal oldali Kimutatások ablaktáblában válassza ki az elmentett kimutatást egy rács feltöltéséhez.

További tudnivalók az MDX használatáról: MDX és MDX lekérdezések írása.

Hozzáférés MDX kimutatásokhoz

A kimutatásokkal való műveletvégzés a kockához való hozzáféréstől függ.

A legalább Adatbázis-hozzáférés alkalmazásszintű szereppel rendelkező felhasználók megjeleníthetik a mások által létrehozott, elmentett MDX kimutatásokat. A felhasználók által látható kimutatásadatok a felhasználó szűrőhozzáférésétől függ.

A mentett kimutatások megjelenítése mellett az Adatbázis-hozzáférési engedéllyel rendelkező felhasználók számos formátumban (HTML, CSV, Excel és JSON) exportálhatnak eredménykészleteket.

Az Adatbázis-hozzáférési engedéllyel rendelkező felhasználók a kimutatást definiáló MDX lekérdezést is láthatják, ha rákattintanak a kimutatás neve melletti Műveletek menüre, és kiválasztják a Nézet lehetőséget.

Ha legalább Adatbázis-kezelő szereppel rendelkezik, ugyanúgy használhatja a kimutatásokat, mint az Adatbázis-hozzáférési engedéllyel rendelkező felhasználók. Emellett szerkesztheti és törölheti a kimutatásokat a Műveletek menü használatával.

Ha Szolgáltatásadminisztrátor, akkor emellett a Végrehajtás mint gomb használatával megszemélyesíthet más felhasználókat, és ellenőrizheti az adathozzáférésüket. Ez hasznos lehet különböző felhasználókhoz rendelt szűrők tesztelésekor.

Példák MDX kimutatásokra

A jelen szakaszban található MDX példák bemutatják az Ön által az MDX kimutatások segítségével végrehajtható speciális elemzéstípusokat, amit nem lehet könnyen elérni az Eseti elemzés nézetben.

Az alábbi példák a Sample Basic kockán való munkavégzéshez lettek tervezve.

Metaadat-kimutatás

A következő példa csak metaadatokat ad vissza (vagyis tagneveket, adatokat viszont nem):

SELECT 
  {[Product].Levels(1).Members} 
ON ROWS, 
  {} 
ON COLUMNS

rács visszaadása:

A kimutatás eredménye a 100-as, 200-as, 300-as és 400-as terméktagokat, illetve a Diétás elemet jeleníti meg

Attribútumkimutatás

A következő példa az oszlopokban attribútumdimenzióból származó tagokat használ:

SELECT 
 [Product].Children 
ON ROWS, 
 [Ounces].Children 
ON COLUMNS 
WHERE {Sales}

rács visszaadása:

A kimutatás eredménye a sorokban a 100-as, 200-as, 300-as és 400-as terméktagokat, illetve a Diétás elemet jeleníti meg. Az oszlopokban láthatók az attribútumtagok: Uncia_32, Uncia_20, Uncia_16 és Uncia_12

Szűrt kimutatás

A következő példa egy szeletelőt (WHERE utasításrész) használ a Kóla lekérdezésének korlátozásához. Emellett a szűrőfüggvény a lekérdezésben lévő 0. szintű piacokat a negatív profittal rendelkezőkre korlátozza.

SELECT
  { Profit } 
ON COLUMNS,
  Filter( [Market].levels(0).members, Profit < 0) 
ON ROWS
WHERE {Cola}

rács visszaadása:

A kimutatás eredménye a sorokban az Oregon, Utah, Nevada, Oklahoma, Louisiana, Ohio, Wisconsin, Missouri és Iowa piactagokat jeleníti meg. Az oszlopokban látható a Profit. Az adatok értékei egyformán negatívak.

UDA-kimutatás

A következő példa a „Fő piac” egy felhasználó által definiált attribútummal (UDA) rendelkező Piac dimenziótagok Termékadatok elmét mutatja be. Egy szeletelő (WHERE utasításrész) korlátozza a lekérdezést, hogy csak az Értékesítés adatait tartalmazza.

SELECT 
  [Product].Children 
ON ROWS, 
  {Intersect(UDA([Market], "Major Market"), [Market].Children)} 
ON COLUMNS 
WHERE {Sales}

rács visszaadása:

A kimutatás eredménye a sorokban a 100-as, 200-as, 300-as és 400-as terméktagokat, illetve a Diétás elemet jeleníti meg. Az oszlopokban a Kelet és Közép fő piacok láthatók.

Adatok beszúrása és exportálása az MDX segítségével

Amellett, hogy hasznos a rácsalapú elemzések számára, az MDX lehetővé teszi a többdimenziós adatok részhalmazának másolását és frissítését is.

Az MDX beszúrás utasításrész segítségével módosíthatja a kockát egy kiszámított (nem fizikai) tag adataival, amely tagot az MDX segítségével definiál.

Az MDX exportálás utasításrész lehetővé teszi, hogy adatrészhalmazként elmentsen és exportáljon lekérdezéseredményeket, melyeket később megtekinthet vagy importálhat.

A beszúrás és exportálás MDX-utasítások elmentett MDX parancsfájlokként futtathatók.

Az MDX beszúrással és exportálással kapcsolatos további információért lásd: MDX beszúrás specifikációk és MDX exportálás specifikációk.

MDX parancsfájlok futtatása

Szükség esetén az MDX parancsfájlok segítségével végrehajthat adatbeszúrás és -exportálás műveleteket.

Rácsadat elemzéséhez használja az MDX kimutatásokat. Lásd: Adatok elemzése az MDX kimutatásokkal.

Az MDX parancsfájlok használatához válasszon ki egy munkafolyamatot:

MDX parancsfájl írása, feltöltése és futtatása

A munkafolyamat segítségével MDX parancsfájlokat írhat egy szövegszerkesztőbe, és feltöltheti azokat az Essbase alkalmazásba.

  1. Írja meg az MDX parancsfájlt egy szövegszerkesztőben, és mentse el .mdx kiterjesztéssel.

  2. Töltse fel az MDX parancsfájlt az alkalmazás vagy a kocka könyvtárába az Essbase webes felületének Fájlok részébe.

  3. Futtassa az MDX parancsfájlt a Feladatok részből, vagy ha a Smart View szolgáltatást használja, akkor az Essbase menüszalag Számítás elemének segítségével.

MDX parancsfájl írása a Karakterlánc-szerkesztőbe és futtatása

A munkafolyamat segítségével MDX parancsfájlokat írhat egy parancsfájlszerkesztőben, majd lefuttathatja azokat a Feladatok menüből.

  1. Az Alkalmazások oldalon nyissa meg az alkalmazást, majd nyissa meg az adatbázist (kocka).

  2. Kattintson a Parancsfájlok, majd az MDX parancsfájlok elemre.

  3. Kattintson a Létrehozás elemre, adja meg a parancsfájl nevét, és kattintson az OK gombra.

  4. Írja meg az MDX parancsfájlt. Egy tagokból álló lista és függvénylista a segítségére lehet.

  5. Ellenőrizze, és mentse el a parancsfájlt, majd zárja be a parancsfájlszerkesztőt.

  6. Futtassa az MDX parancsfájlt a Feladatok részből (lásd: MDX futtatása), vagy ha a Smart View szolgáltatást használja, akkor az Essbase menüszalag Számítás elemének segítségével.

  1. Az Alkalmazások oldalon bontson ki egy alkalmazást és egy kockát.

  2. A kocka Műveletek menüjében kattintson a Vizsgálat elemre.

  3. Kattintson a Parancsfájlok, majd pedig az MDX parancsfájlok elemre.

  4. Kattintson a + gombra egy parancsfájlszerkesztő megnyitásához.

  5. Írja meg az MDX parancsfájlt. Egy tagokból álló lista és függvénylista a segítségére lehet.

  6. Ellenőrizze, és mentse el a parancsfájlt, majd zárja be a parancsfájlszerkesztőt.

  7. Futtassa az MDX parancsfájlt a Feladatok részből (lásd: MDX futtatása), vagy ha a Smart View szolgáltatást használja, akkor az Essbase menüszalag Számítás elemének segítségével.

MDX parancsfájl létrehozása a Cube Designer segítségével és futtatása

A munkafolyamat segítségével MDX parancsfájlokat hozhat létre egy alkalmazás-munkafüzetben, majd lefuttathatja azokat a Feladatok menüből.

  1. Hozzon létre MDX munkalapot egy alkalmazás-munkafüzetben. Lásd: MDX munkalapok használata a Cube Designer alkalmazásban.
  2. A Fájlnév mezőben adjon meg egy fájlnevet.
  3. Az MDX végrehajtása mezőben jelezze, hogy végrehajtódjon-e az MDX a kocka létrehozásakor. Az érvényes értékek az Igen és a Nem.
  4. A Parancsfájl sor alatt adja hozzá az MDX parancsfájlt.
  5. Mentse el az alkalmazás-munkafüzetet.
  6. Építse fel a kockát. Lásd: Alkalmazás és kocka létrehozása a Cube Designer segítségével.
  7. Futtassa az MDX parancsfájlt a Feladatok részből, vagy ha a Smart View szolgáltatást használja, akkor az Essbase menüszalag Számítás elemének segítségével.

MDX parancsfájlokra vonatkozó útmutatások

Kövesse az alábbi útmutatásokat, amikor MDX parancsfájlokkal végez műveleteket.

  • Az MDX parancsfájlok segítségével hajtson végre adatbeszúrás és -exportálás műveleteket.

  • Rácsalapú elemzések esetén az MDX parancsfájlok helyett használja az MDX kimutatásokat.

  • Az MDX parancsfájlok opcionálisan tartalmazhatnak futásidejű helyettesítő változókat.

    • A Smart View szolgáltatásban való alkalmazhatóságuk érdekében a futásidejű helyettesítő változókkal rendelkező MDX parancsfájloknak az XML-szintaxist kell használniuk a SET RUNTIMESUBVARS számítási parancsban, beleértve a következőt is: <RTSV_HINT>.

    • Egy futásidejű helyettesítő változó ahhoz való beállításához, hogy csak a látható adatszeleteket számítsa ki a Smart View szolgáltatásban, adja meg a futásidejű helyettesítő változó értékeként a POV kifejezést, és állítsa az adattípust tag értékre.

    • Amikor az Essbase webes felületén futtatja, az MDX parancsfájlok helyettesítő változókat használhatnak, de futásidejű helyettesítő változókat nem. A futásidejű helyettesítő változók MDX parancsfájlokban való használatához futtassa a parancsfájlokat a Smart View szolgáltatásból az Essbase menüszalag Számítás elemének segítségével.

Helyettesítő változók használata

Példák MDX parancsfájlokra

Az alábbiak példák a Sample Basic kocka esetében, a Feladatok részből vagy a Smart View szolgáltatásból futtatható MDX parancsfájlokra.

MDX beszúrás

Elmentheti ezt az .mdx parancsfájlt, és futtathatja a Feladatok részből, vagy a Smart View szolgáltatás Számítás párbeszédpaneléből.

INSERT "([Measures].[Payroll])" TO "([Measures].[Revised_Payroll])"
INTO [Sample].[Basic]
FROM (
       SELECT 
            {[Measures].[Payroll]} ON COLUMNS,
                {Crossjoin
                  (Crossjoin(Descendants([Year]), 
                   Crossjoin(Descendants([Scenario]),
                  Descendants([Product]))),
                  Descendants([Market]))} ON ROWS
       FROM [Sample].[Basic]
);

A fenti példa feltételezi, hogy korábban már hozzáadott Revised_Payroll mérőszámot a Sample Basic kockához.

MDX exportálás

Elmentheti ezt az .mdx parancsfájlt, és futtathatja a Feladatok részből, vagy a Smart View szolgáltatás Számítás párbeszédpaneléből.

EXPORT INTO FILE "sample01" OVERWRITE
SELECT 
 {[Mar],[Apr]} 
ON COLUMNS,
 Crossjoin({[New York]},
  Crossjoin({[Actual],[Budget]},
     {[Opening Inventory],[Ending Inventory]})) 
ON ROWS
FROM [Sample].[Basic]
WHERE ([100-10])

Miután futtatta a parancsfájlt, a rendszer a következő exportfájlt (sample01.txt) menti el a fájlkatalógus kockakönyvtárába:

Market,Scenario,Measures,Mar,Apr
New York,Actual,Opening Inventory,2041,2108
New York,Actual,Ending Inventory,2108,2250
New York,Budget,Opening Inventory,1980,2040
New York,Budget,Ending Inventory,2040,2170

MDX exportálás futásidejű helyettesítő változóval

Elmentheti ezt az .mdx parancsfájlt, és futtathatja a Smart View szolgáltatás Számítás párbeszédpaneléből.

SET RUNTIMESUBVARS
{
 States = "Massachusetts"<RTSV_HINT><svLaunch>
                    <description>US States</description>
                    <type>member</type>
                    <allowMissing>false</allowMissing>
                    <dimension>Market</dimension>
                    <choice>multiple</choice>
                    </svLaunch></RTSV_HINT>;
};
EXPORT INTO FILE "sample002" OVERWRITE
SELECT
 {[Mar],[Apr]}
ON COLUMNS,
 Crossjoin({&States}, Crossjoin({[Actual],[Budget]},
 {[Opening Inventory],[Ending Inventory]}))
ON ROWS
FROM [Sample].[Basic]
WHERE ([100-10])

Miután futtatta a parancsfájlt, a rendszer a következő exportfájlt (sample002.txt) menti el a fájlkatalógus kockakönyvtárába:

Market,Scenario,Measures,Mar,Apr
Massachusetts,Actual,Opening Inventory,-54,-348
Massachusetts,Actual,Ending Inventory,-348,-663
Massachusetts,Budget,Opening Inventory,-160,-520
Massachusetts,Budget,Ending Inventory,-520,-910