欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Hive Getting Started补充

程序员文章站 2022-07-02 16:14:29
配置管理概述 Hive从/conf/hive-default.xml中读取它的默认配置 Hive配置目录的位置可以通过设置HIVE_CONF_DIR环境变量的值来改变 配置变量可以被改变,通过/conf/hive-site.xml中重新定义(PS: ......
配置管理概述 Hive从<install-dir>/conf/hive-default.xml中读取它的默认配置 Hive配置目录的位置可以通过设置HIVE_CONF_DIR环境变量的值来改变 配置变量可以被改变,通过<install-dir>/conf/hive-site.xml中重新定义(PS:意思就是可以hive-site.xml中的配置项可以覆盖hive-default.xml中同名的配置) Log4j配置存储在<install-dir>/conf/hive-log4j.properties Hive配置默认继承Hadoop配置变量 在hive-site.xml中可以定义任何你需要的配置变量,包括hadoop中的配置变量也是可以定义在这里面的 Hive日志

Hive用log4j记录日志,默认情况下通过命令行操作的日志会输出到控制台。默认的日志级别是INFO。

日志文件存放的目录是/tmp/<user.name>:

/tmp/<user.name>/hive.log

通过在$HIVE_HOME/conf/hive-log4j.properties中设置hive.log.dir可以改变日志存放的目录,务必确保该目录的权限是1777

DDL操作

创建Hive表

Hive Getting Started补充

创建一个表,名字叫做pokes,它有两列,第一列是integer类型,第二列是string类型

Hive Getting Started补充

创建一个表,名字叫invites。它有两个列和一个名字叫ds的分区列。这个分区列是一个虚的列,它不是表数据的的一部分,它在将一个特别的数据集加载到分区的时候很有用。

Hive Getting Started补充

DML操作

Hive Getting Started补充

加载一个文件到pokes表,这个文件有两列,列用ctrl-a分隔。'LOCAL'表示输入文件在本地文件系统,如果'LOCAL'被省略的话,将从HDFS中查找文件。

关键'OVERWRITE'表示如何表中存在数据则会被删除。如果'OVERWRITE'关键字被省略,那么数据文件则会被追加到已有的数据后面。

注意:

通过加装命令加装数据的时候不会验证数据是否违背schema 如果文件在HDFS中,那么将被移动到Hive所控制的命名空间中 Hive数据的根目录是在hive-default.xml中hive.metastore.warehouse.dir指定的

Hive Getting Started补充

Hive Getting Started补充

上面的两条加载语句分别加载数据到invites表的不同分区中。表invites在创建的时候必须被分区,并且分区的名字叫ds。

Hive Getting Started补充

上面这条命令从HDFS中加载数据到表中。

注意,从HDFS中加载数据的结果就是移动文件或目录,因此,这个操作非常快。

 

Hive Getting Started补充

Hive Getting Started补充