适用场景
- 多次查询的情况:如果某个查询语句被多次执行,且查询结果不会发生太大变化,那么可以将查询结果缓存到 Smartbi 高速缓存库中。这种情况下,当再次执行相同的查询语句时,可以直接从缓存库中获取结果,避免了频繁的数据库查询,提高了查询效率。
- 数据预处理的场景:在某些情况下,数据需要经过一系列的处理和计算才能得到最终结果。如果这些计算比较耗时,或者计算结果在短时间内不会发生变化,那么可以将计算结果缓存到 Smartbi 高速缓存库中。下次需要使用这些计算结果时,可以直接从缓存中获取,避免重复计算,提高计算效率。
- 海量数据查询的情况:如果需要查询海量数据,并且查询操作非常耗时,那么可以将查询结果分批次缓存到 Smartbi 高速缓存库中。这种情况下,可以将查询结果分成若干批次,每次查询一部分数据,并将数据缓存到缓存库中。下一次查询时,可以先从缓存库中获取已经缓存的数据,再继续查询剩下的数据,这样可以减少查询时间和对数据库的负载,提高了系统的性能和可扩展性。
- 降低底层系统负载:如果某些查询或计算会对底层的系统资源造成较大的负载压力,那么可以将这些结果缓存到 Smartbi 高速缓存库中。这样,不仅可以减少对底层系统的压力,还可以提高系统的整体性能和稳定性。
支持范围
高速缓存库支持下面几种数据库:
- SmartbiMpp,广州思迈特软件有限公司研发的高速缓存库
- SmartbiMppMD,广州思迈特软件有限公司研发的高速缓存库
- Presto+Hive
- Vertica
- 星环
采购高速缓存MPP模块后,可以根据实际情况选择以上几种数据库中的一种作为高速缓存库。
配置步骤
高速缓存库在Smartbi中的配置方法如下:
(1)启动服务器,在浏览器输入Smartbi地址,进行登录;
(2)输入用户名密码,登录平台;
(3)在“系统导航栏”选择 数据连接,在“资源目录区”的高速缓存库更多操作
,选择 打开,或双击 高速缓存库;(4)进入“高速缓存库”界面
(5)据实际使用的数据库,修改相应连接属性,连接属性详情请参见 各数据库的连接详情;
(6)点击保存,保存配置。
各数据库的连接详情
数据库类型 | 配置说明 |
---|---|
Presto+Hive | presto使用注意 1、Presto执行多表关联查询时,会把多表拆分成多个执行计划执行,这样会影响查询效率。因此Presto不适合执行的多表关联场景有:跨库多表关联拼接查询。 2、Presto的关联机制:Presto会默认执行广播式的JOIN操作,会将左表拆分到几个工作节点上,然后发送整个右表分别到已拆分好的处理左表的工作节点上,如果右表非常大就会超出工作节点的内存限制,进而出错。因此,需要把数据量大的表放在左表才能保证查询正常。 3、presto+hive作为高速缓存库时,若hive设置了用户名密码,那么presto的配置中就需使用https证书(证书需根据服务器生成),因此跨库联合数据源中的连接字符串中需要手动添加https证书的映射参数 4、当高速缓存库驱动程序类型选择了Presto+Hive,系统默认生成的别名是smartbicache.shive,包括了非法字符".",因此在查看高速缓存库属性时,会引起报错,手动修改别名即可。 |
SmartbiMpp | 在windows版本下使用SmartbiMD作为缓存库,建议在Linux环境下使用 SmartbiMpp作为缓存库。 |
SmartbiMppMD | |
Vertica | |
星环 |
各数据库相关配置信息可参考文档内置数据库相关配置信息。