一 .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. idea中使用git进行clone、分支切换、pull、push等

    转:https://blog.csdn.net/xiaobai__lee/article/details/81081128 https://blog.csdn.net/geng31/article/d ...

  2. nodejs中的fiber(纤程)库详解

    fiber/纤程 在操作系统中,除了进程和线程外,还有一种较少应用的纤程(fiber,也叫协程).纤程常常拿来跟线程做对比,对于操作系统而言,它们都是较轻量级的运行态.通常认为纤程比线程更为轻量,开销 ...

  3. JQuery 学习总结及实例 !! (转载)

    出自 new:http://www.jianshu.com/users/1967b163cb61/latest_articles 1.JQuery简介 普通JavaScript的缺点:每种控件的操作方 ...

  4. Lua库-bit32库

    Global = Global or {}; local bits = {}; function bits.bxor(num1,num2) local ret=bit32.bxor(num1,num2 ...

  5. VM中Centos安装

    本例中的vm是12版本的. VM设置 首先是vm的设置,相当于是买电脑的过程 首先文件 -> 新建虚拟机 然后 然后 然后 然后 然后 然后 然后 然后 然后 然后 然后 然后 然后 点击完成之 ...

  6. 【Graphql实践】使用 Apollo(iOS) 访问 Github 的 Graphql API

    最近在协助调研 Apollo 生成的代码是否有可能跨 Query 共享模型的问题,虽然初步结论是不能,并不是预期的结果,但是在调研过程中积累的一些经验,有必要记录下.如果你也对 Graphql 感兴趣 ...

  7. Head First Java学习笔记

    1.基本概念 1.1.工作方式 源代码(.java)---编译器(执行javac程序)---产生字节码(.class与平台无关)---JAVA虚拟机(JVM,读取与执行字节码) 1.2.汇编语言是对基 ...

  8. 463. Island Perimeter (5月29日)

    解答 class Solution { public: int islandPerimeter(vector<vector<int>>& grid) { int num ...

  9. python2.7+PyQt4+eric6 界面开发环境配置

    1.安装环境: python2.7 PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x64.exe eric6-18.12.zip 2.安装步骤: 1.安装python2.7的过程略 2 ...

  10. 【淘宝客】PHPMailer-v6.0.5版 发送邮件dome

    话不多说,根据官方dome修改下,官方更新地址:https://github.com/PHPMailer/PHPMailer <?php use PHPMailer\PHPMailer\PHPM ...