现在的位置: 首页 > 综合 > 正文

XML 任何产品的流行趋势之 XMLA

2011年10月07日 ⁄ 综合 ⁄ 共 1859字 ⁄ 字号 评论关闭
呵呵,最近忙着搞定签证的事情,blog 更新有点慢,不过visa还是拿到了

我记得以前,.NET 刚出来的时候,有一个很大的宣传点,说 XML 怎么怎么好,而 .net 是 built-in support。ms 的市场人员都会动不动就说 dataset 怎么样很容易就dump到一个xml文件,呵呵。

上次看一个 .NET Show 关于平台的未来http://msdn.microsoft.com/theshow/episode.aspx?xml=theshow/en/episode050/manifest.xml,邀请了一些架构师,msr 的一些教授讨论未来的平台应该是什么样的。会讲到以后的平台和应用都会包含很丰富的schema,来保露和利用彼此的服务。而很关键的一点就是xml。 xml 有一个很形象的比喻,说跟其他标准一样。任何标准都可以比作一个标准的盒子。这个盒子可以装特定的东西,用于特定的用途。 而 xml 同样是一个标准,也是一个盒子。只不过这个盒子可大可小,里面具体装什么东西还可以通过schema 去配置,哈哈。

今天跟同事一起解决了一个关于xmla 的问题。所谓xmla其实就是xml for analysis, 当然目前有n多xml的词组。axml,mxml,.... 本质上都是对xml的一个具体应用。

xmla 其实本质上说可以通过xml 来访问SQL server 的分析服务。在2000 的时候,还是需要装一个sdk。2005已经内置了集成。

xmla 也是很多bi平台一起协商制定的一个标准,包括sas hyperion等,有一个组织网站 xmla.org

主要有点是客户端可以使用xml 技术来访问系统的服务,这样就不需要在client装一个oledbclient或者其他的driver。

今天碰到的问题就是如何确定sqlderver xmla 的服务endpoint,呵呵。2000的时候,就是一个localhost/xmla/msisapi.dll ,跟 biztalk 的httpadapter 一样,写一个isapi来handle所有的请求。

2005 有一点不一样,不再是msisapi.dll 这个文件,而是 msmdpump.dll.
google 了半天,这个网站给了一个比较详细的定位endpoint 的方法
http://www.mosha.com/msolap/faq.htm

  1. Create a virtual directory pointing to the location of msmdpump.dll. Note that if you wish to copy this dll into a new location, you will also need to copy resources folder, since it depends on the resource files. Also copy xmlrw.dll and xmlrwbin.dll into the same directory.
  2. Enable "Scripts and Executables" on the virtual directory
  3. Set up security on the virtual directory
  4. Create a mapping from ".dll" to msmdpump.dll in the properties of the virtual directory (Configuration -> Application Mappings -> .dll = msmdpump.dll). This will allow clients to specify URL only in the Data Source property, and not to combine it with /msmdpump.dll suffix.
  5. For Windows 2003 server, you may need to explicitly enable the msmdpump.dll as an "Allowed" ISAPI DLL.
  6. You may need to explicitly change the ACL for this folder: c:\Program Files\Microsoft SQL Server\MSSQL.1\OLAP\Bin\isapi and for the msmdpump.dll file inside the folder. The updated ACL should allow Read permissions for the identity of the application pool that is loading the pump (by default, Network Service)

抱歉!评论已关闭.