zoukankan      html  css  js  c++  java
  • hive基本操作与应用

    1.启动hadoop

    start-all.sh

    2.Hdfs上创建文件夹

    hdfs dfs -mkdir wcinput

    hdfs dfs -ls /user/hadoop

    3.上传文件至hdfs

    hdfs dfs -put ./509.txt wcinput

    hdfs dfs -ls /user/hadoop/wcinput

    4.启动Hive

    hive

    5.创建原始文档表

    create table docs(line string)

    6.导入文件内容到表docs并查看

    load data inpath '/user/hadoop/wcinput/509.txt' overwrite into table docs;

    select *from docs;//查看表信息

    7.用HQL进行词频统计,结果放在表word_count里

    用一张表,记录文件数据,文件的一行就是表里一个字段的数据,所以使用换行符作为分隔符,并以文件名为分区

    drop table file_data;
    create table file_data(context string) partitioned by (file_name string)row format delimited fields terminated by ' 'stored as textfile;

    从hdfs中把文件数据导入file_data

    cat /home/hadoop/demo.txt

    load data local inpath '/home/hadoop/demo.txt' overwrite into table file_data PARTITION(file_name='/home/hadoop/demo.txt');

    查询file_data

    select * from file_data;

    将切分出来的每个单词作为一行 记录到结果表里面

    select explode(split(context,' ')) from file_data where file_name='/home/hadoop/demo.txt';
    drop table wordcount;
    create table wordcount(context string) partitioned by (file_name string)row format delimited fields terminated by ' 'stored as textfile;
    insert overwrite table wordcount partition(file_name='/home/hadoop/demo.txt') select explode(split(context,' ')) from file_data where file_name='/home/hadoop/demo.txt';

    使用hql查询

    select context, count(context) from wordcount where file_name='/home/hadoop/demo.txt' group by context;

  • 相关阅读:
    android基于adb的性能测试
    mysql-3 数据表的创建、增删改查
    17.3.16---python内建函数
    17.3.15---C语言详解FILE文件操作
    17.3.15---关于GPIO控制流水灯的信息
    17.3.15---关于GPIO学习笔记
    17.3.14--对于时钟的知识,涉及到的总结
    17.3.14对于面向对象的理解
    17.3.13--pycharm2和3的常识问题
    17.3.13--python编码问题
  • 原文地址:https://www.cnblogs.com/ChalingStreet/p/9048603.html
Copyright © 2011-2022 走看看