...
上述两种情况,在Smartbi中都可以通过计划任务,将数据集数据先定时抽取到联合数据源的临时表中,然后再进行查询。完整的操作步骤描述如下: ,将数据集数据先定时抽取到系统内置的高速缓存库中,抽取成功后,系统内置的跨库联合数据源下将自动读取该临时表,则可以基于跨库联合数据源中的表进行跨库查询。
1. 先决条件:创建一个联合数据源。如果已经有了联合数据源,直接跳转到步骤3。在“ 数据源”节点上点击鼠标右键,点击“联合数据源”菜单项。
在“资源定制”节点,右键选择 新建查询>原生SQL查询。输入SQL语句后,点击工具栏上的 保存 按钮。
2. 如下图所示,填入联合数据源数据库的连接信息。
信息 |
---|
注意:这里所使用的数据库“用户名”,必须拥有在数据库中创建表、更新数据的权限。因为它需要自动创建临时表,并插入数据。 |
...
4. 接着点击工具栏上的“创建临时表”按钮。注意:必须先“保存”之后,工具栏上才会出现“创建临时表”按钮。在出现的“创建临时表”对话框上填入联合数据源、Schema、临时表名称、临时表别名等信息。接着点击“生成SQL”按钮,然后再点击“保存”按钮,并关闭对话框。
...
6. 接下来,在“计划任务”节点,点击“新建任务”按钮。在“新建任务”页面上,“任务类型”选择“表数据填充”。然后在下方的“表数据填充设置”中分别选择对应的联合数据源、Schema、表。点击右下角的“保存”按钮,关闭该页面。
7. 再点击“新建计划”按钮,在出现的“新建计划”页面上填入如下信息。“待执行任务”,选择前一步所创建的任务。然后设置间隔类型、生效范围、运行设置等信息。点击右下角的“保存”按钮,关闭该页面。
8. 至此,所有工作全部完成了。等待所设置的任务“触发时间”过了之后,直接查询第5步中的临时表,确认其中是否已正确插入数据。 接着点击工具栏上的 数据抽取 按钮,进行相关抽取设置:
上图的各设置项详情请参见 数据抽取 章节。
在抽取设置中单击 设置定时抽取 项,进行计划任务的抽取任务设置:
上图定时任务设置项详情请参见 计划任务 章节。
3. 抽取成功后,在“高速缓存库”节点下可以看到该原生SQL查询的临时表,以及在“跨库联合数据源”下该原生SQL查询的库表信息:
高速缓存库效果 | 跨库联合数据源效果 |
---|---|
4. 等所设置的任务“触发时间”过了之后,直接查询跨库联合数据源中的表,确认其中是否已正确插入数据。