无法通过在 cloudera quickstart VM 中使用 hue 创建的命令行找到 hive 表
Posted
技术标签:
【中文标题】无法通过在 cloudera quickstart VM 中使用 hue 创建的命令行找到 hive 表【英文标题】:Unable to find the hive table through command line which is created using hue in cloudera quickstart VM 【发布时间】:2017-05-06 02:50:14 【问题描述】:我正在使用 cloudera 快速入门虚拟机。通过 hue,我创建了一个 Oozie 作业并使用该作业创建了一个蜂巢表。作业执行成功。当我从桌面打开终端并连接到配置单元时,我看不到那里的表格。
我知道在独立集群中,配置单元元存储被创建到我们访问配置单元的位置。例如,如果我从桌面打开终端并创建一个配置单元表 tab1,那么配置单元元数据将仅在桌面创建。如果我从桌面以外的其他目录启动终端,那么我将无法在 hive 中看到 tab1。
这里也是如此。 Oozie 可能会从某个不同的目录位置启动 hive,因此我无法从 Desktop 中看到该表。
有人可以帮我查看表格吗?
【问题讨论】:
您是否将有效的hive-site.xml
传递给您的 Oozie 操作,以便它可以连接到 mysql 中的 持久元存储,正如 D.M. 所解释的那样?否则,Oozie 操作只会在 Derby 中启动一个私有的、易变的元存储,当作业结束时,您在其中创建的所有内容都会丢失。
【参考方案1】:
这似乎不对。 Cloudera 快速入门附带一个 MySQL 元存储。
bash-4.1$ </etc/hive/conf/hive-site.xml grep -A1 jdo
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://127.0.0.1/metastore?createDatabaseIfNotExist=true</value>
--
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
--
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
--
<name>javax.jdo.option.ConnectionPassword</name>
<value>cloudera</value>
bash-4.1$
bash-4.1$ mysql -uhive -pcloudera
mysql> select tbl_name from metastore.TBLS;
+----------------------------+
| tbl_name |
+----------------------------+
| my_tbl_1 |
| my_tbl_2 |
| my_tbl_3 |
+----------------------------+
3 rows in set (0.10 sec)
mysql>
【讨论】:
以上是关于无法通过在 cloudera quickstart VM 中使用 hue 创建的命令行找到 hive 表的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 Cloudera QuickStart VM 在 HIVE 中执行加入操作
如何在 cloudera quickstart VM 中创建 kudu 表
免安裝免設定的 Hadoop 開發環境 - cloudera 的 QuickStart VM
无法在 Windows 10 机器上使用 .vmdk 运行 cloudera VM