Kylin页面System操作源码解读
System中的主要操作在AdminController和CacheController
一. 源码结构
前端源码: angular:下面为自定义方法:
* Method type is PUT * Additional Query parameter action=config is sent * The expected return type not is an Array */ updateConfig: {method: 'PUT', params: {action: 'config'}, isArray: false} KylinApp.factory('AdminService', ['$resource', function ($resource, config) { return $resource(Config.service.url + 'admin/:action', {}, { env: {method: 'GET', params: {action: 'env'}, isArray: false}, config: {method: 'GET', params: {action: 'config'}, isArray: false}, publicConfig: {method: 'GET', params: {action: 'public_config'}, isArray: false}, cleanStorage: {method: 'DELETE', params: {action: 'storage'}, isArray: false}, updateConfig: {method: 'PUT', params: {action: 'config'}, isArray: false} }); }]); params: {action: 'config'}对应AdminController的RequestMapping的映射
二. 探索每个按钮
1. Server Config的刷新按钮
调用的是getConfig(AdminController中的getConfig方法) getConfig操作会从ThreadLocal的KylinConfig中查找有没有此对象,如果有则获取返回,所以当set Config之后,有了KylinConfig对象,所以Server Config的刷新按钮可以获取到修改后的配置属性
2. Server Environment刷新按钮
调用的是getEnv操作(AdminController中的getEnv方法)
3. Set Config按钮
调用updateKylinConfig,会将前端也就是页面上传过来的kv值进行更新,会将数据存储到KylinConfig对象内存中。这是一个put操作,在restful中相当于调用服务器的update方法。
4. Clean Up Storage
调用(AdminController中的cleanupStorage方法) storage对应cleanupStorage,此操作的运行原理官网解释:http://kylin.apache.org/docs/howto/howto_cleanup_storage.html, 也就是会清除kylin cube构建 工作期间生成的hdfs中间文件
5. reloadConfig
调用hotLoadKylinConfig(CacheController中) 这是一个POST请求,可以热加载配置文件的更新,通过broadcast的方式 KylinConfig.getInstanceFromEnv().reloadFromSiteProperties(); cacheService.notifyMetadataChange(Broadcaster.SYNC_ALL, Broadcaster.Event.UPDATE, Broadcaster.SYNC_ALL); reloadFromSiteProperties操作会使用BackwardCompatibilityConfig的check方法,将key,value强制转换为String类型, 类似于格式化
6. Calculate Cardinality
预估某个hive表的基数,点击这个按钮会让用户填写hive表相关信息
7. Disable Cache
是将kylin.query.cache-enabled参数设为false
8. Enable Cache
是将kylin.query.cache-enabled参数设为true
9. Reload metadata
调用CacheController的announceWipeCache方法 会使用Broadcaster清除所有节点缓存
所以,当set config之后,只是将参数设置到了Properties对象中,并不持久化,而当reload时,会读取kylin.properties文件的配置,所以reload会重新刷新缓存内容

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
2019 Vue开发指南:你都需要学点啥?
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 原文出处:https://dzone.com/articles/vue-development-in-2019-what-you-need-to-know 如果您是Vue开发的新手,您可能已经听过很多关于它的专业术语了,例如:单页面应用程序、异步组件、服务器端呈现等。 另外您可能还经常听到和Vue一起提到的工具和库,如Vuex、Webpack、Vue CLI和Nuxt。 也许您在面对这些未知的术语和工具时会感到无助和绝望,没关系,您并不孤单,因为这是所有新手在初次接触Vue时都会有的感受。 但如果您试图要一次掌握所有这些内容,那么这些庞大的体系很可能会压垮你。为此,我在这里将为大家展示一个“知识图表”,它包含了所有在专业Vue开发过程中的关键部分。您可以参考这个图为您在2019学习Vue的过程中指引方向。 0. JavaScript和Web开发基础 如果我让你用英文去阅读纯英文书籍,那么你应该先要学习英文,对吗? 同样,Vue是一个用于构建Web用户界面的JavaScript框架。在开始使用Vu...
- 下一篇
贷前系统ElasticSearch实践总结
贷前系统负责从进件到放款前所有业务流程的实现,其中涉及一些数据量较大、条件多样且复杂的综合查询,引入ElasticSearch主要是为了提高查询效率,并希望基于ElasticSearch快速实现一个简易的数据仓库,提供一些OLAP相关功能。本文将介绍贷前系统ElasticSearch的实践经验。 一、索引 描述:为快速定位数据而设计的某种数据结构。 索引好比是一本书前面的目录,能加快数据库的查询速度。了解索引的构造及使用,对理解ES的工作模式有非常大的帮助。 常用索引: 位图索引 哈希索引 BTREE索引 倒排索引 1.1 位图索引(BitMap) 位图索引适用于字段值为可枚举的有限个数值的情况。 位图索引使用二进制的数字串(bitMap)标识数据是否存在,1标识当前位置(序号)存在数据,0则表示当前位置没有数据。 下图1 为用户表,存储了性别和婚姻状况两个字段; 图2中分别为性别和婚姻状态建立了两个位图索引。 例如:性别->男 对应索引为:101110011,表示第1、3、4、5、8、9个用户为男性。其他属性以此类推。 使用位图索引查询: 男性 并且已婚 的记录 = 10111...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 2048小游戏-低调大师作品
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Linux系统CentOS6、CentOS7手动修改IP地址
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS6,CentOS7官方镜像安装Oracle11G
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范