hive的安装与简单使用

来源:互联网 发布:数据结构与算法总结 编辑:程序博客网 时间:2024/04/29 02:05

1、安装hive【安装hive之前必须安装好mysql】

1.1 把hive的压缩包解压。1.2 产生一个文件
cp  conf/hive-default.xml.template  conf/hive-site.xml
1.3 把hive-site.xml中<configuration></configuration>中的内容清空。1.4 在里面添加如下内容,如下配置的意义在于metastore的数据存放到mysql中:
<property>        <name>javax.jdo.option.ConnectionURL</name>        <value>jdbc:mysql://192.168.62.1:3306/hive?createDatabaseIfNotExist=true</value>    </property>    <property>        <name>javax.jdo.option.ConnectionDriverName</name>        <value>com.mysql.jdbc.Driver</value>    </property>    <property>        <name>javax.jdo.option.ConnectionUserName</name>        <value>mysql用户名</value>    </property>    <property>        <name>javax.jdo.option.ConnectionPassword</name>        <value>mysql密码</value>    </property>
1.5 把mysql的驱动jar包放到hive的lib目录下。1.6 执行bin/hive脚本,进入hive的命令行。

2、操作hive

2.1 创建内部表
create table t1(name string, time int, page string) row format delimited fields terminated by '\t';
2.2 导入数据【批量】    2.2.1 从linux导入文件到hive表中:
//把linux上的文件/root/visits上传到HDFS的t1目录中。load data local inpath '文件路径' into table t1;  
    ******导入数据的时候,可以通过load data这种语法导入,也可以使用hdfs dfs -put直接上传数据到t1目录中。    ******如果上传的数据格式与t1的表结构不一致,那么显示的时候,不合适的数值显示为NULL。    2.2.2 从hdfs导入文件到hive表中:
load data inpath 'hdfs中的文件路径' into table t1;
    ******从hdfs导入到hive表中,会把原始数据移动到hive表的目录下,不建议这么做。!!!!!2.3 读模式与写模式    mysql:写模式,指的是写入数据的时候做校验,有利于存储的数据的规范,但是影响插入速度。    hive:读模式,指的是写入数据不做校验,有利于批量导入。2.4 创建外部表    ******数据不在hive的管辖范围内。删除表的时候,不会删除数据。
create external table ip(列名 列类型, 列名 列类型) row format delimited fields terminated by '\t' location '指定数据文件所在位置';
    ******使用外部表的时候,创建表之后可以不用导入数据,因为数据在外部的目录下已经存在了。2.5 函数    2.5.1 显示全部函数
show functions;
    2.5.2 查询某个函数的用法
describe function xxxx;
0 0
原创粉丝点击