一 .Hive安装及初体验

1 .hive简介

  Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。

  1.1直接使用hadoop面临的问题

  人员学习成本太高

  项目周期要求太短

  MapReduce实现复杂查询逻辑开发难度太大

  1.2为什么要使用hive

  操作接口采用类SQL语法,提供快速开发的能力。

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

  扩展功能很方便。

  1.3hive的特点

  可扩展->Hive可以自由的扩展集群的规模,一般情况下不需要重启服务。

  延展性->Hive支持用户自定义函数,用户可以根据自己的需求来实现自己的函数。

  容错->良好的容错性,节点出现问题SQL仍可完成执行。

2.hive安装

  hive只在集群中一个节点安装即可

  2.1 安装mysql数据库

  2.2 在apache 下载 hive安装包,并解压。

  2.3配置hive

    2.3.1 配置HIVE HOME环境变量

      vi conf/hive-env.sh 配置其中的$hadoop_home

    2.3.2 配置元数据信息  vi  hive-site.xml   

<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property> <property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property> <property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>username to use against metastore database</description>
</property> <property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
<description>password to use against metastore database</description>
</property>
</configuration>

hive-site.xml

    2.3.3 上传mysql驱动jar包至hive lib目录

    2.3.4 启动报错问题

    Jline包版本不一致的问题,需要拷贝hive的lib目录中jline.2.12.jar的jar包替换掉hadoop中的  /home/hadoop/app/hadoop-2.6.4/share/hadoop/yarn/lib/jline-0.9.94.jar

    2.3.5 启动hive

      bin/hive 

3.hive使用

  使用hive操作hadoop有两种方式。

  3.1使用bin/hive

[hadoop@hadoop1 hive]$ bin/hive

Logging initialized using configuration in jar:file:/home/hadoop/apps/hive/lib/hive-common-1.2..jar!/hive-log4j.properties
hive>

  3.2使用beeline hive自带

    先启动hiveserver2然后使用beeline进行连接

      

[hadoop@hadoop1 bin]$ ./beeline
Beeline version 1.2. by Apache Hive
beeline> !connect jdbc:hive2://localhost:10000
Connecting to jdbc:hive2://localhost:10000
Enter username for jdbc:hive2://localhost:10000: hadoop(默认使用当前用户作为用户名)
Enter password for jdbc:hive2://localhost:10000: (密码默认没有设置为空)
Connected to: Apache Hive (version 1.2.)
Driver: Hive JDBC (version 1.2.)
Transaction isolation: TRANSACTION_REPEATABLE_READ
: jdbc:hive2://localhost:10000>

  3.3初步操作

    3.3.1创建数据库  

0: jdbc:hive2://localhost:10000> create database shizhan01;

    3.3.2创建表

0: jdbc:hive2://localhost:10000> create table t_shizhan01(id int ,name string)
0: jdbc:hive2://localhost:10000> row format delimited
0: jdbc:hive2://localhost:10000> fields terminated by ',';

    row format delimited:按行读取

    fields terminated by ',':字段分隔符使用','分隔

    执行完后再hdfs上会生成 /user/hive/warehouse/shizhan01.db/t_shizhan01目录,然后将和表关联的数据放在该目录,然后就可以使用hql操作该数据。

    3.3.3将数据上传至/user/hive/warehouse/shizhan01.db/t_shizhan01目录

    数据为一个文本文档 格式如下:   

1000,zhangsan
2000,lisi
3000,wangwu
4000,baip
5000,lhe

    3.3.4上传成功后执行查询

    

    至此 hive初步使用已完成!

一 Hive安装及初体验的更多相关文章

  1. .net core安装及初体验

    .net core安装及初体验 .net core 作为微软的新一代技术,在开发跨平台.微服务等方面有很大的优势,也更贴近现代的编码习惯.在2.0版发布很久以后,近期终于决定进行学习和体验. 安装 作 ...

  2. 深度学习之TensorFlow安装与初体验

    深度学习之TensorFlow安装与初体验 学习前 搞懂一些关系和概念 首先,搞清楚一个关系:深度学习的前身是人工神经网络,深度学习只是人工智能的一种,深层次的神经网络结构就是深度学习的模型,浅层次的 ...

  3. 2016款MACBOOK PRO触控条版 安装WIN10初体验 及 无奈退货记

    新的2016MBP终于发布了,作为把苹果电脑装WIN使用的人,等候很久之后,终于可以行动了. 黄山松 (Tom Huang) 发表于博客园http://www.cnblogs.com/tomview/ ...

  4. SP2013 SP1(kb28805502)补丁安装测试初体验

    安装完SP1(kb28805502)第一印象是整体页面加载浏览速度非常快了,在笔记本建立的虚拟机能达到肉眼感觉不到卡顿真的是非常快了. 1.新添加了页面个性化设置功能菜单 3.默认访问网站的页面显示, ...

  5. CentOS PHP-5.4.8 编译安装之初体验

    1. 下载5.4.8 版本 [root@Test data] wget http://museum.php.net/php5/php-5.4.8.tar.gz 2. 解压 [root@Test php ...

  6. redis学习心得之一【安装redis初体验】

    在linux下安装redis 说起这个比mysql的安装过程简单多乐,它不需要configure,只需要解压之后make就可以,无需make install ~$ wget http://redis. ...

  7. Redis 安装与初体验

    一.Redis简介 Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...

  8. docker安装mongo初体验

    1.docker安装在此不做介绍,请自行百度:个人环境是在windows下运行cmd执行docker命令2.打算在docker下安装使用mongo,顺带熟悉docker,拉开篇章3.docker下安装 ...

  9. codeblocks 的安装与初体验

    下载 链接 安装  点击默认安装即可! 配置 自带编译器还报错!! 大多数自带编译器的codeblocks安装后无法找到编译器的解决方案 点击Settings->Compiler,找到Toolc ...

随机推荐

  1. spring的声明式的事物管理和编程事务管理的区别

    一.Spring对编程式事务的支持 Spring中的事务分为物理事务和逻辑事务: 物理事务:就是底层数据库提供的事务支持,如JDBC或JTA提供的事务: 逻辑事务:是Spring管理的事务,不同于物理 ...

  2. mapper.xml中动态sql抽取重复项

    mabatis重点是通过标签对sql灵活的组织,通过配置的方式完成输入 输出映射. 1.对mapper.xml中重复的sql抽取统一维护,以及foreach使用 UserMapperCustom.xm ...

  3. halcon 数字转字符串实现循环读取图片

    1.将字符转换为数字 tuple_number (StringImageIndex,IntImageIndex) 2.将数字转换为字符 tuple_string (IntImageIndex, '0' ...

  4. Collections.synchronizedList线程安全性陷阱

    摘要: 详细的解析:Collections.synchronizedList 1 :关注要点,为什么在有synchroniezed方法的同时会出现 Collections.synchronizedLi ...

  5. Advanced Plugin Concepts

    Provide Public Access to Default Plugin Settings An improvement we can, and should, make to the code ...

  6. Servlet Struts2 SpringMVC 获取参数与导出数据 方法比较

    servlet中通过request.getParameter()从网页获取参数 通过request session servletContext几个域对象的setAttribute(String ,O ...

  7. Swift_TableView(delegate,dataSource,prefetchDataSource 详解)

    Swift_TableView(delegate,dataSource,prefetchDataSource 详解) GitHub import UIKit let identifier = &quo ...

  8. Javascript Code Style Guide

    本指南采用的Airbnb发布的基于ES5的JavaScript Code Style. ES5 英文版:https://github.com/airbnb/javascript/tree/es5-de ...

  9. jQuery动态绑定事件(左右移动)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. Java并发编程:CountDownLatch、CyclicBarrier和 Semaphore[转]

    [转载]http://www.cnblogs.com/dolphin0520/p/3920397.html 在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDow ...