热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

自定义Hive权限控制(1)设计目标

由于公司各个部门对hive的使用增加,针对hive的权限控制是必须要开展的一项工作了。针对此事项,最近进行了hive源码的查看,并完成了初步的设计和实现基本满足了当前权限控制的目标。目标1.采用公共模块或者公共配置文件去做用户权限管理。2.每

由于公司各个部门对 hive 的使用增加,针对 hive 的 权限控制 是必须要开展的一项工作了。针对此事项,最近进行了 hive 源码的查看,并完成了初步的设计和实现基本满足了当前 权限控制 的目标。 目标 1.采用公共模块或者公共配置文件去做用户权限管理。2.每

由于公司各个部门对hive的使用增加,针对hive权限控制是必须要开展的一项工作了。针对此事项,最近进行了hive源码的查看,并完成了初步的设计和实现基本满足了当前权限控制的目标。

目标

1.采用公共模块或者公共配置文件去做用户权限管理。2.每个部门使用不同的账号进行查询Hadoop集群数据。3.所有查询Hadoop集群数据的用户账号都需要经过权限管理模块验证,无权限的操作应该给予提示信息。4.根据各部门的职责限定该部门的人员使用的账号只能查询归属于该部门的数据。5.对于敏感信息应该只有特殊账号才可以进行查询。6.对于每次操作需要记录操作日志(时间,用户名,操作表),日志需要定时备份。

针对以上目标,形成如下任务

1.针对hiveserver增加权限控制功能。2.针对hivelib增加用户权限配置模块。3.针对hiveclient增加用户配置功能。4.扩展hive配置文件,增加4个保留配置。5.提供权限控制的web项目,用于权限配置。

控制内容

1.使用者同一个任务最大使用分区数量。用于控制map任务数量。2.使用者同一个任务最大reduce任务数量。3.使用者可使用的DB。4.使用者可使用的表。(如果该表所对应的db已经配置给该用户,则无需再单独进行配置)。5.使用者不允许访问的特殊列。6.使用者在使用某张表的时候必须使用的列。(暂时没有使用场景)7.针对用户的频道进行分区限制。

本次修改涉及范围

1.hiveserver修改hive-exec-0.8.1.jar,hive-common-0.8.1.jar,主要用于增加权限控制,和增加配置项2.hivelib(公司内部使用的python类库,通过thrift访问hive,抽取数据)修改hiveclient.py,同时增加conf配置。3.修改hiveclient针对conf/hive-site.xml增加配置项。4.利用django完成web权限分配项目。(开发快速)

下一章,将具体介绍如何完成以上步骤。

推荐阅读
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • Jquery 跨域问题
    为什么80%的码农都做不了架构师?JQuery1.2后getJSON方法支持跨域读取json数据,原理是利用一个叫做jsonp的概念。当然 ... [详细]
  • Request对象和Response对象request:(请求)当一个页面被请求时,Django就会创建一个包含本次请求原信息的HttpRequest对象。Djang ... [详细]
  • Hadoop2.6.0 + 云centos +伪分布式只谈部署
    3.0.3玩不好,现将2.6.0tar.gz上传到usr,chmod-Rhadoop:hadophadoop-2.6.0,rm掉3.0.32.在etcp ... [详细]
  • Django + Ansible 主机管理(有源码)
    本文给大家介绍如何利用DjangoAnsible进行Web项目管理。Django介绍一个可以使Web开发工作愉快并且高效的Web开发框架,能够以最小的代价构建和维护高 ... [详细]
  • python3 logging
    python3logginghttps:docs.python.org3.5librarylogging.html,先3.5是因为我当前的python版本是3.5之所 ... [详细]
  • 11月26日,由中国计算机协会(CCF)主办,CCF大数据专家委员会协办,CSDN承办的Hadoop与大数据技术大会(Hadoop&BigDataTechnology ... [详细]
  • Maven构建Hadoop,
    Maven构建Hadoop工程阅读目录序Maven安装构建示例下载系列索引 序  上一篇,我们编写了第一个MapReduce,并且成功的运行了Job,Hadoop1.x是通过ant ... [详细]
  • Django实现CMS内容管理系统mptt评论功能
    日常开发与内容相关的Web系统时,不管是Blog还是CMS,如果需要增加与用户互动的环节那肯定需要评论的功能,接下来基于Python的MPTT框架在Django中实现评论回复功能。 ... [详细]
  • 什么是大数据lambda架构
    一、什么是Lambda架构Lambda架构由Storm的作者[NathanMarz]提出,根据维基百科的定义,Lambda架构的设计是为了在处理大规模数 ... [详细]
  • Hadoop源码解析1Hadoop工程包架构解析
    1 Hadoop中各工程包依赖简述   Google的核心竞争技术是它的计算平台。Google的大牛们用了下面5篇文章,介绍了它们的计算设施。   GoogleCluster:ht ... [详细]
  • 对于开源的东东,尤其是刚出来不久,我认为最好的学习方式就是能够看源代码和doc,測试它的样例为了方便查看源代码,关联导入源代 ... [详细]
  • 如何在mysqlshell命令中执行sql命令行本文介绍MySQL8.0shell子模块Util的两个导入特性importTableimport_table(JS和python版本 ... [详细]
  • MR程序的几种提交运行模式本地模型运行1在windows的eclipse里面直接运行main方法,就会将job提交给本地执行器localjobrunner执行-- ... [详细]
author-avatar
weibophp
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有