Hue is a popular SQL editor for querying and visualizing data. Hue allows the user to connect to Hive-LLAP and Hive on Tez, and with a minor change to hive-site.xml, the user can connect Hue to Hive on MR3 as well.

In order to use Hue, the user should set the configuration key hive.execution.engine to tez in hive-site.xml before launching Hue so that Hue is tricked into thinking that it is connecting to Hive on Tez. This is because 1) Hue does not recognize mr3 as a valid value for hive.execution.engine and 2) the protocol to connecting to Hive on MR3 is exactly the same as to Hive on Tez. On the other hand, the user can set hive.execution.engine to mr3 when running Hive on MR3. In essence, it is only at the time of launching Hue that hive.execution.engine should be set to tez.

Connecting Hue to Hive on MR3 involves two steps: 1) running HiveServer2; 2) configuring Hue.

Running HiveServer2

The user can start HiveServer2 just as usual, e.g., by setting the configuration key hive.execution.engine to mr3 in hive-site.xml. From MR3 1.0, it is also okay to set hive.execution.engine to tez.

Configuring Hue

Set the configuration key hive.execution.engine to tez in hive-site.xml, if it is still set to mr3. Then update the beeswax section of the initialization script for Hue (e.g., hue.ini) appropriately.

[beeswax]
  hive_server_host=10.1.91.18
  hive_server_port=9832
  hive_metastore_host=10.1.91.18
  hive_metastore_port=9850
  hive_conf_dir=/home/gitlab-runner/mr3-run/conf/tpcds/hive3

Launch Hue and it should properly connect to HiveServer2.

access.hue