Hue简单介绍
HUE=Hadoop User Experience
个人理解:可视图的webui界面,方便大数据技术之间的CRUD操作。
官方定义:Hue是一个能够与Apache Hadoop交互的Web应用程序。一个开源的Apache Hadoop UI。
特性:一个HDFS的文件浏览器,一个MapReduce/YARN的Job浏览器,一个 HBas的浏览器,Hive,Pig,Cloudera Impala 和 Sqoop2 的查询编辑器。它还附带了一个Oozie的应用程序,用于创建和监控工作流程,一个Zookeeper浏览器和SDK。
演变:Hue是一个开源的Apache Hadoop UI系统,由Cloudera Desktop演化而来,最后Cloudera公司将其贡献给Apache基金会的Hadoop社区,它是基于Python Web框架Django实现的。
hue的核心功能:
SQL编辑器,支持Hive, Impala, MySQL, Oracle, PostgreSQL, SparkSQL, Solr SQL, Phoenix…
搜索引擎Solr的各种图表
Spark和Hadoop的友好界面支持
支持调度系统Apache Oozie,可进行workflow的编辑、查看
HUE提供的这些功能相比Hadoop生态各组件提供的界面更加友好,但是一些需要debug的场景可能还是需要使用原生系统才能更加深入的找到错误的原因。
HUE中查看Oozieworkflow时,也可以很方便的看到整个workflow的DAG图,不过在最新版本中已经将DAG图去掉了,只能看到workflow中的action列表和他们之间的跳转关系,想要看DAG图的仍然可以使用oozie原生的界面系统查看
hue架构说明和与其他技术的整合
由于大数据框架很多,为了解决某个问题,一般来说会用到多个框架,但是每个框架又都有自己的web UI监控界面,对应着不同的端口号。比如HDFS(50070)、YARN(8088)、MapReduce(19888)等。这个时候有一个统一的web UI界面去管理各个大数据常用框架是非常方便的。这就使得对大数据的开发、监控和运维更加的方便
从上图可以看出,Hue几乎可以支持所有大数据框架,包含有HDFS文件系统对的页面(调用HDFS API,进行增删改查的操作),有HIVE UI界面(使用HiveServer2,JDBC方式连接,可以在页面上编写HQL语句,进行数据分析查询),YARN监控及Oozie工作流任务调度页面等等。
Hue通过把这些大数据技术栈整合在一起,通过统一的Web UI来访问和管理,极大地提高了大数据用户和管理员的工作效率。
这里总结一下Hue支持哪些功能:
默认基于轻量级sqlite数据库管理会话数据,用户认证和授权,可以自定义为MySQL、Postgresql,以及Oracle
- 基于文件浏览器(File Browser)访问HDFS
- 基于Hive编辑器来开发和运行Hive查询
- 支持基于Solr进行搜索的应用,并提供可视化的数据视图,以及仪表板(Dashboard)
- 支持基于Impala的应用进行交互式查询
- 支持Spark编辑器和仪表板(Dashboard)
- 支持Pig编辑器,并能够提交脚本任务
- 支持Oozie编辑器,可以通过仪表板提交和监控Workflow、Coordinator和Bundle
- 支持HBase浏览器,能够可视化数据、查询数据、修改HBase表
- 支持Metastore浏览器,可以访问Hive的元数据,以及HCatalog
- 支持Job浏览器,能够访问MapReduce Job(MR1/MR2-YARN)
- 支持Job设计器,能够创建MapReduce/Streaming/Java Job
- 支持Sqoop 2编辑器和仪表板(Dashboard)
- 支持ZooKeeper浏览器和编辑器
- 支持MySql、PostGresql、Sqlite和Oracle数据库查询编辑器
- 使用sentry基于角色的授权以及多租户的管理.(Hue 2.x or 3.x)
hue支持的框架
-> hadoop
-> HDFS
-> CRUD
-> yarn
-> 任务的监控
-> 自动刷新,权限管理
-> oozie
-> 任务的监控及调度
-> 便捷的任务流的图形化的编写
-> PIG
-> hive
-> 提供简洁的图形化操作界面
-> 提供报表的生成
-> impala
-> hbase
-> sqoop2
-> RDBMS
-> MySQL
-> oracle