视频: GCP-How to Install Cloudera Manager on Google Cloud Cluster 2024
第一个Hive客户端是Hive命令行界面(CLI)。要掌握Hive CLI客户端的更多细节,可能有助于查看(有点忙碌的)Hive体系结构。
在第二个图中,体系结构进行了简化,只关注运行CLI时所需的组件。
<! --1 - >这些是在Hadoop集群上运行CLI时所需的Hive组件。在这里,您以本地模式运行Hive,本地模式使用本地存储,而不是HDFS。
要运行Hive CLI,请执行hive命令并将CLI指定为要运行的服务。在下面的列表中,您可以看到所需的命令以及我们的一些首个HiveQL语句。 (列表中包含使用A-B-C模型的步骤注释,以引导您注意到键盘命令。)
<! (A)$ $ HIVE_HOME / bin hive --service cli (B) hive> set hive。 CLI。打印。当前。分贝= TRUE; (C) 配置单元(默认)> CREATE DATABASE ourfirstdatabase; OK所用时间:3. 756秒 (D) 配置单元(默认)>使用ourfirstdatabase; OK所用时间:0.039秒 (E) hive(ourfirstdatabase)> CREATE TABLE our_first_table(>名字字符串,>姓氏字符串,> EmployeeId INT); OK所需时间:0.043秒hive(ourfirstdatabase)> quit; (F) $ ls / home / biadmin / Hive / warehouse / ourfirstdatabase。 db our_first_table 第一个命令(请参阅步骤A)使用$ HIVE_HOME环境变量启动Hive CLI。 -service cli命令行选项指示Hive系统启动命令行界面,尽管您可以选择其他服务器。
<!接下来,在步骤B中,告诉Hive CLI打印当前的工作数据库,以便知道您在命名空间中的位置。 (在我们解释如何使用下一个命令之后,这个语句会有意义,所以请紧紧抓住。)在步骤C中,使用HiveQL的数据定义语言(DDL)创建第一个数据库。 (请记住,Hive中的数据库只是特定表所在的名称空间;因为一组表可以被认为是一个数据库或模式,您可以使用SCHEMA来代替DATABASE来实现相同的结果。
更具体地说,您使用DDL告诉系统创建一个名为ourfirstdatabase的数据库,然后在步骤D中使用USE命令将该数据库设置为后续HiveQL DDL命令的默认值。在步骤E中,创建第一个表,并给它(相当合适)的名字our_first_table。(到目前为止,您可能已经认为它看起来很像SQL,根据您习惯的哪种RDBMS,在语法上可能会有一些细微的差别 - 而且您会是对的。)最后的命令是步骤F,执行你选择的Hive仓库目录的目录列表,以便你可以看到our_first_table实际上已经存储在磁盘上。你设置蜂巢。 metastore。仓库。 dir变量指向Linux虚拟机中的本地目录/ home / biadmin / Hive / warehouse,而不是像在适当的Hadoop集群上那样使用HDFS。
创建表之后,查看表的元数据很有意思。在生产环境中,可能有数十个表或更多,因此有时可以查看表结构。您
c
和
使用HiveQL命令使用Hive CLI执行此操作,但Hive Web Interface(HWI)服务器为此类操作提供了有用的界面。
使用HWI服务器而不是CLI也可以更安全。在生产环境中使用CLI时必须仔细考虑,因为运行CLI的计算机必须能够访问整个Hadoop集群。因此,系统管理员通常使用安全shell(ssh)等工具,以便为运行CLI的机器提供受控和安全的访问以及提供网络加密。但是,当使用HWI Server时,用户只能通过其Web浏览器访问HWI Server允许的Hive数据。