saiku- 通过 saiku 的 DEMO 分析 connection

示例:FOODMART

connection:        foodmart
catalog:           FoodMart
schema:            FoodMart
cube:            Sales/HR/Sales 2/.../

=========================== Cube 1 :Sales ==============================
关注三个属性:【Dimensions】、【measures】、【properties】

【Dimensions:5个】
[[Customer], [Product], [Promotion], [Store], [Time]]

(1)
name:Customer
hierarchies:[[Customer].[Customers], [Customer].[Education Level], [Customer].[Gender], [Customer].[Marital Status], [Customer].[Yearly Income]]

(2)
name:Product
hierarchies:[[Product].[Products]]

(3)
name:Promotion
hierarchies:[[Promotion].[Media Type], [Promotion].[Promotions]]

(4)
name:Store
hierarchies:[[Store].[Stores], [Store].[Store Size in SQFT], [Store].[Store Type]]

(5)
name:Time
hierarchies:[[Time].[Time], [Time].[Weekly], [Time].[Date Only]]

【measures:8个】

(1)
name:Unit Sales
uniqueName:[Measures].[Unit Sales]
measureGroup: Sales
dimensionUniqueName:[Measures](其他一样)
hierarchyUniqueName:[Measures](其他一样)
levelUniqueName:[Measures].[MeasuresLevel](其他一样)

(2)
name:Store Cost
uniqueName:[Measures].[Store Cost]
measureGroup: Sales

(3)
name:Store Sales
uniqueName:[Measures].[Store Sales]
measureGroup: Sales

(4)
name:Sales Count
uniqueName:[Measures].[Sales Count]
measureGroup: Sales

(5)
name:Customer Count
uniqueName:[Measures].[Customer Count]
measureGroup: Sales

(6)
name:Promotion Sales
uniqueName:[Measures].[Promotion Sales]
measureGroup: Sales

(7)
name:Profit
uniqueName:[Measures].[Profit]
measureGroup: null

(8)
name:Profit Growth
uniqueName:[Measures].[Profit Growth]
measureGroup: null

【properties】

{
org.saiku.query.explain=true,//解释
org.saiku.connection.scenario=false,//场景
saiku.olap.query.drillthrough=true//钻取
}

=========================== Cube 2 : HR ==============================

【Dimensions:5个】
[[Actual VS Budget], [Department], [Employee], [Store], [Time]]

(1)
name:Actual VS Budget
hierarchies:[[Actual VS Budget].[Type]]

(2)
name:Department
hierarchies:[[Department].[Department], [Department].[Department Description]]

(3)
name:Employee
hierarchies:[[Employee].[Employees], [Employee$Closure].[Employee$Manager Id$Parent], [Employee].[Position], [Employee].[Manager Id], [Employee].[Employee Id], [Employee].[Store Id], [Employee].[Store Type], [Employee].[Pay Type], [Employee].[Management Role], [Employee].[Position Title], [Employee].[Marital Status], [Employee].[Gender], [Employee].[Salary], [Employee].[Education Level]]

(4)
name:Store
hierarchies:[[Store].[Stores], [Store].[Store Size in SQFT], [Store].[Store Type]]

(5)
name:Time
hierarchies:[[Time].[Time]]

【measures:5个】

(1)
name:Org Salary
uniqueName:[Measures].[Org Salary]
measureGroup: HR
dimensionUniqueName:[Measures](其他一样)
hierarchyUniqueName:[Measures](其他一样)
levelUniqueName:[Measures].[MeasuresLevel](其他一样)

(2)
name:Count
uniqueName:[Measures].[Count]
measureGroup: HR

(3)
name: Number of Employees
uniqueName:[Measures].[Number of Employees]
measureGroup: HR

(4)
name:Employee Salary
uniqueName:[Measures].[Employee Salary]
measureGroup: null

(5)
name:Avg Salary
uniqueName:[Measures].[Avg Salary]
measureGroup: null

【properties】

{
org.saiku.query.explain=true,//解释
org.saiku.connection.scenario=false,//场景
saiku.olap.query.drillthrough=true//钻取
}

其他的也差不多,就不一一列举了

示例:EARTHQUICKS

connection:        earthquakes
catalog:        Global Earthquakes
schema:            Global Earthquakes
cube:            Earthquakes(1个)

=========================== Cube:Earthquakes ==============================

关注三个属性:【Dimensions】、【measures】、【properties】

【Dimensions:3个】

(1)日期
name:Date
uniqueName:[Date]
caption:Date
hierarchies:[[Date].[Time]]
visible:true

(2)位置
name:Location
uniqueName:[Location]
caption:Location
hierarchies:[[Location].[Place], [Location].[Latitude], [Location].[Longitude]]
visible:true

(3)网络
name:Network
uniqueName:[Network]
caption:Network
hierarchies:[[Network].[Name]]
visible:true

【measures:11个】

(1) 平均海拔
name: Average Magnitude
uniqueName:[Measures].[Average Magnitude]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(2)平均深度
name: Average Depth
uniqueName:[Measures].[Org Salary]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(3)平均裂缝
name: Average Gap
uniqueName:[Measures].[Average Gap]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(4)
name: Average Reporting Stations
uniqueName:[Measures].[Average Reporting Stations]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(5)
name: Sum Magnitude
uniqueName:[Measures].[Sum Magnitude]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(6)
name: Sum Reporting Stations
uniqueName:[Measures].[Sum Reporting Stations]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(7)
name: Max Magnitude
uniqueName:[Measures].[Max Magnitude]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(8)
name: Max Depth
uniqueName:[Measures].[Max Depth]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(9)
name: Max Gap
uniqueName:[Measures].[Max Gap]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(10)
name: Max Reporting Stations
uniqueName:[Measures].[Max Reporting Stations]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

(11)
name: Number of quakes
uniqueName:[Measures].[Number of quakes]
measureGroup: Average
dimensionUniqueName:[Measures]
hierarchyUniqueName:[Measures]
levelUniqueName:[Measures].[MeasuresLevel]

【properties】

{
org.saiku.query.explain=true,//解释
org.saiku.connection.scenario=false,//场景
saiku.olap.query.drillthrough=true//钻取
}
时间: 2024-10-21 10:46:52

saiku- 通过 saiku 的 DEMO 分析 connection的相关文章

Cocos2d-x3.1TestCpp之MotionStreakTest Demo分析

1.构成代码 VisibleRect.h VisibleRect.cpp AppDelegate.h AppDelegate.cpp HelloWorldScene.h HelloWorldScene.cpp MotionStreakDemo.h MotionStreakDemo.cpp 2.代码分析 (1)VisibleRect.Appdelegate的代码均为TestCpp提供代码: (2)HelloWorldScene.cpp中只需把上一篇Cocos2d-x3.1TestCpp之NewRe

saiku - 配置saiku实时展现查询数据

缘起: 在默认的情况下,saiku是不能对数据进行实时展现的,只能通过刷新按钮或者重启服务器来刷新数据 这样以来会有很多的麻烦,每天得手动去刷新,这个操作只有管理员可以操作,在刷新以前客户看到的都是缓存中的旧数据. 有人说写个shell去定时更新不行吗?这个做法当然可以. 除了这个做法,还可以让saiku查询完数据后即时加载. 不用数据库连接池,加载完成后立刻清除缓存中的数据,系统下次在加载的时候发现缓存是空的,就会自动去查询新数据,这样以来就可以做到实时展现. 具体修改如下: (1)编辑 sa

XMPP协议实现即时通讯底层书写 (二)-- IOS XMPPFramework Demo+分析

我希望,This is a new day! 在看代码之前,我认为你还是应该先整理一下心情,来听我说几句: 首先,我希望你是在早上边看这篇blog,然后一边開始动手操作,假设你仅仅是看blog而不去自己对照项目,作用不是非常大.一日之计在于晨,所以怀着一颗对技术渴望,激动的.亢奋的心情去学习.你才干有所得. 嗯,就拿鄙人当时做项目来说,每天早上起来的第一件事情.就是研究XMPPFramework作者的代码,依照模块来分析和模仿书写.睡觉的时候还在思考,分析.总结... 当然我并非说每一个Dev

google closure--继承模块二:goog.base()demo分析

昨天已经讲到了goog.inherits(),主要负责通过为子构造函数原型对象通过原型链继承父构造函数的原型对象的方法,完成继承.这样继承只完成了原型对象的继承,看看之前的那张图: 是不是感觉父构造函数好像没什么用处啊,还记得上篇文章,构建一个超级对象的设想吗?这个要依赖另一个API,goog.base(). 在看源代码之前让我们看看一个简单的demo,温习一下goog.inherit(),这个demo还可以帮助我们了解goog.base()可以做些什么. demo代码: 输出结果: 分析: 先

qml demo分析(clocks-时钟)

一.效果展示 效果如图1所示,时钟列表支持鼠标左右拖动,带有黑色背景的是晚上时钟,无黑色背景的是白天时钟 二.源码分析 1.main.cpp文件中只包含了一个宏,该宏的具体解释请看qml 示例中的关键宏文章 2.时钟项 1 Item { 2 id : clock 3 width: { 4 if (ListView.view && ListView.view.width >= 200) 5 return ListView.view.width / Math.floor(ListView

qml demo分析(rssnews-常见新闻布局)

一.效果展示 今儿来分析一篇常见的ui布局,完全使用qml编写,ui交互效果友好,如图1所示,是一个常见的客户端新闻展示效果,左侧是一个列表,右侧是新闻详情. 图1 新闻效果图 二.源码分析 首先先来总体分析下该示例代码的工程目录,如图2所示,总共有6个qml文件.其中BusyIndicator和组件是qml已经存在的组件,NewsDelegate组件是新闻详情页中的一项,CategoryDelegate组件是左侧列表中的一项,RssFeeds组件是左侧新闻列表数据源,rssnews文件是主程序

Cocos2d-x3.1TestCpp之NewRenderTest Demo分析

1.代码构成 VisibleRect.h VisibleRect.cpp AppDelegate.h AppDelegate.cpp HelloWorldScene.h HelloWorldScene.cpp NewRenderTest.h NewRenderTest.cpp 2.HelloWorld代码 #include "cocos2d.h" #include "ui/CocosGUI.h" USING_NS_CC; using namespace ui; cl

MATLAB R2016a computer vision toolbox 的 demo分析

2016/05/24 随便看了下几个demo,现在函数都搞的全部封装起来了,不太好,但是还是要借鉴demo里头的总体思路 Structure From Motion From Two Views 1,Read a Pair of Images 读入两幅图像 2,Load Camera Parameters 载入相机参数(用的相机标定app预先弄好的) 3,Remove Lens Distortion 纠正透镜畸变 4,Find Point Correspondences Between The

qml demo分析(photosurface-图片涅拉)

阅读qml示例代码已有一小段时间,也陆续的写了一些自己关于qml示例代码的理解,可能由于自己没有大量的qml开发经验,总感觉复杂的ui交互qml处理起来可能会比较棘手,但事实总是会出人意料,今天我们就来分析一个关于油耗交互的qml代码.从毕业后就一直从事qt的相关开发,一直在使用QWidget窗口做产品,看多了qml后才发现原来还有这么好的ui开发利器,完全的数据和展示分离,ui可以做到想怎么变怎么变,没有了QBoxLayout的帮助(同样是约束),ui再也不用那么死板,对于灵活.绚丽的桌面程序