• 初识hive


    1.什么是hive

    hive是基于Hadoop构建的一套数据仓库分析系统。

    hive表类似mysql的视图(不存储数据,映射数据 补充 Hadoop存储的不是关系数据库,但是可以映射成类似关系型数据库)。

    2.为什么使用hive

    使用MapReduce实现复杂查询逻辑开发难度大,学习成本高。

    3.hive的作用

    可以将Hadoop中结构化的数据文件映射成一张hive数据表(类似一个视图,并不存储数据)。

    可以将SQL语句转换成MapReduce任务运行,查询分析自己的内容。

    4.适用场景

    非实时的,离线,响应不高的数据查询计算

    补充:关于hive表数据导入

    hive表的数据需要别的方法导入,并不是通过sql查询直接将数据从Hadoop导入hive表

    hive的sql查询只针对hive表。

    1.从本地文件系统中导入数据到Hive表

    load data local inpath 本地文件 into table 目标表;

    2.HDFS上导入数据到Hive表 

    load data local inpath 本地文件 into table 目标表;

    本地导入:复制数据到HDFS下,再移动到hive表数据目录下。

    HDFS导入:数据直接移动到hive表目录下

    3.从别的表中查询出相应的数据并导入到Hive表中

    insert into 目标表 partition (分区) select * from 源表;

    两个表名复制字段必须相同(支持多表插入)。

    4.在创建表的时候通过从别的表中查询出相应的记录并插入到所创建的表中

    create table 目标表 as  select id, name, tel from 源表;
    

      CTAS:表的输出结果可能太多,不适于显示在控制台上,将Hive的查询输出结果直接存在一个新的表中是非常方便的,我们称这种情况为CTAS(create table .. as select)。

    总结:

    1.hive表类似Hadoop视图,不具体存数据,而是映射数据。

    2.SQL查询是针对hive表,hive再转换成对应的MapReduce进行并行计算。

    3.hive表数据有4种导入方式。

    补充:

    HDFS:分布式文件系统(类似分级文件系统)

    使用Hadoop和关系型数据库的区分指标(数据量的大小)

  • 相关阅读:
    mysql中txt的导入及导出
    邮箱手机正则
    用yum安装完mysql后没有mysqld的问题
    利用php在图片上写字(中英文)
    修改MYSQL密码及权限
    mysql 索引!
    MySQL对表的复制,修改及删除
    防止表单重复提交!
    Linux学习篇SVN命令详解
    Linux 安装PHP配置参数
  • 原文地址:https://www.cnblogs.com/Gang-Bryant/p/12209341.html
Copyright © 2020-2023  润新知