作者: 永洪BI 来源: 永洪科技 时间:2020年01月15日
在上一篇我们讲到了业务人员可以用永洪产品的自服务数据集进行自助式分析(利用永洪自服务数据查询,轻松构建复杂数据集),那么IT管理员如何管理业务人员进行分析呢?
永洪的某财险客户需要业务用户进行自助式分析,高峰期在350并发以上,企业IT管理部希望对所有IT人员和业务人员查询数据的数据量大小优先级进行管控,然后让业务用户进行自助式分析。
因为该财险公司已经将数据存储在了Cloudera Impala集群中。该财险的IT管理部门会根据每一个用户的数据量大小、业务类型分配队列,并且详细设置该队列中的默认查询参数,尤其是mem_limit参数和最大并发数,这样可以较好的限制用户之间的影响,为了避免恶意用户的使用,可以限制用户自己设置mem_limit参数,尽可能得保证Impala集群的稳定性。
1、在Impala数据库层面,IT管理员或者DBA可以在session建立之后进行设置。
设置队列限制
set request_pool = queue_it;
用户在创建一个数据源连接(connection)之后,可以通过set request_pool=pool_name的方式设置改session的请求提交的对应的队列。
设置最大内存使用限制
set mem_limit=10G;
设置内存10G(单节点上的内存量),impala经常会over estimate SQL语句需要的资源,所以强烈建议在执行SQL之前,使用 set mem_limit 限制SQL查询的内存消耗。
2、永洪产品设置
提供了在数据源连接后对session进行设置的属性。
针对于不同2种类的用户,IT管理员期望根据数据量大小、业务类型设置分配的队列。
实现步骤:
选择永洪产品数据源,impala:
在设置好Impala数据源的基础连接信息后,选择数据源的高级属性进行如图设置。
直接在队列名设置queue_it , 并且点击添加高级属性限制mem_limit=2G。
如下所示,IT部门的数据源为Impala_it,设置如下:
财务部门的数据源Impala_finance,设置如下:
两者存储在数据源上的资源树上,如下图所示:
财险部门的用户(user_finance)在制作数据集时直接选择对应的数据源即可查询数据。
永洪BI
更敏捷、更快速、更强大