• 二、hive shell常用命令


    在使用hive shell之前我们需要先安装hive,并启动hdfs

    请参考:https://www.cnblogs.com/lay2017/p/9973298.html

    hive shell

    我们先进入安装目录

    cd /usr/local/hadoop/hive/apache-hive-1.2.2-bin

    使用Hive命令启动hive shell

    hive

    查看一下数据库,发现有一个默认的default

    我们需要创建一个新的test数据库

    再看一下数据库,test数据库已经创建完成了

    我们切换到test数据库

    创建一张t_user表,你会看到创建表的语句显得似乎很麻烦,这么长一句

    CREATE TABLE users(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ' LINES TERMINATED BY '
    ' STORED AS TEXTFILE;

    我们分开来看,建表的简单语句,如

    create t_user(id int, name String);

    而每一列分隔符就是

    ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '

    每行的分隔符就是

    LINES TERMINATED BY '
    '

    最后存储的文件格式就是txt

    STORED AS TEXTFILE;

    为了更清楚建表语句为什么这么建,我们在/tmp目录下建立一个user.txt,内容如下(注意:每个单词之间是空格分隔,每行是 分隔,这也是为什么我们在建立hive的表的时候需要配置它的格式,因为我们在读取txt数据的时候需要按照格式进行读取,否则你将查询到一堆的null)

    1 lay
    2 marry
    3 gary

    然后我们在hive shell中,把该txt数据给加载到hive中

    load data local inpath '/tmp/user.txt' overwrite into table t_user; // 加载本地数据到t_user表中

    然后我们查询一下t_user表中的数据,如下

    数据就像关系型数据库一样展示,这就是hive的SQL简单查询功能

    常用命令

    create database test; // 创建数据库
    drop database test; // 删除数据库
    drop database test cascade; // 强制删除数据库
    show databases; // 列出所有数据库
    use test; // 使用数据库
    
    create t_user(id int, name String); // 创建表
    CREATE TABLE users(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ' LINES TERMINATED BY '
    ' STORED AS TEXTFILE; // 按照格式创建表,否则load data无法正常读取数据
    describe t_user; // 查询表结构
    drop table t_user; // 删除表
    alter table t_user add columns(age int); // 更改表,新增列
    load data local inpath '/tmp/user.txt' overwrite into table t_user; // 加载本地数据到t_user表中
    load data inpath '/tmp/user.txt' overwrite into table t_user; // 从hdfs加载数据到t_user表中

    参考文档:https://cwiki.apache.org/confluence/display/Hive/GettingStarted#GettingStarted-InstallationandConfiguration

  • 相关阅读:
    参考Shiro的自定义基于Spring的AOP横切模式
    Spring-@Value获取配置文件内容
    BeanPostProcessor Bean实例的初始化前后的自定义修改
    两台Linux主机之间免密scp复制文件及远程启动关闭Tomcat
    Shiro Realm领域
    test
    Linux 安装Oracle数据库
    Shiro Authorizer授权器
    HDU 1079 Calendar Game (博弈)
    MooFest POJ
  • 原文地址:https://www.cnblogs.com/lay2017/p/9973370.html
Copyright © 2020-2023  润新知