XML for Analysis
XML for Analysis (XMLA) er en industristandard for dataaksess i analytiske systemer, som for eksempel online analytisk prosessering (OLAP) og datautvinning. XMLA er igjen basert på andre industristandarder som XML, SOAP og HTTP. XMLA vedlikeholdes av XMLA Council som består av Microsoft, Hyperion og SAS Institute som også grunnla XMLA Council.
Historie
[rediger | rediger kilde]XMLA-spesifikasjonen ble først foreslått av Microsoft som en etterfølger for OLE DB for OLAP i april 2000. I januar 2001 begynte Hyperion også å støtte XMLA. 1.0-versjonen av standarden ble utgitt i 2001 april, og i 2001 september ble XMLA Council dannet. I 2002 april ble SAS også med i XMLA Council. [1] Med tiden har mer enn 25 selskaper sluttet seg til standarden.[trenger referanse]
API
[rediger | rediger kilde]Programmeringsgrensesnittet til XMLA består av kun av de to SOAP-metodene execute og discover,[2] og ble designet slik for å være enkel.
Execute
[rediger | rediger kilde]Execute-metoden har to parametre:
- Command: Kommandoen som skal utføres (dette kan være MDX, DMX eller SQL)
- Properties: En XML-liste over kommandovalg, som timeout, katalognavn, og så videre
Resultatet av en execute-kommando kan være et flerdimensjonalt datasett eller tabulært radsett.
Discover
[rediger | rediger kilde]Discover-metoden ble designet for å modellere alle de ulike utforskningsmetodene som er mulig i OLEDB, inkludert ulike skjemaradsett, egenskaper, nøkkelord, og så videre. Discover-metoden lar brukerne spesifisere både hva som skal oppdages og mulige restriksjoner eller egenskaper. Resultatet av Discover-metoden er et radsett.
Spørrespråk
[rediger | rediger kilde]XMLA spesifiserer MDXML som spørrespråk. I XMLA 1.1-versjonen er den eneste konstruksjonen i MDXML en MDX-setning innenfor <Statement>-taggen.[3]
Eksempel
[rediger | rediger kilde]Nedenfor er et eksempel på en XMLA Execute-forespørsel med MDX-spørring i kommandoen.
<soap:Envelope>
<soap:Body>
<Execute xmlns="urn:schemas-microsoft-com:xml-analysis">
<Command>
<Statement>SELECT Measures.MEMBERS ON COLUMNS FROM Sales</Statement>
</Command>
<Properties>
<PropertyList>
<DataSourceInfo/>
<Catalog>FoodMart</Catalog>
<Format>Multidimensional</Format>
<AxisFormat>TupleFormat</AxisFormat>
</PropertyList>
</Properties>
</Execute>
</soap:Body>
</soap:Envelope>
Sesjonshåndtering
[rediger | rediger kilde]XMLA har en sesjonstilstand som vedlikeholdes gjennom forhåndsdefinerte SOAP-meldingshoder:
- BeginSession: For å starte en ny økt
- EndSession: For å avslutte eksisterende økt
- UseSession: For å bruke eksisterende økt (SessionId-attributtet tidligere returnert for BeginSession skal brukes)
Referanser
[rediger | rediger kilde]- ^ «XML for Analysis gathers steam». Arkivert fra originalen 28. mai 2008.
- ^ «XML for Analysis Specification».
- ^ «MDX / mdXML». Arkivert fra originalen 7. september 2008.