hive的安装与简单使用

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;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值