欢迎来到我的独立博客:
3358 blog.y wheel.cn/post/2016/05/29/hue _ introduction /
在这期间,我给同事们做了Fue入门用的训练,所以顺便整理了一下。 本文首先简要介绍了HUE,然后介绍了如何为HUE贡献代码。
什么是HUE? HUE=Hadoop User Experience
Hue是一个开源的Apache Hadoop UI系统,从云era桌面演化而来,最后云era公司为基于Python Web框架Django实现的Apache基金会Hadoop社区做出了贡献
通过使用Hue,您可以在浏览器端的Web控制台中与Hadoop群集进行交互,以分析和处理数据,包括处理HDFS上的数据、执行MapReduce Job、执行Hive的SQL语句和浏览Hadoop数据库
HUE链接site :http://gethue.com/github 3360https://github.com/cloud era/huereviews 3360https://review.cloud era.org核心功能SQL Solr SQL、Phoenix…搜索引擎Solr的各种图表Spark和Hadoop的友好界面支持调度系统Apache Oozie,由workflow编辑、Hadoop提供
在HUE中查看Oozie workflow时,查看整个工作流的DAG图也很容易,但最新版本中删除了DAG图,只能看到工作流操作列表和他们之间的跳转关系。 想看DAG图的人可以使用oozie本机接口系统来看。
HUE登录如果您自己生成了HUE,则可以使用管理员帐户创建新用户,然后使用新用户登录。 请参考下图。
使用HUE官网的live demo就可以享受味道。 如果您没有自己构建大数据平台,也没有安装HUE,请先在demo上尝试一下。 点击Play with the live Demo now! 进入HUE的“我的文档”:
HDFS文件浏览HUE可以轻松浏览HDFS中的目录和文件,进行文件和目录的创建、复制、删除、下载、权限变更等操作。
HDFS实现了与POSIX系统相似的文件和目录权限模型。 每个文件和目录都有“所有者”owner )和“组”group )。 或目录对所有者、同一组中的其他用户和所有其他用户具有不同的权限。 使用33558www.Sina.com/HUE访问HDFS时,HDFS可以轻松检查hue上的用户名和组的名称权限。
在Live Demo中,单击“文件浏览器”进入HDFS主目录。
但,用户身份机制对HDFS本身来说只是外部特性。HDFS并不提供创建用户身份、创建组或处理用户凭证等功能。Live Demo禁止上传文件。
浏览作业单击Job Browser可查看作业列表。 也可以通过单击右上角的“成功”、“正在运行”、“失败”和“停止”来过滤处于不同状态的作业。
在实际工作中,在集群CDH5.2 )中配置HA后,如果活动资源管理器自动切换),例如NN1的资源管理器为活动,NN2为标准by,nnn 修复已知是NN2资源管理器的故障后,HUE的作业浏览器无法正常工作,直到NN1资源管理器再次进入活动状态。 不知道这个问题在后续版本中是否被修正了。
Hivequeryhue的beeswax app提供了易于使用、方便的hivequery功能,允许您选择不同的hive数据库、创建HQL语句、发送查询任务以及在界面下查看查询作业执行的日志。 得到结果后,还提供进行简单图表分析的能力。
数据浏览器- -单击元表还会显示Hive数据库、数据库表以及每个表的元数据等信息。
Oozie Workflow编辑HUE也经常提供Oozie的集成,在HUE上可以创建和编辑Bundles、Coordinator、Workflow. Oozie的介绍可以在官网上看到。 下图在HUE中创建新工作流。 在此界面中,可以直接拖动不同的组件使其成为DAG中的节点,并为每个ActionScript设置流逻辑。
当然,Oozie也可以在命令行上提交b、c、w .但可以是使用HUE创建的工作流,也可以是在命令行上提交的工作流
flow,都可以在HUE上查看运行的状况:
只是通过命令行提交的workflow就不可以在HUE上进行编辑了。使用配置文件、命令行提交的方式能够保证在生产环境上运行的和在测试环境上运行的版本一致,而使用HUE界面编辑的方式虽然方便,但也可能会带来人工操作在生产环境中失误的风险,有利也有弊吧。
Contribution
我在给同事准备培训材料的时候,到HUE的github上去查找资料。在看到HUE的主要功能时,github上的原文是这样的:
恰好我司主要使用的数据库是PostgreSQL,看到PostGresl感觉怪怪的,于是Google了一把,PostgreSQL有两个名字:PostgreSQL和Postgres,目前官方网站上的名字仍然是PostgreSQL. 不管PostGresl是否有什么典故,但是PostgreSQL一定是对的。因此,我去查了下如何给HUE提交代码修改。在Github上能找到wiki: Contribute to HUE, HUE有自己的JIRA和Review Board, 但也说了The Hue project gladly welcomes any patches or pull requests!
于是我在github上给HUE发了一个Issue和一个Pull Request。几天后Pull Request被接收,merge到了master分支上,可以看到这个Commit。
在这里记录一下更新的步骤:
Fork HUE的工程,比如 ywheel/hue创建一个新的分支,不要使用master分支提交修改。比如我创建了fix-postgresql-spelling分支。将代码pull下来,修改后commit,提交到fix-postgresql-spelling分支。创建issue。当HUE的工程上创建issue, 描述清楚问题,提交。点击’Pull Request’, 选择目的工程和分支,比如cloudera/hue的master分支。填写comment, 说明已创建的issue, create pull request.
接下来就是等了,等该提交被review, 被merge到master分支, 等你自己的名字出现在Contributors里面, then everything DONE!
ps: 虽然改了个单词拼写就出来说简直是丢人,不过算是一个good start, 希望能在不久的将来真的能给开源项目(特别是流行的大数据生态中的开源项目)贡献代码,加油!