AMO olap Test C# generate tsql and mdx】的更多相关文章

通过AMO访问online的cube,生成等值的TSql和mdx 自动生成等值的TSQL和MDX进行Cube测试.其中难度比较大的部分是拼接TSQL. 暂时不处理calculations,只除理metrics和Regular Type的dimension Usage. metric的聚合方法只处理(max,min,sum,count,distinct count) 以下是问题的记录与处理情况. 1.adventureworks示例cube中,会把Date dimension的attributes…
[公告]本博客于2015年10月起不再更新 新博客文章主要发表在商业智能BI社区: http://www.flybi.net/blog/biwork 博客地图自动分类 文章目录方便更好的导航,阅读文章. 分享与下载 微软产品下载大全(操作系统,SQL SERVER,Office)http://www.itellyou.cn/ 微软示例数据库下载  Microsoft Demo Database Download 微软 DEMO  下载     Microsoft Demo Download SQ…
微软 BI ETL 架构设计 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架 如何管理和记录 SSIS 各个 Task 的开始执行时间和结束时间以及 Task 中添加|删除|修改的记录数 微软 BI SSIS 系列 微软BI 之SSIS 系列 - 在 SSIS 中读取 SharePoint List 微软BI 之SSIS 系列 - 利用 SSIS 模板快速开发 SSIS Package 微软BI 之SSIS 系列 - Lookup 组件的使用与它的几种缓存模式 - Full…
PackageRunLog(ExecutionGuid,PackageName,SourceTableName,DestinationTableName,StartTimeUTC,EndTimeUTC,NumberOfRowsMoved,Status,MaxUpdateTime) 记录SSIS包每次的运行信息,何时开始,何时结束,运行状态,从哪个表输送多少条数据到某个表. PQOUNITS : 一个测试框架,存储测试用例,根据要求执行,可以生成测试结果的报告,如果出现错误,及时发现错误. 例如写…
问题 对于DBA或者其他运维人员来说授权一个账户的相同权限给另一个账户是一个很普通的任务.但是随着服务器.数据库.应用.使用人员地增加就变得很枯燥乏味又耗时费力的工作.那么有什么容易的办法来实现这个任务吗? 当然,作为非DBA在测试甚至开发环境也会遇到这种问题,要求授予所有服务器数据库的某个权限给一个人的时候.我们是不是有什么其他办法提高效率? 解决方案 如果这个时候我们网上去搜索解决方案,大多数时候搜到的都是使用T-SQL解决方案,但是这又会产生下面几个小问题: 我们需要到目标服务器上执行这些…
经过周末两天和今天的努力,基本上完成并修复了一些bug并且集成到我的MSBIHelper项目中去,可以进行数据测试了.效果图如下: 可以帮助开发人员快速生成等值的Tsql和mdx查询,辅助测试人员快速完成test cases的开发. 下一步准备开发的功能是进行数据比对,其实我之前有完成一个SSIS的packages,来比对tsql和mdx的数据集,而这个工具生成的刚好是 那个SSIS packages的数据源.下次把那个package贴上来. 有兴趣的读者可以到以下地址下载,绿色软件,无需安装:…
基本概念 维度(Dimension):表示数据的属性,一个维度一般会有一个维表(也可能多个),事实表会有一个字段关联维表. 退化维度:有的维度可以没有维度表,因为这种维度比较简单,没有更多属性,没有必要加一个维度表.这种维度叫退化维度.比如事实表里有一个支付方式字段,只有已确定的有限几种取值,比如 cash(现金).credit(信用卡)等.又比如事实表里已有了一个性别字段,那性别这个维度就不需要一个维表. 维度层次(Hierarchy):维度是可以有层次的,分层次的维度提供了更多的数据粒度选择…
有时候需要从集合中取出特定的成员但是又不能执行遍历操作,这个时候就可以使用 GENERATE 函数来解决这个问题. 根据地区查询每年的销售额 - SELECT NON EMPTY { , NON EMPTY { FROM [Adventure Works] 现在需要查询每年销售额最高的那个月在各个地区的销售情况. WITH SET [Best month per year] AS Generate( [Date].[Calendar].[Calendar Year].MEMBERS, TopCo…
MDX 中最大值和最小值 MDX 中最大值和最小值函数的语法和之前看到的 Sum 以及 Aggregate 等聚合函数基本上是一样的: Max( {Set} [, Expression]) Min( {Set} [, Expression]) 直接看例子,先查询出所有 Sub Category 下的 Reseller Sales Amount. 然后使用 MAX 函数查询出 Sub Category 下最大的 Reseller Sales Amount.在这里查询的范围即 SET 集合是 Sub…
1.1.members和Children的用法. select [Measures].[Internet Sales Count] on columns, [客户].[全名] on rows from [Adventure Works DW] 默认显示的是[全部客户的总销售量],即只有一个数据(前提是这个度量下有多个值) 如果要显示所有客户的销售量,在要全部显示具体的那个轴上加上.members: select [Measures].[Internet Sales Count] on colum…
Separating elements Separating elements is a classic T-SQL challenge. It involves a table called Arrays with strings holding comma-separated lists of values in a column called arr. Run the following code to create the Arrays table, and populate it wi…
有一个数据多维分析的任务: 日志的周UV: APP的收集量及标注量,TOP 20 APP(周UV),TOP 20 APP标注分类(周UV): 手机机型的收集量及标注量,TOP 20 机型(周UV),TOP 20 手机厂商(周UV): 初始的解决方案:Spark读取数据日志,然后根据分析需求逐一进行map.distinct.reduceByKey得到分析结果.但是,这种方案存在着非常大的缺点--重复扫描数据源多次. 1. Pig Pig提供cube关键字做OLAP,将dimension分为了两类:…
参考 SAP给他的客户的帮助<ODBO, BAPI and XMLA - Sap>   SAP BW 提供的查询接口: 接口 查询语言 调用接口 OS平台 客户端开发 ODBO MDX COM(Componet Object Model) protocol windows操作系统 ADOMD+VB/ASP/C++ OLAP BAPI MDX RFC(Remote Function Call)protocol 跨操作系统,且安装了SAP c/c++(RFC library) java(SAP j…
MDX函数(官方顺序) 1.  AddCalculatedMembers (MDX) 返回通过将计算成员添加到指定集而生成的集. 语法: AddCalculatedMembers(Set_Expression) 参数: Set_Expression 返回集的有效多维表达式 (MDX). 默认情况下,MDX在解析集函数时会排除计算成员.AddCalculatedMembers 函数会检查 Set_Expression, 中所指定的集表达式,并包括与该集表达式作用域内所含成员处于同级的计算成员. 此…
当页面有很多MDX语句查询的时候,会发生超时的情况. 解决办法: SQL Analysis Services所在的服务器(OLAP的文件夹下) 找到: msmdpump.ini 将: <ConfigurationSettings> <ServerName>localhost</ServerName> <SessionTimeout>3600</SessionTimeout> <ConnectionPoolSize>100</Co…
本文转自:http://www.olegsych.com/2008/03/how-to-generate-multiple-outputs-from-single-t4-template/ Update: A new version of the code described in this article is available in T4 Toolbox. For details, clickhere. Overview For some code generation tasks, th…
Tuning Methodology When dealing with performance problems, database professionals tend to focus on the technical aspects of the system, such as resource queues, resource utilization, and so on. However, users perceive performance problems simply as w…
一.应用场景 系统初始化的时候 如果没有创建olap数据源需要先创建olap数据源 否则直接获取所有的数据源存放在全局变量datasources里面以便于后续步骤中获取plap-connections 二.代码详细解析 1.olap数据源对象结构 (1) SaikuDatasource - org.saiku.datasources.datasource.SaikuDatasource public SaikuDatasource( String name, Type type, Propert…
1.  启用Ad Hoc Distributed Queries 在使用openrowset/opendatasource前要先启用Ad Hoc Distributed Queries服务,因为这个服务不安全,所以SqlServer默认是关闭的.也就是说: SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource'的访问,因为此组件已作为此服务器安全配置的一部分而被关闭.系统管理员可以…
简介 Saiku成立于2008年,由Tom Barber和Paul Stoellberger研发.最初叫做Pentaho分析工具,起初是基于OLAP4J库用GWT包装的一个前端分析工具.经过多年的演化.重写之后,于2010年,改名为Saiku. OLAP分析 OLAP(On-Line Analytical Processing,联机分析处理)是一个使分析师.管理者和执行者从原始数据中用来快速.一致.交互访问的一种软件技术,从而真实的反映企业的数据情况.OLAP功能特点是动态多维分析整合企业数据.…
一个人力资源咨询集团通过网络爬虫采集手段将多个知名招聘网站上发布的求职和招聘等信息准实时采集到自己的库里,形成一个数据量浩大的招聘信息库,跟踪全国招聘和求职的行业.工种.职位.待遇等信息,并通过商业智能系统,开展职业职位供求及趋势等相关统计分析.这家公司竟然用SSAS OLAP Cube多维数据集容纳如此数量级的数据,广告维成员包含了每一个广告条目.该商业智能团队的开发人员咨询如何用MDX求解薪水中位数.四分位数(Median,Quartile)等. 以下是对Median.Q1.Q3等问题的MD…
1.启用Ad Hoc Distributed Queries 在使用openrowset/opendatasource前搜先要启用Ad Hoc Distributed Queries服务,因为这个服务不安全所以SqlServer默认是关闭的 启用Ad Hoc Distributed Queries的方法 SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作…
第一章 看了本书的第一章,总体一个印象,废话真多.话不多说:整理书中知识点,实践出真理! 知识点:MDX语法:简单的函数介绍; 首先语法网上流传的很多,读者应该具备cube(多维数据集)的知识基础,我这里就做简单说下:MDX是支持表达式语言和查询语言的:维度!多维数据集中的维度具有一个或者多个层级的,并且每个层次级别包含一个或多个级别.(例如:Date维度的Calendar层次结构包含下面的级别-Calendar Year.Calendar Semester.Calendar Month).成员…
关于MDX MDX (Multi Dimensional eXpression language) 是非常强大的工具,可以将你的多维数据库/cube 发挥到极致. 本文会覆盖MDX基础,并且希望能使你对MDX查询语法,MDX的强大原因,以及如何在你的B.I. 方案中使用MDX进行计算 有充分的认识 . 就 MSDN 上的定义, MDX的目的就是为了访问多维数据更方便 . 用MDX来查看各种类别(tegories)和聚合(aggregated)的数据再合适不过.  你可能会有这样的疑问,”为什么不…
OLAP(在线分析处理)这个名词是在1993年由E.F.Codd提出来的,只是,眼下市场上的主流产品差点儿都是在1993年之前就已出来,有的甚至已有三十多年的历史了.OLAP产品不少,本文将主要涉及Cognos(Powerplay).Hyperion (Essbase).微软(Analysis Service)以及MicroStrategy几大厂商的产品. 快枪手  VS  多面手 单纯从成本角度考虑,微软的产品算是最能节省成本的,Cognos和MicroStrategy则在同一水平线,都比微软…
这里向大家介绍一个新的生成T-SQL脚本的SQL Server命令行工具:mssql-scripter.它支持在SQL Server.Azure SQL DB以及Azure SQL DW中为数据库生成CREATE和INSERT T-SQL脚本. Mssql-scripter是一个跨平台的命令行工具,功能等同于SQL Server Management Studio中的Generate and Publish Scripts Wizard. 咱们能够在Linux.macOS和Windows上使用它…
MDX语句的特点: 大小写不分.members等于Members;downloads等于Downloads 维度的统计量指定要选择准确.downloads等于[Downloads] []可以少,不能多.members外部不能有[],否则报错 TopCount函数格式. members是属性中所有成员的枚举. 同一维度下的属性组合,用Hierarchize: SELECT NON EMPTY {[Measures].[Downloads]} ON COLUMNS, NON EMPTY {Hiera…
Saiku查询设定:Saiku查询数据时,每次都是全量查询的,我们现在需要默认展示近一周的数据. 通过编写使用MDX表达式进行过滤 通过编写MDX表达式,添加新的指标信息对一周以内的数据进行标识 (其实我也想添加新的维度信息,但是好像不生效,所以就用指标了) /** 检测日期的差值,小于7 */ IIf(DateDiff("d",CDate([SaikuUseDate].[SaikuUseDate].CurrentMember.Name), now())> 7, "ye…
一.  OLAP的基本概念 OLAP(On-Line Analysis Processing)在线分析处理是一种共享多维信息的快速分析技术:OLAP利用多维数据库技术使用户从不同角度观察数据:OLAP用于支持复杂的分析操作,侧重于对管理人员的决策支持,可以满足分析人员快速.灵活地进行大数据复量的复杂查询的要求,并且以一种直观.易懂的形式呈现查询结果,辅助决策. 二.  OLAP的基本内容 (1)变量(度量) 变量是数据度量的指标,是数据的实际意义,即描述数据“是什么”.像示例中的人数. (2)维…
递归的应用有时是非常重要的,特别在迭代一个集合的时候.为什么这么说呢?原因在于迭代在MDX中的使用是基于集合函数的,像 GENERATE() 它们都需要遍历整个集合.但是如果这个集合非常的庞大,我们仅仅只需要在集合中查找一部分特定的东西,那么能够在找到需要的内容时就立刻停止的话,这就可以提高不少效率了. 下面这个查询返回4个财年以及它们总共的 Order Count - SELECT {, NON EMPTY {Descendants([Date].[Fiscal Weeks].[All Per…