> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xpertai.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# 🧊多维数据集设计器

语义模型的多维数据集是按维度和度量组织的一组数据, 多维数据集所聚集的数据视图是事实表：它包含一个或多个要度量（聚集）的列，并且还包含用于标识事件的相关联维度成员的列。

多维数据集设计器包含三个子功能:

1. 结构: 对多维数据集的物理表关系进行设计
2. 计算: 对计算成员公式设计和数据预览
3. 查询: 自编写查询语言进行数据查询预览

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/cube-designer.png" alt="" />

## 构建多维数据集

构建多维数据集除了事实表外还包含三各部分的信息:

1. 维度
2. 度量
3. 计算成员

### 新建多维数据集

在数据表区域找到要创建多维数据集的事实表, 将其拖至模型区域中. 在弹出的窗口中设置:

* 类型: **多维数据集**；
* 名称: 多维数据集的唯一技术名称；
* 标签: 多维数据集的语言描述；
* 表: 多维数据集使用的事实表；
  * 字段：事实表的字段；
  * 度量：是否为度量；
  * 关联维度：关联共享维度为多维数据集的维度；

<img src="https://mintcdn.com/xpertai/0avAZsO6pri8DJS6/public/img/models/create-cube.png?fit=max&auto=format&n=0avAZsO6pri8DJS6&q=85&s=fec9ac7c1d78578d6e50a436bc6af498" alt="创建多维数据集" width="1390" height="872" data-path="public/img/models/create-cube.png" />

点击应用创建多维数据集并转到多维数据集设计器界面, 多维数据集的详细属性列表如下：

| 属性   | 描述                 | 可选值                          |
| ---- | ------------------ | ---------------------------- |
| 名称   | 唯一名称标识             | 一般使用英文字符                     |
| 标签   | 语言描述               | 用户语言                         |
| 描述   | 长文本描述              | 用户语言                         |
| 默认度量 | 在没有指定度量的查询中使用的默认度量 | 多维数据集中的度量                    |
| 是否显示 | 显示给用户, 否则只作为内部计算使用 | 默认值：`true`, `true` / `false` |
| 启用   | 启用此数据集             | 默认值：`true`, `true` / `false` |
| 缓存   | 是否为数据集使用数据缓存       | 默认值：`true`, `true` / `false` |
| 事实表  | 多维数据集的事实表          | 数据源中的数据表                     |

### 维度

为多维数据集添加维度有两种方式:

1. 内联维度
2. 共享维度

内联维度是直接在多维数据集界面中创建维度以及层次结构.

#### 新建维度

点击维度 (Dimensions) 区域标题栏上的新建维度图标, 可以看到下方多出一行空白行.

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/new-dimension.png" alt="Small" />

选中维度, 在右侧打开的属性编辑界面中设置维度的属性.

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/dimension-attributes.png" alt="Small" />

维度的属性设置同 [❄️维度设计器](../dimension-designer/#维度属性)

#### 新建层次结构

在维度行上点击新增图标, 添加一行空白的层次结构 (Hierarchy).

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/new-hierarchy.png" alt="Small" />

选中新增的层次结构行, 此时右边属性设置栏变为层次结构的属性设置界面.

层次结构的详细配置请参考 [❄️维度设计器 - 创建层次结构](../dimension-designer/#创建层次结构) 里的属性设置.

#### 新建层级

点击维度行上的新建图标, 添加一个或多个层级节点, 点击层级节点在属性设置界面中设置层级属性, 层级详细属性设置请参考 [❄️维度设计器 - 创建层级](../dimension-designer/#创建层级) 中的属性设置.

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/new-level.png" alt="Small" />

### 共享维度

除了在多维数据集中创建内联的维度, 还可以将已创建的共享维度添加到多维数据集中.

将共享维度从模型区域拖至维度区域.

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/cube-designer.png" alt="" />

选中添加的共享维度打开右侧属性编辑界面:

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/dimension-usage-attributes.png" alt="Small" />

* 名称: 维度在多维数据集中的唯一技术名称.
* 外键: 事实表中与此维度主键关联的外键字段.

共享维度的层次结构和层级不能在这里编辑, 需要转到维度设计器中进行编辑.

### 度量

在度量 (Measures) 行上点击新增度量图标, 在下面出现一行空白度量.

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/new-measure.png" alt="Small" />

选中此行空白度量, 右边设置栏将变为度量设置界面, 输入以下信息:

见下方属性列表

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/measure-attributes.png" alt="Small" />

#### 度量属性

| 属性    | 英文名称               | 描述                                                                   | 可选值                                                                |
| ----- | ------------------ | -------------------------------------------------------------------- | ------------------------------------------------------------------ |
| 名称    | Name               | 唯一名称标识                                                               | 一般使用英文字符                                                           |
| 标签    | Caption            | 语言描述                                                                 | 用户语言                                                               |
| 描述    | Description        | 长文本描述                                                                | 用户语言                                                               |
| 字段    | Column             | 度量对应在多维数据集中的事实表字段                                                    |                                                                    |
| 聚合类型  | Aggregator         | 度量聚合的方式, 默认 "sum"                                                    | "sum", "count", "min", "max", "avg", and "distinct-count"          |
| 数据类型  | Data Type          | 字段数据类型, 默认值是 "Numeric", 除了 "count" 和 "distinct-count" 度量值是 "Integer" | "String" "Integer" "Numeric" "Boolean" "Date" "Time" 和 "Timestamp" |
| 是否显示  | Visiable           | 显示给用户, 否则只作为内部计算使用                                                   |                                                                    |
| 格式化   | Format String      |                                                                      |                                                                    |
| 度量表达式 | Measure Expression | 使用 SQL 表达式替代表字段来计算度量值                                                | 1. 数据库方言; 2. 表达式值                                                  |

### 计算成员

计算成员(Calculated Member)使用计算公式计算出需要查询的度量字段或者维度成员.

在计算成员(Calculated Members)标题栏点击新增图标新建一个计算成员.

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/new-calculated-member.png" alt="Small" />

选中新增的计算成员行, 在属性编辑界面中设置计算成员属性.

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/calculated-member-attributes.png" alt="Small" />

#### 计算成员属性

| 属性   | 英文名称        | 描述                                    | 可选值                                            |
| ---- | ----------- | ------------------------------------- | ---------------------------------------------- |
| 名称   | Name        | 唯一名称标识                                | 一般使用英文字符                                       |
| 标签   | Caption     | 语言描述                                  | 用户语言                                           |
| 描述   | Description | 长文本描述                                 | 用户语言                                           |
| 维度   | Dimension   | 计算成员所属的维度                             | 如果是 "Measures" 则此计算成员为计算度量. 如果是其他维度, 则为维度的公式成员 |
| 层次结构 | Hierarchy   | 当维度选择为非 Measures 维度时, 选择一个公式成员所属的层次结构 | 维度下的层次结构                                       |
| 父级成员 |             |                                       |                                                |
| 是否显示 | Visiable    | 是否对用户可见                               |                                                |
| 数据类型 | Data Type   | 数据类型                                  |                                                |
| 公式   | Formula     | 计算成员的公式                               |                                                |
| 属性   | Property    |                                       | 如: "DATATYPE", "SOLVE\_ORDER"                  |

### 参数变量

对于对接外部立方体的多维数据集来说，可能存在参数变量，例如 [SAP BW Query](https://help.sap.com/docs/SAP_BW4HANA/107a6e8a38b74ede94c833ca3b7b6f51/0a5bc3fe216246c5ab4afa5c498ee5c6.html) 那么在这里可以对其进行增强，以适应后续的使用。

* 标签：对其描述性文本，人类或 AI更好的理解参数的用意
* 语义类型：当参数为 **不可见** 并且 **必输** 时，系统为使用此语义类型填充运行时的参数值。
  如，将人员信息（邮箱，第三方ID）带进数据请求里。
* 默认值
* 是否必输：参数必输
* 是否可见：表示参数对用户或者 AI 是否可见。

<img src="https://mintcdn.com/xpertai/0avAZsO6pri8DJS6/public/img/models/cube-variables.png?fit=max&auto=format&n=0avAZsO6pri8DJS6&q=85&s=1c5401f11afd3cab5d8fb009841f6740" alt="Cube Variables" width="1248" height="722" data-path="public/img/models/cube-variables.png" />

## 结构

可以对多维数据集的事实表进行关联设计, 目前只支持一个事实表。 多维数据集的 ER 图以星形方式展示，中心是多维数据集的维度、度量和计算度量，周围是维度节点。

<img src="https://mintcdn.com/xpertai/IL25qkwj-czMDTNd/public/img/blog/v2.2/cube-er.png?fit=max&auto=format&n=IL25qkwj-czMDTNd&q=85&s=b293ae77200d216601b940147b6b6d10" alt="Cube ER Diagram" width="3024" height="1714" data-path="public/img/blog/v2.2/cube-er.png" />

用户可以选中多维数据集、维度或层级字段以在属性面板中编辑其属性详情。ER 图中展示的维度包括共享维度和内联维度，用户可以点击共享维度节点右上角的分享图标以转向共享维度页面查看其详细信息。

## 计算

计算界面可以对计算成员公式进行编辑, 也可以对维度和度量进行数据预览.

点击计算成员的编辑按钮, 转到相应的计算页面. 在编辑器中对计算成员公式进行编辑.

在预览区域将维度或者度量或计算成员拖至行列或者过滤器中, 在右侧可以看到相应的预览数据结果, 帮助用户对多维数据集的设计和计算成员公式进行正确性验证工作.

* 手动刷新: 开启后数据只会在手动点击刷新按钮时才重新查询.
* 刷新按钮: 手动刷新预览数据.
* 转置按钮: 对行列配置进行交换, 使得数据预览的行列进行转置.

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xpertai/en/bi/semantic-model/multidimensional-dataset-designer/cube-designer.png" alt="" />

## 查询

查询界面可以自行编写查询语句对多维数据集进行查询, 获取并验证设计的结果正确性.

* MDX 模型: 当模型被保存后才会对查询有效.
* SQL 模型: 目前只能对原始物理表进行查询, 不能直接对多维数据集进行查询.
