
# 通过Hue执行HiveQL
#### 操作场景
Hue提供了Hive图形化管理功能，使用户可以通过界面的方式执行HiveQL语句、查询Hive的不同数据。
#### 访问编辑器
1. 访问Hue WebUI，请参考[访问Hue WebUI界面](https://support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_0132.html)。
2. 在左侧导航栏单击![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001676907178.png)，然后选择"Hive"，进入"Hive"。
   
   "Hive"支持以下功能：
   - 执行HQL语句 在左侧选中目标数据库，也可通过单击右上角的![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001906752974.png)，输入目标数据库的名称以搜索目标数据库。
     在文本编辑框输入HQL语句，单击![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001942312321.png)或者按"Ctrl+Enter"，运行HQL语句，执行结果将在"结果"页签显示。
     
   
   - 分析HQL语句 在左侧选中目标数据库，在文本编辑框输入HQL语句，单击![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001906593082.png)编译HQL语句并显示语句是否正确，执行结果将在文本编辑框下方显示。
     
   
   - 保存HQL语句 在文本编辑框输入HQL语句，单击右上角的![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001906752978.png)，并输入名称和描述。已保存的语句可以在"保存的查询"页签查看。
     
   
   - 查看历史 单击"查询历史记录"，可查看HQL运行情况，支持显示所有语句或只显示保存的语句的运行情况。历史记录存在多个结果时，可以在输入框使用关键字进行搜索。
     
   
   - 高级查询配置 单击右上角的![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001942312329.png)，对文件、函数、设置等信息进行配置。
     
   
   - 查看快捷键 单击右上角的![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001906593086.png)，可查看所有快捷键信息。
     
   
   
   
   
 
#### 元数据浏览器使用介绍
访问Hue WebUI，请参考[访问Hue WebUI界面](https://support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_0132.html)。
- 查看Hive表的元数据 在左侧导航栏单击表![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001906752982.png)，单击某一表名称，界面将显示Hive表的元数据信息。
  
- 管理Hive表的元数据 在Hive表的元数据信息界面：
  - 单击右上角的"导入"可导入数据。
  
  - 单击"概述"，在"属性"域可查看表文件的位置信息。 可查看Hive表各列字段的信息，并手动添加描述信息，注意此处添加的描述信息并不是Hive表中的字段注释信息（comment）。
    
  
  - 单击"样本"可浏览数据。
   
- 管理Hive元数据表 单击左侧列表中的![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001942312337.png)可在数据库中根据上传的文件创建一个新表，也可手动创建一个新表。
  
![](https://support.huaweicloud.com/cmpntguide-lts-mrs/public_sys-resources/caution_3.0-zh-cn.png)
Hue界面主要用于文件、表等数据的查看与分析，禁止通过Hue界面对操作对象进行删除等高危管理操作。如需操作，建议在确认对业务没有影响后通过各组件的相应操作方法进行处理，例如使用HDFS客户端对HDFS文件进行操作，使用Hive客户端对Hive表进行操作。
#### 执行HQL语句
1. 在"Database"右侧下拉列表选择一个Hive中的数据库，默认数据库为"default"。 
   系统将自动显示数据库中的所有表。可以输入表名关键字，系统会自动搜索包含此关键字的全部表。
   
   
2. 单击指定的表名，可以显示表中所有的列。 
   光标移动到表或列所在的行，单击 ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724866541.png)可以查看详细信息。
   
   
3. 在HQL语句编辑区输入查询语句。
4. 单击 ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001676747470.jpg) 开始执行HQL语句。
   
   图1执行语句   
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001676907186.png "点击放大")
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/public_sys-resources/note_3.0-zh-cn.png)
   - 如果希望下次继续使用已输入的HQL语句，请单击![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724866533.png)保存。
   
   - 高级查询配置： 单击右上角的![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724746661.png)，对文件、功能、设置等信息进行配置。
     
   
   - 查看快捷键： 单击右上角的![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724866529.png)，可查看语法和键盘快捷方式信息。
     
   
   - 删除已输入的HQL语句，请单击![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724746669.jpg)后的三角选择"清除"。
   
   - 查看历史： 单击"查询历史记录"，可查看HQL运行情况，支持显示所有语句或只显示保存的语句的运行情况。历史记录存在多个结果时，可以在输入框使用关键字进行搜索。
     
    
   
   
 
#### 查看执行结果
1. 在"Hive"的执行区，默认显示"查询历史记录"。
2. 单击结果查看已执行语句的执行结果。 
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/public_sys-resources/note_3.0-zh-cn.png)
   Hue暂不支持大数据量展示，当SQL查询结果加载过量时可能出现页面卡顿，部分数据不显示等情况。目前建议查询结果加载不超过5000行。
   
   
 
#### 管理查询语句
1. 单击"保存的查询"。
2. 单击一条已保存的语句，系统会自动将其填充至编辑区中。
 
#### 修改在Hue使用编辑器的会话配置
1. 在编辑器页面，单击 ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001676747454.jpg)。
2. 在"文件"的右侧单击 ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724746673.jpg) ，然后单击 ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724866549.jpg) 选择文件。
   
   可以单击"文件"后的 ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724746673.jpg) 新增加一个文件资源。
   
   
3. 在"功能" ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724746673.jpg) ，输入用户自定义的名称和函数的类名称。
   
   可以单击"功能"后的 ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724746673.jpg) 新增加一个自定义函数。
   
   
4. 在"设置" ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724746673.jpg) ，在"设置"的"键"输入Hive的参数名，在"值"输入对应的参数值，则当前Hive会话会以用户定义的配置连接Hive。
   
   可以单击 ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001724746673.jpg) 新增加一个参数。
   
   
 
#### 典型场景
通过Hue界面对Hive进行创建表的操作如下：
1. 单击Hue的WebUI界面左上角的![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001906593090.png)，选择要操作的Hive实例，进入Hive命令的执行页面。
2. 在命令输入框内输入一条HiveSQL语句，例如： 
   **create table hue_table(id int,name string,company string) row format delimited fields terminated by ',' stored as textfile;**
   单击![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001906752986.png "点击放大")执行HQL。
   图2执行语句   
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001942312341.png "点击放大")
   
   
3. 在命令输入框内输入： 
   **show tables;**
   单击![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001906593094.png "点击放大")，查看"结果"中有创建的表hue_table。
   图3查看结果   
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000001906753006.png "点击放大")
   
   
 
