模型模块

# 概述 创建工程后会自动跳转到模型(Model)页面。 参考如下: ![image.png](https://cos.easydoc.net/25469987/files/kblxrn8o.png) 有了表信息后,就可以创建数据模型了。数据模型(Data Model)是Cube的基础,主要是根据需求分析进行设计,可以看做是一个设计简易数据仓库的过程,是为了生成星型模型、雪花模型这类数据模型。主要功能是从加载的数据表中选择维度和度量、构建表连接(靠主外键建立表与表之间的联系)及设置。此外,整个model的构建是一个流程化的步骤。Model创建完成之后,对model可以做一些详细信息查看、编辑、删除、克隆等操作 # 创建模型 按照流程时间线,分为模型信息(Model Info)、数据模型(Data Model)、维度(Dimensions)、度量(Measures)、设置(Setting),页面参考如下: ![image.png](https://cos.easydoc.net/25469987/files/kbq962nq.png) ## 模型信息 主要是填写模型的名称,以及对模型的一些描述性信息(非必须) ![image.png](https://cos.easydoc.net/25469987/files/kbqaaznb.png) ## 数据模型 该步骤主要功能是从数据源已经加载的数据表中,添加事实表和维度表。参考页面: ![image.png](https://cos.easydoc.net/25469987/files/kbqagpec.png) **事实表** 以下拉框或者其他形式展现出所有加载的数据表,可以选中某一表作为事实表 **维度表** 添加维度表的时候,首先选择表之间的连接关系(有inner join和left join两种关系),并为创建的维度表输入别名。同时可以选择是否将其以快照形式存储到内存中以供查询,默认不选中。然后选择连接的主键和外键,支持多主键。 ![image.png](https://cos.easydoc.net/25469987/files/kbqe78oa.png) From Table下拉框中是事实表和上一步新生成的观察表(维度表),即每添加一次观察表完成后,下一次再次添加观察表时,上一次添加的观察表别名都会在该下拉框中出现。 Inner Join 下拉框中是事实表和维度表的连接方式:Inner Join 和Left Join,默认为Inner Join Select Lookup Table下拉框中是列出该project下的所有表,并为创建的维度表输入别名(只能大写字母和数字)。同时可以选择是否将其以快照(Snapshot)形式存储到内存中以供查询。当维度表小于300M时,推荐启用以快照形式存储,以简化Cube计算和提高系统整体效率;当维度表大于300M时,建议关闭快照形式存储(即不打对号),以提升Cube构建的稳定性与查询的性能。然后选择连接的主键和外键,这里支持多主键。 ![image.png](https://cos.easydoc.net/25469987/files/kbqe7zyw.png) 1是事实表的外键,2是维度表的主键 ==注==:别名非常重要,例如:数据源中的有一个维度表A,在此处可以通过别名形成新的维度表A1和A2,A1、A2、A中的所有列均相同,在下一步的维度选择中选择不同的列作为维度,这样就能将一张宽维度表分解成一个个主题明确的窄维度表。 ## 维度选择 选择维度列时,纬度可以来自事实表或者维度表。这里只是选择一个范围,不代表这些列将来一定会用到,只是把所有可能用到的都选出来。 所有的维度均来自与上一步添加的事实表和维度表。参考界面如下: ![image.png](https://cos.easydoc.net/25469987/files/kbqedner.png) ## 度量选择 度量列只能来自事实表或不加载进内存的维度表(即上一步没有生成snapshot的维表)。参考页面: ![image.png](https://cos.easydoc.net/25469987/files/kbqeq2ab.png) ## 设置 ==该功能当前可以不考虑== 设置是为模型补充分割时间列信息和过滤条件。 如果此模型中的事实表记录是按时间增长的,那么可以指定一个日期/时间列作为模型的分割时间列,从而可以让Cube按此列做增量构建。 过滤(Filter)是指如果想要把一些纪律忽略掉,那么可以设置一个过滤条件 ![image.png](https://cos.easydoc.net/25469987/files/kbqet3jq.png) 最后,保存此数据模型,随后它将出现在“模型列表”中。 # 模型列表 用于列出当前工程Project下的所有数据模型model,参考如下: ![image.png](https://cos.easydoc.net/25469987/files/kbqftslg.png) # 操作模型 主要是对“模型列表”中的模型进行模型信息查看、编辑模型、删除模型、克隆模型等操作。 ## 模型信息查看 在模型列表中,点击某个model,会跳出一个页面用于模型信息的详细展示,有三种展示方式:流程节点展示(Grid)、模型可视化(Visualization)、JSON。 **流程节点展示** 以流程化创建模型的步骤进行每个节点步骤的信息展示,参考如下: ![image.png](https://cos.easydoc.net/25469987/files/kbqg9wcz.png) **模型可视化** ==该功能当前阶段可以不用考虑== 以表节点关系图的形式,可视化的整体描述当前模型,参考如下: ![image.png](https://cos.easydoc.net/25469987/files/kbqgfcbk.png) 所有数据表以主外键连接关系绘制成一张图表。 **JSON** 将整个模型信息进行JSON字符串化,详细展示其构造信息。参考如下: ![image.png](https://cos.easydoc.net/25469987/files/kbqgi3r1.png) ## 编辑模型 点击“编辑”,如果此模型没有被cube使用(可以根据API的返回信息判断),进入模型的编辑流程,编辑流程和模型构建流程一致。参考如下: ![image.png](https://cos.easydoc.net/25469987/files/kbqgleew.png) 编辑结束后,保存模型,返回“模型列表” ## 删除模型 点击“删除”后,如果此模型没有被cube使用(可以根据API的返回信息判断),可以确认删除此模型。最后返回“模型列表” ## 克隆模型 用于克隆复制某一模型,点击克隆后,弹出页面,更改模型名称,提交后复制此模型,返回“模型列表”