Caché数据库学习笔记(4)
目录
DeepSee的使用
数据、方法等的导入与导出
========================================================
========================================================
DeepSee的作用是对表格中的数据进行可视化数据挖掘。
主要过程是建立Cube(建立数据的关联,设置测量(measure)和分析维度(dimension)与表格中属性的关联方式), Pivot(建立分析方法,设置表格的行与列,以及测量值和过滤), Dashboard(通过与pivot关联,进行数据的可视化处理)
========================================================
首先通过management portal进入DeepSee
在此之前要确认本地安装的key文件允许使用deepsee,并且要在terminal里enable DeepSee的功能:
zn “%sys”
do Enable DeepSee^%SYS.cspServer(0)
(该命令可在documentation里查到)
(注意:命名空间在terminal里只能识别小写字符)
一般来说,deepsee的使用只涉及到目录的三个菜单:architect(建立cube,设置measure和dimension),analyzer(组合不同的measure与dimension以达到特定的分析目的,此菜单可以将结果另存为pivot),user portal(通过建立dashboard的方式,以图表等方式定制分析内容,并可供前端调用)
================================================
建立cube:
进入Architect后点击new,设置合适的cube name(英文,有实际意义),class name for the cube(package.cubename格式设置适当文件夹),source class设置该cube的数据来源表

添加measure与dimension:
Measure:
点击measure或dimension,Add element 设置measure名,然后点击刚刚添加的measure在页面右侧设置参数:

Display name建议设置为中文方便在后面查看
Source values有两种形式:Property(数据源中的属性不加处理)和Expression(在cube中或其他class中调用方法进行查找、整合或其他形式的处理)文本框后面有放大镜,可以选择已有的property或输入expression
Aggregate只提供加和、均值、最值和计数处理,type中可选数值、布尔值、时间、字符串等格式,format string设置了显示格式,可以点击后面的放大镜查看细节
Dimension:
新建dimension时有三个层次:dimension,hierarchy,level,在不同的分析目的下,注意不同属性间级别问题:同级还是上下级关系。点击到level一级设置具体参数:

与measure的设置大致类似,不过只需要设置display name 和source即可。
该expression的含义是:调用class(DICT.DEPTDICT)的方法,输入数据是数据源表的OrderBy属性内容
关于同级别的问题,以下是一个实例:

注意修改最上层的dimension type 为时间,再修改level层的extract value with function为year, month等
设置好所有measure和dimension后,记得保存(save)编译(compile)重建(build),然后可以点击tool-analyzer或转到上层目录点击analyzer,进行measure和dimension的组合并建立pivot
每次修改measure和dimension后需要重建(build)一次
======================================================
建立pivot:


在此页面(analyzer)左边是已经建立好的measure和dimension,右边上方是设置自定义的表格使用的行、列、测量和过滤器,下方是生成的表格。使用时,只需要将所需要的属性拖动过去就可以。在filter里,点击上面的添加按钮,可以根据需要设置过滤。
设置好以后,点击上面的save as即可设置存储目录以及存储名称

需要注意的是,一个cube可以建出许多pivot,但是一个pivot只是对一个目的进行分析,在接下来的dashboard中,一个dashboard中会有一个或若干个图(widget),一个widget一般对应于一个pivot
=================================================
建立好pivot后,从主目录里进入user portal,左侧add/add dashboard,设置名称和存储目录后打开新建的dashboard,左侧widgets/add选择图形和需要连接的pivot,完成即可画出图,在右侧显示,可以自由调节大小。一个dashboard中可以建立多个widget
Widget设置中,settings里,chart toggle属性默认为none,设置为chart/table默认显示图或表,并在原来图表区域产生一个按钮,用来切换图表显示;
Controls里,添加control,可以实现一个实时的filter,具体设置可以根据需求自行探索

=========================================================
数据、方法、cube、dashboard等的导入与导出:
在第一篇中提过,可以通过新建namespace/database的方法导入.dat文件的方式导入数据库,这时,导入的文件包括在其他服务器命名空间内所有的方法文件及数据。而平时更常用的,特别是多人合作的程序,仅仅需要导出几个方法或几张表的数据,这时就需要对数据或方法定向导出。
方法、cube、dashboard的导入与导出:
首先打开studio,如果是某个表的方法,则对应了.cls .mac .inc三个文件,tools/export…选择对应的文件,设置导出文件目录及文件名即可,导出的文件后缀是.xml
如果是dashboard,需要导出三类文件:.cube .pivot.DFI .dashboard.DFI相关联的所有文件必须都要导出。.cube文件可以在class文件夹中找到,.DFI文件可以在other文件夹中找到。(提示:建议提前在Workspace/Namespace中找到相应文件,右键添加到project中)同样的,导出的文件也是.xml
导入文件时,在Tools/import local…选择相应的.xml文件导入编译即可
数据的导入与导出:
与程序不同,数据的导入与导出需要在management portal上操作,System Explorer/global,改到相应的namespace后,找到需要导出的数据表后Export即可,导出的文件后缀是.gof
同样的,导入时找到Import即可
在远程导出其他服务器的数据时,需要使用远程桌面,因为导出数据时只能导出到本地目录。而将数据、方法等导入到远程服务器则不必使用远程桌面,只需要使用Ensemble内置的远程访问即可,具体方法在第3篇里。
需要单独说明的是,方法等只需要编译即可,而cube建立好后需要compile与build,而这个过程远程的portal是无法进行的,需要调用远程服务器的terminal,用命令进行compile和build,命令可在documentation里查询到,具体语句是:
do ##class(%DeepSee.Utils).%BuildCube(“CubeName”)
Caché数据库学习笔记(4)的更多相关文章
- Caché数据库学习笔记(1)
目录: Caché的概念和基础知识 Caché数据库的安装 创建命名空间(namespace)和数据库(database) Documentation的使用 ===================== ...
- Caché数据库学习笔记(5)
目录 Cache数据库方法的RESTful封装 ================================================================ 因为对web serv ...
- Caché数据库学习笔记(2)
目录: 创建新类(表)(class文件)与创建routine(.mac .inc) 在类里面添加函数(classmethod) Terminal的使用 ======================= ...
- Caché数据库学习笔记(3)
目录 Query函数及其测试 重建索引表 Management portal简介 远程访问Ensemble ============================================== ...
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- Mysql数据库学习笔记之数据库索引(index)
什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...
- MYSQL数据库学习笔记1
MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...
随机推荐
- [转]第四章 使用OpenCV探测来至运动的结构——Chapter 4:Exploring Structure from Motion Using OpenCV
仅供参考,还未运行程序,理解部分有误,请参考英文原版. 绿色部分非文章内容,是个人理解. 转载请注明:http://blog.csdn.net/raby_gyl/article/details/174 ...
- Nginx配置SSI
一.什么是SSISSI:Server Side Include,是一种基于服务端的网页制作技术,大多数(尤其是基于Unix平台)的web服务器如Netscape Enterprise Server等均 ...
- JAVA线程池原理详解一
线程池的优点 1.线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用. 2.可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多内存导致服务器崩溃. 线 ...
- java经典算法40题(21-40)
[程序21] 题目:求1+2!+3!+...+20!的和 1.程序分析:此程序只是把累加变成了累乘. public class Ex21 { static long sum = 0; s ...
- qunit学习(一)
QUnit是一个强大的JavaScript单元测试框架,用于调试代码.该框架是由jQuery团队的成员所开发,并且是jQuery的官方测试套件.任意正规JavaScript代码QUnit都能测试. 其 ...
- Python实现抓取页面上链接
方法一: # coding:utf-8 import re import requests # 获取网页内容 r = requests.get('http://www.163.com') data ...
- js_css_dl.dt实现列表展开、折叠效果
第一种方式:不提倡 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...
- property_自己编写一个读取Property文件的Util类
读取property文件的Util类: 所需jar包: 编写PropertiesUtil类: package com.west.util.property; import java.io.InputS ...
- Using Yum Variables
You can use and reference the following built-in variables in yum commands and in all Yum configurat ...
- win8win10以管理员身份运行cmd方法
win8win10以管理员身份运行cmd方法 Win7/8下提示OpenSCManager failed 拒绝访问Maven nexus 安装nexus : wrapper | OpenSCManag ...