XML for Analysis: Difference between revisions

Content deleted Content added
No edit summary
GreenC bot (talk | contribs)
Reformat 1 archive link. Wayback Medic 2.5 per WP:USURPURL and JUDI batch #26ae
 
(47 intermediate revisions by 37 users not shown)
Line 1:
'''XML for Analysis''' (abbreviated as '''XMLA''') is thean industry standard for data access in analytical systems, such as [[OLAPonline analytical processing]] (OLAP) and [[Datadata Miningmining]]. XMLA is based on other industry standards such as [[XML]], [[SOAP]] and [[HTTP]]. XMLA is maintained by '''XMLA Council''' with [[Microsoft]], [[Oracle Hyperion Solutions Corporation|Hyperion]] and [[SAS Institute|SAS]] being the official XMLA Council founder members.<ref>{{cite web|title=What is XMLA?|url=http://www.xmlforanalysis.com/index.htm}}</ref>
 
==History==
The XMLA specification was first proposed by [[Microsoft]] as a successor for [[OLE DB for OLAP]] in April 2000. By January 2001 it was joined by [[Hyperion Solutions Corporation|Hyperion]] endorsing XMLA. The 1.0 version of the standard was released in April 2001, and in September 2001 the XMLA Council was formed. In April 2002 [[SAS Institute|SAS]] joined Microsoft and Hyperion as founding member of XMLA Council.<ref>{{cite web|title=XML for Analysis gathers steam |url=http://www.olapreport.com/Comment_APIs.htm |url-status=usurped |archiveurl=https://web.archive.org/web/20080528220113/http://www.olapreport.com/Comment_APIs.htm |archivedate=May 28, 2008 }}</ref> With time, more than 25 companies joined with their support for the standard.
 
==API==
XMLA consists of only two [[SOAP]] methods: execute and discover.<ref>{{cite web|title=XML for Analysis Specification|date=30 June 2006 |url=http://msdn.microsoft.com/en-us/library/ms977626.aspx}}</ref> It was designed in such a way to preserve simplicity.
 
* Execute
* Discover
 
===Execute===
Execute method has two parameters:
 
* Command - command to be executed. It can be [[Multidimensional Expressions|MDX]], [[Data Mining Extensions|DMX]] or [[SQL]].
* Properties - [[XML]] list of command properties such as Timeout, Catalog name, etc.
 
The result of Execute command could be ''Multidimensional Dataset'' or ''Tabular Rowset''.
 
===Discover===
Discover method was designed to model all the discovery methods possible in [[OLEDB]] including various schema rowset, properties, keywords, etc. Discover method allows users to specify both what needs to be discovered, and the possible restrictions andor properties.
The result of Discover method is a rowset.
 
 
 
==Query language==
XMLA specifies '''MDXML''' as the query language. In the XMLA 1.1 version, the only construct in MDXML is an [[Multidimensional Expressions|MDX]] statement enclosed in the <Statement> tag.<ref>{{cite web|title=MDX / mdXML |url=http://www.xmlforanalysis.com/mdx.htm |url-status=usurped |archiveurl=https://web.archive.org/web/20080907093211/http://www.xmlforanalysis.com/mdx.htm |archivedate=September 7, 2008 }}</ref>
 
==Example==
Below is an example of XMLA Execute request with MDX query in command.
 
<syntaxhighlight lang="xml">
<pre>
<soap:Envelope>
<soap:Body>
Line 48 ⟶ 43:
</soap:Body>
</soap:Envelope>
</syntaxhighlight>
</pre>
 
==Session management==
Line 56 ⟶ 51:
* EndSession - to end existing session
* UseSession - to use existing session. SessionId attribute previously returned for BeginSession should be used.
 
==Products==
Products which support XMLA fall into two categories:
 
* XMLA Providers - these products provide XMLA service. Typically these are server or middle tier products
* XMLA Consumers - these products can connect to XMLA Providers and consume XMLA. Typically these are client/UI products
* XMLA Libraries - libraries implementing XMLA protocol (client side), allowing to develop XMLA Consumers without taking care of XMLA protocol details.
 
===XMLA Providers===
* [[Essbase|Hyperion Essbase]]
* [[IBM InfoSphere|IBM Infosphere Warehouse Cubing Services]] <ref>{{cite web|title=Infosphere Warehouse Cubing Services XMLA|url=http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/index.jsp?topic=/com.ibm.dwe.cubeserv.doc/topics/c_xmla_provider.html}}</ref>
* [http://www.iccube.com icCube OLAP Server]
* [[Infor]] PM OLAP Server - formerly known as MIS Alea
* [[Intersystems]] DeepSee
* [[Microsoft Analysis Services]]
* [[Mondrian OLAP server]]
* [[Palo (OLAP database)]]
* [[Simba Technologies]] [http://www.simba.com/olap-sdk.htm SimbaProvider XMLA SDK]
 
===XMLA Libraries ===
 
* [http://www.iccube.com/products/iccube-client-library icCube - Java XMLA Client Library]
* [http://olap4j.org olap4j - Java OLAP API with a XML/A client implementation]
* [http://code.google.com/p/xmla4js/ xmla4js - Javascript client implementation for XML/A]
 
==References==
Line 85 ⟶ 56:
 
==External links==
* [https://web.archive.org/web/20060101094229/http://www.mosha.com/msolap/tech.htm#XMLA XMLA resources and links]
* [http://knol.google.com/k/igor-krupitsky/xmla-consumers/3aex3k6xefaih/2 XMLA Consumers]
* [http://www.mosha.com/msolap/tech.htm#XMLA XMLA resources and links]
 
{{Data warehouse}}