zoukankan      html  css  js  c++  java
  • 大数据技术之Hive

          最近入职一家公司,本以为是java开发,没想到是大数据处理,于是开始了大数据的学习:大数据(big data),IT行业术语,是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。在维克托·迈尔-舍恩伯格及肯尼斯·库克耶编写的《大数据时代 [1]  中大数据指不用随机分析法(抽样调查)这样捷径,而采用所有数据进行分析处理。大数据的5V特点(IBM提出):Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、Veracity(真实性)。

          Hive:由Facebook开源用于解决海量结构化日志的数据统计。

          Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供SQL查询功能。 本质是:将HQL转化成MapReduce程序

         1Hive处理的数据存储在HDFS

         2Hive分析数据底层的实现是MapReduce

         3)执行程序运行在Yarn

     

     优点

     

         1) 操作接口采用类SQL语法,提供快速开发的能力(简单、容易上手)

     

         2) 避免了去写MapReduce,减少开发人员的学习成本

     

         3) Hive的执行延迟比较高,因此Hive常用于数据分析,对实时性要求不高的场合

     

         4) Hive优势在于处理大数据,对于处理小数据没有优势,因为Hive的执行延迟比较高

     

         5)Hive支持用户自定义函数,用户可以根据自己的需求来实现自己的函数

     缺点

        1.HiveHQL表达能力有限

        (1)迭代式算法无法表达

        (2)数据挖掘方面不擅长由于MapReduce数据处理流程的限制,效率更高的算法却无法实现。

        2.Hive的效率比较低

        (1Hive自动生成的MapReduce作业,通常情况下不够智能化

        (2Hive调优比较困难,粒度较粗

     

       Hive基本操作

     

        (1)启动hive

     

                  [root@hadoop102 hive]$ bin/hive

     

       (2)查看数据库

     

                 hive> show databases;

     

       (3)打开默认数据库

     

                hive> use default;

     

       (4)显示default数据库中的表

     

               hive> show tables;

     

       (5)创建一张表

     

               hive> create table student(id int, name string);

     

       (6)显示数据库中有几张表

     

              hive> show tables;

     

       (7)查看表的结构

     

             hive> desc student;

     

       (8)向表中插入数据

     

           hive> insert into student values(1000,"ss");

     

       (9)查询表中数据

     

            hive> select * from student;

     

       (10)退出hive

     

             hive> quit;

           (11)删除已创建的student

            hive> drop table student;

       (12)创建student, 并声明文件分隔符’ ’

            hive> create table student(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ';

          13)加载/opt/module/datas/student.txt 文件到student数据库表中。

           hive> load data local inpath '/opt/module/datas/student.txt' into table student;

     

     

     

  • 相关阅读:
    2021“MINIEYE杯”中国大学生算法设计超级联赛(4)
    Spring Boot从入门到精通(十一)集成Swagger框架,实现自动生成接口文档
    Spring Cloud 从入门到精通(二)集成 Nacos 构建微服务实现服务注册
    Spring Cloud 从入门到精通(一)Nacos 服务中心初探
    Apache HBase 1.7.1 发布,分布式数据库
    DB2 SQL Error: SQLCODE=-668, SQLSTATE=57016错误解决方法
    脱离OBDeploy工具,手工部署OceanBase方法
    剑指Offer26.树的子结构
    剑指Offer21.调整数组顺序使奇数偶数前面
    剑指Offer14-I|LeetCode343.剪绳子|整数拆分
  • 原文地址:https://www.cnblogs.com/dibinbin/p/13153603.html
Copyright © 2011-2022 走看看