OLAP 玩转KYLIN 步十 官方案列实战之创建Cube之Configuration Overwrites
在kylin的安装目录 下的conf/kylin.properties 文件中有许多控制影响kylin执行的参数配置项; 其中有些是全局配置,即一个运行中的kylin进程,全局参数一旦设定,运行过程中只以全局参数的配置为准,不会运行中被改变; 有些则是与某个 Cube 相关的配置参数,这些配置可以根据Cube的不同进行不同的设置,所以这些参数可以灵活改变以适应具体要求,下面我们就来介绍一下,与Cube相关的参数配置。
紧接上一步cube的Advanced Setting完成之后,点击Next,进入cube的Configuration Overwrites界面,如图:
下面介绍一下,一些常用且比较重要的参数的配置。 Hadoop jobs 配置
:build cube 的过程中会有一些阶段的任务通过MapReduce来完成,这时候就需要对任务的map、reduce两个阶段执行所需的资源进行配置,比如,要用多少内存,几个CPU核等。如果你了解有关Hadoop的资源配置,应该知道他的相关配置文件,以及一些常用的配置参数,而kylin如果要提交Hadoop的MapReduce job,并且用kylin的配置替代Hadoop默认的配置,只需在Hadoop原有配置的名称前添加前缀kylin.engine.mr.config-override.
即可。如:
kylin.engine.mr.config-override.mapreduce.map.memory.mb = xxx
kylin.engine.mr.config-override.mapreduce.map.cpu.vcores = xxx
kylin.engine.mr.config-override.mapreduce.reduce.memory.mb = xxx
kylin.engine.mr.config-override.mapreduce.reduce.cpu.vcores = xxx
kylin.engine.mr.config-override.mapreduce.map.java.opts = xxx
Hive job 配置
:build cube 的过程中有一些阶段的任务kylin会调用hive的命令去完成,而hive job的执行既可以使用MapReduce的计算框架,也可以使用spark的计算框架,使用不同的计算框架,则相关的配置也不一样。kylin通过在hive原有配置的名称前添加kylin.source.hive.config-override.
来设置参数,以替代hive的默认配置。如:
hive 使用MapReduce引擎:
kylin.source.hive.config-override.mapreduce.reduce.cpu.vcores = xxx
kylin.source.hive.config-override.mapreduce.reduce.memory.mb = xxx
kylin.source.hive.config-override.mapreduce.map.cpu.vcores = xxx
kylin.source.hive.config-override.mapreduce.map.memory.mb = xxx
HIve使用Spark引擎:
kylin.source.hive.config-override.spark.driver.cores = xxx
kylin.source.hive.config-override.spark.executor.memory = xxx
kylin.source.hive.config-override.spark.driver.memory = xxx
kylin.source.hive.config-override.spark.executor.cores = xxx
kylin.source.hive.config-override.spark.storage.memoryFraction = xxx
kylin.source.hive.config-override.spark.shuffle.memoryFraction = xxx
kylin.source.hive.config-override.spark.default.parallelism = xxx
kylin.source.hive.config-override.spark.rdd-partition-cut-mb = xxx
kylin.source.hive.config-override.spark.yarn.executor.memoryOverhead = xxx
kylin.source.hive.config-override.spark.yarn.driver.memoryOverhead = xxx
Spark job 配置
:build cube如果使用spark引擎,则会有一些阶段通过spark job来完成,kylin通过在spark原有配置的名称前添加kylin.engine.spark-conf.
来设置参数,以替代spark的默认配置。如:
kylin.engine.spark-conf.spark.master = xxx
kylin.engine.spark-conf.spark.submit.deployMode = xxx
kylin.engine.spark-conf.spark.dynamicAllocation.enabled = xxx
kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors = xxx
kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors = xxx
kylin.engine.spark-conf.spark.shuffle.service.enabled = xxx
kylin.engine.spark-conf.spark.driver.memory = xxx
kylin.engine.spark-conf.spark.driver.cores = xxx
kylin.engine.spark-conf.spark.executor.memory = xxx
kylin.engine.spark-conf.spark.executor.cores = xxx
kylin.engine.spark.rdd-partition-cut-mb = xxx
kylin.engine.spark-conf.spark.shuffle.memoryFraction = xxx
kylin.engine.spark-conf.spark.storage.memoryFraction = xxx
kylin.engine.spark-conf.spark.default.parallelism = xxx
kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead = xxx
kylin.engine.spark-conf.spark.yarn.driver.memoryOverhead = xxx
更多配置参考官方文档:http://kylin.apache.org/docs23/install/advance_settings.html
至此,cube build 的参数配置讲解完毕,我们的案例配置如下:
配置完成,点击Next,进入最后一步。