bigdata_hive初识

一、hive概念

       hive:面向数据分析的存储系统

       数据仓库和数据库对比分析

       关系:

  • 两者均是用来存储数据的,即均为数据的存储载体。
  • 数据仓库也是数据库,是数据库的一种衍生、延深应用。
  • 数据仓库的出现,并不是要取代数据库,且当下大部分数据仓库还是用关系数据库管理系统来管理的,即数据库、数据仓库相辅相成、各有千秋。

        区别:     

  •   数据库是面向事务的设计,数据仓库是面向主题设计的。
  • 数据库是为捕获数据而设计,即实时性强吞吐量弱,数据仓库是为分析数据而设计,即吞吐量强实时性弱。
  • 数据库设计是尽量避免冗余,数据仓库在设计是有意引入冗余。
  • 数据库一般存储在线交易数据,实时性强存储空间有限,数据仓库存储的一般是历史数据,实时性弱但存储空间庞大。

二、hive架构设计

      1.hive cli

          shell输入hive 进入hive cli

          查看所有数据库: show databases;(所有命令记得打分号)

          创建数据库:create database 库名;

          跟sql语句差不多

     2.架构设计

       

   User interface 用户接口

  Hive CLI  在shell中用命令行执行,代码简单,功能也简单;

  Hive Client  需要编写java或其他语言代码,一般是两者结合使用;

  HWI   基本没人用;

  HiveServer2相当于一个转接器,实现跨语言接口调用;

三、hive基础应用

    1.hive数据模型

  

 2.数据操作分类

DDL:

•建表

•删除表

•修改表结构

•创建/删除视图

•创建数据库 

•显示命令

  • external: 创建内部表还是外部表,此为内外表的唯一区分关键字。
  • comment col_comment: 给字段添加注释
  • comment table_comment: 给表本身添加注释
  • partitioned by: 按哪些字段分区,可以是一个,也可以是多个
  • clustered by col_name... into num_buckets BUCKETS:按哪几个字段做hash后分桶存储
  • row format:用于设定行、列、集合的分隔符等设置
  • stored as : 用于指定存储的文件类型,如text,rcfile等
  • location : 设定该表存储的hdfs目录,如果不手动设定,则采用hive默认的存储路径

 

hive的内外表

概念说明:

  • Hive将表的分类共2类,即内外表。
  • 以元数据和实体数据的操作权限作为分类依据。
  • Create [external] table ……  加external
  • 应用场景
  • 数据表生成时,如果是hive内部自生成的表则统一设置内表,如果不是自生成的,而是外部导入的,则设置为外表。
  • 特点特征
  • 外表:元数据归Hive管,实体数据不归Hive而是归Hdfs,删表的话,只会删除Hive元数据,不会改变实体数据。
  • 内表:元数据和实体数据全归Hive管理,一删全删。

视图:

查看所有视图show views;

DML:

•数据插入

加载数据脚本:

LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)](新hive已不支持本地传输)

DQL:

•数据查询(select)

        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值