Analiziranje i upravljanje podacima putem MDX-a

MDX (višedimenzijski izrazi) moćan je jezik za manipuliranje podacima i postavljanje upita.

MDX vam omogućava sljedeće:

  • Postavljanje upita i izvješćivanje za podatke i metapodatke iz Essbase kocki

  • Umetanje podataka u Essbase kocku

  • Izvoz podataka iz Essbase kocke

MDX upit jedna je MDX naredba s točno jednim skupom rezultata koji se primjenjuje na jednu kocku.

MDX izvješće je jedan MDX upit spremljen u kontekstu kocke. MDX izvješćima možete pristupati putem izbornika Smart View i web-sučelja Essbase.

MDX skripta je datoteka s datotečnim nastavkom .mdx koju možete učitavati i pokretati iz izbornika Zadaci ili Smart View. U MDX skriptama možete upotrebljavati samo naredbe MDX Insert i Export. Za analizu podataka rešetke umjesto MDX skripti upotrijebite MDX izvješća.

Teme:

Analiziranje podataka MDX izvješćima

Možete spremati i prikazivati upite u web-sučelju Essbase pomoću MDX izvješća. Minimalna potrebna dozvola za izradu izvješća je upravitelj bazama podataka.

Definiranje izgleda putem kartice Ad-hoc analiza možda nije uvijek najučinkovitiji način za izradu sofisticiranog izvješća. Ako ne znate što točno želite pretražiti, putem MDX-a možete izraditi upit za popunjavanje rešetke.

Za izradu MDX izvješća:
  1. Prijavite se u web-sučelje Essbase kao upravitelj bazama podataka ili viša uloga.
  2. Prijeđite na stranicu Analiziraj podatke:
    • U Redwood sučelju otvorite aplikaciju, otvorite bazu podataka (kocku) i pritisnite Analiziraj podatke.
    • U klasičnom web-sučelju proširite aplikaciju, odaberite kocku, pritisnite izbornik Akcije desno od naziva kocke i odaberite Analiziraj podatke.
  3. U pregledu analize odaberite karticu Izvješća i pritisnite Stvori.
  4. Unesite naziv izvješća te, ako želite, i opis.
  5. U polje Upit unesite MDX upit relevantan za trenutačnu kocku. Na primjer:
    SELECT
      {([West].children)}
    ON COLUMNS,
      {([Diet].children)}
    ON ROWS
    

    Upit mora sadržavati specifikacije osi retka i stupca. Drugim riječima, sintaksa upita mora sadržavati specifikacije i za ON COLUMNS i za ON ROWS, čak i ako je za jednu os definiran tek prazni skup {}.

    Budući da je kontekst analize podataka aktivna kocka, preporučujemo da izostavite neobaveznu specifikaciju kocke (uvjet FROM) iz MDX izvješća. Izostavljanje iz uvjeta FROM omogućava veću fleksibilnost — u slučaju kopiranja ili preimenovanja kocke, izvješće ćete moći upotrebljavati u novoj kocki.

    Zamjenske varijable podržane su u MDX izvješćima, no izvršne zamjenske varijable nisu podržane. Želite li upotrijebiti izvršne zamjenske varijable, MDX upit spremite kao skriptu i pokrenite je u značajki Smart View tako da upotrijebite opciju Izračunaj na Essbase traci.

  6. Pritisnite Provjeri valjanost kako biste provjerili MDX sintaksu i pritisnite Spremi.
  7. Na zaslonu Izvješća s lijeve strane odaberite spremljeno izvješće za iscrtavanje rešetke.

Više o uvjetu MDX potražite u odjeljku MDX i Pisanje MDX upita.

Pristup MDX izvješćima

Način rada s izvješćima ovisi o pristupu kocki.

Korisnici minimalno s ulogom pristupa bazama podataka na razini aplikacije mogu prikazivati spremljena MDX izvješća koja su izradili drugi korisnici. Podaci koje korisnik vidi u izvješću ovise o filtriranom pristupu tog korisnika.

Osim prikazivanja spremljenih izvješća, korisnici s pristupom bazama podataka mogu izvoziti skupove rezultata u raznim formatima: HTML, CSV, Excel i JSON.

Korisnici s pristupom bazama podataka mogu pregledavati MDX upite koji definiraju izvješće tako da odaberu izbornik Akcije pored naziva izvješća i odaberu Pregled.

Ako imate najmanje ulogu upravitelja bazama podataka, izvješća možete upotrebljavati na isti način kao i korisnici s pristupom bazama podataka. Izvješća možete uređivati i brisati izvješća putem izbornika Akcije.

Ako ste administrator servisa, pomoću gumba Izvrši kao možete imitirati druge korisnike i provjeravati njihovu mogućnost pristupa podacima. To može biti korisno za testiranje filtara dodijeljenih raznim korisnicima.

Primjeri MDX izvješća

MDX primjeri iz ovog odjeljka demonstriraju posebne vrste analiza koje možete izvršiti, upotrebom MDX izvješća, koja nije jednostavno ostvariti u prikaz Ad-hoc analize.

Sljedeći su primjeri dizajnirani za rad na kocki Sample Basic.

Izvješće metapodataka

Sljedeći primjer vraća samo metapodatke (nazive članova bez podataka):

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

vraćanje rešetke:

Izvješće prikazuje članove proizvoda 100, 200, 300, 400 i Diet

Izvješće o atributu

Sljedeći primjer u stupcima upotrebljava članove iz dimenzije atributa:

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

vraćanje rešetke:

Izvješće u recima prikazuje članove proizvoda 100, 200, 300, 400 i Diet. U stupcima se prikazuju članovi atributa: Ounces_32, Ounces_20, Ounces_16 i Ounces_12

Filtrirano izvješće

U sljedećem primjeru alat za isječke (uvjet WHERE) upotrijebljen je tako da upit ograničava na Cola. Nadalje, funkcija filtra ograničava tržišta nulte razine iz upita na ona s negativnom dobiti.

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

vraćanje rešetke:

Izvješće u recima prikazuje članove tržišta Oregon, Utah, Nevada, Oklahoma, Louisiana, Ohio, Wisconsin, Missouri i Iowa. U stupcima se prikazuje dobit. Sve vrijednosti podataka su negativne.

KDA izvješće

Sljedeći primjer prikazuje podatke proizvoda za članove tržišne dimenzije koji imaju korisnički definirani atribut (KDA) "Veliko tržište". Alat za isječke (uvjet WHERE) ograničava upit tako da uključuje samo podatke prodaje.

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

vraćanje rešetke:

Izvješće u recima prikazuje članove proizvoda 100, 200, 300, 400 i Diet. U stupcima se prikazuju velika tržišta Istok i Centralno.

Umetanje i izvoz podataka putem MDX-a

Osim što je koristan za analize na temelju rešetke, MDX omogućava vam i da kopirate podskupove višedimenzionalnih podataka te da ih ažurirate.

Uvjet MDX Insert omogućava vam da ažurirate kocku podacima ili iz izračunatog člana (koji nije fizički) definiranog putem MDX-a.

Uvjet MDX Export omogućava vam da spremite rezultate upita i izvezete ih kao podskupove podataka koje kasnije možete pregledati ili uvesti.

MDX naredbe Insert i Export mogu se pokrenuti kao spremljene MDX skripte.

Više o naredbama MDX Insert i Export potražite u odjeljcima Uvjet MDX Insert i Uvjet MDX Export.

Pokretanje MDX skripti

MDX skripte upotrijebite ako morate izvršavati operacije umetanja ili izvoza podataka.

MDX izvješća upotrijebite za analizu podataka rešetke. Pogledajte Analiziranje podataka MDX izvješćima.

Za upotrebu MDX skripti odaberite tijek rada:

Pisanje, učitavanje i pokretanje MDX skripte

Ovaj tijek rada upotrijebite kako biste MDX skripte napisali u uređivaču teksta i zatim ih učitali u Essbase.

  1. MDX skriptu napišite u uređivaču teksta i spremite je s datotečnim nastavkom .mdx.

  2. MDX skriptu učitajte u direktorij aplikacije ili kocke pod Datoteke u web-sučelju servisa Essbase.

  3. Pokrenite MDX skriptu iz Zadataka ili na izborniku Smart View odaberite Izračunaj na Essbase traci.

MDX skriptu napišite u uređivaču za skripte i pokrenite je

Ovaj tijek rada upotrijebite za zapisivanje MDX skripti u uređivač skripta u kocki te ih pokrenite iz odjeljka Zadaci.

  1. Na stranici Aplikacije otvorite aplikaciju i bazu podataka (kocku).

  2. Pritisnite Skripte te pritisnite MDX skripte.

  3. Pritisnite Stvori, unesite naziv skripte i pritisnite U redu.

  4. Napišite MDX skriptu. Pomoći će vam stablo članova i popis funkcija.

  5. Provjerite valjanost skripte i spremite je, a zatim zatvorite uređivač skripti.

  6. Pokrenite MDX skriptu iz Zadataka (pogledajte Pokretanje MDX-a) ili, ako upotrebljavate značajku Smart View, upotrijebite Izračunaj na Essbase traci.

  1. Na stranici Aplikacije proširite aplikaciju i kocku.

  2. Na izborniku s akcijama za kocku pritisnite Provjeri.

  3. Pritisnite Skripte, a zatim pritisnite MDX skripte.

  4. Pritisnite + kako biste otvorili uređivač skripti.

  5. Napišite MDX skriptu. Pomoći će vam stablo članova i popis funkcija.

  6. Provjerite valjanost skripte i spremite je, a zatim zatvorite uređivač skripti.

  7. Pokrenite MDX skriptu iz Zadataka (pogledajte Pokretanje MDX-a) ili, ako upotrebljavate značajku Smart View, upotrijebite Izračunaj na Essbase traci.

Izrada i pokretanje MDX skripte u alatu Cube Designer

Ovaj tijek rada upotrijebite za izradu MDX skripti pomoću aplikacijske radne knjige te ih pokrenite iz odjeljka Zadaci.

  1. U aplikacijskoj radnoj knjizi izradite MDX radni list. Pogledajte Upotreba MDX radnih listova u alatu Cube Designer.
  2. Dodajte naziv datoteke u polje Naziv datoteke.
  3. U polju Izvrši MDX označite želite li izvršiti MDX u vrijeme stvaranja kocke. Valjani su unosi Da i Ne.
  4. Ispod stavke Skripta dodajte MDX skriptu.
  5. Spremite aplikacijsku radnu knjigu.
  6. Izradite kocku. Pogledajte Izrada aplikacije i kocke u alatu Cube Designer.
  7. Pokrenite MDX skriptu iz Zadataka ili, ako upotrebljavate značajku Smart View, upotrijebite Izračunaj na Essbase traci.

Smjernice za MDX skripte

Pratite sljedeće smjernice kad radite s MDX skriptama.

  • MDX skripte upotrijebite za izvođenje operacija umetanja ili izvoza podataka.

  • Za analizu rešetke mjesto MDX skripti upotrijebite MDX izvješća.

  • MDX skripte mogu sadržavati i izvršne zamjenske varijable.

    • Kako bi se mogle upotrebljavati u značajki Smart View, MDX skripte s izvršnim zamjenskim varijablama moraju upotrebljavati XML sintaksu unutar izračunske naredbe SET RUNTIMESUBVARS, uključujući <RTSV_HINT>.

    • Kako biste izvršnu zamjensku varijablu postavili tako da izračunava samo vidljivi odsječak podataka u značajci Smart View, vrijednost izvršne zamjenske varijable postavite na Perspektiva, a vrstu podataka postavite na član.

    • Kad se pokrenu iz web-sučelja servisa Essbase, MDX skripte mogu upotrijebiti zamjenske varijable, no ne i izvršne zamjenske varijable. Želite li u MDX skriptama upotrijebiti izvršne zamjenske varijable, skripte morate pokrenuti iz značajke Smart View putem opcije Izračunaj na traci servisa Essbase.

Upotreba zamjenskih varijabli

Primjeri MDX skripta

U nastavku su primjeri MDX skripta koje možete pokrenuti za kocku Sample Basic iz Zadataka ili u značajki Smart View.

MDX Insert

Tu .mdx skriptu možete spremiti i pokrenuti je iz Zadataka ili dijaloškog okvira Izračun u značajki Smart View.

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]
);

Prethodni primjer pretpostavlja kako ste prethodno dodali mjeru Revised_Payroll u Sample Basic.

MDX izvoz

Tu .mdx skriptu možete spremiti i pokrenuti je iz Zadataka ili dijaloškog okvira Izračun u značajki Smart View.

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])

Nakon što pokrenete skriptu, datoteka izvoza sample01.txt spremit će se u direktorij kocke unutar kataloga datoteka:

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 izvoz putem izvršne zamjenske varijable

Tu .mdx skriptu možete spremiti i pokrenuti je iz dijaloškog okvira Izračun u značajki Smart View.

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])

Nakon što pokrenete skriptu, datoteka sample002.txt spremit će se u direktorij kocke unutar katalogu datoteka:

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