一、hive是什么东东

1. 个人理解
hive就是一个基于hdfs运行于MapReduce上的一个java项目,
这个项目封装了jdbc,根据hdfs编写了处理数据库的DDL/DML,自带的
二进制包内嵌Derby数据库,且默认使用Derby,简而言之,hive就是一个
帮助我们处理/分析数据的工具,不过这个工具却像namenode一样存储了
一份文件的元数据,这就有点像数据仓库的感觉
2. 架构
分为服务端、客户端,基于hadoop,运行在mapreduce,存储于hfds,
可与hbase结合使用,其中使用hql(hive sql)查询接口
3. 作用
将结构化得文件映射成表内容,并提供类sql查询功能
适合离线海量数据处理,简化mapreduce

二、hive的好处在哪,为什么要用它

简单易用,体现在类sql上,通常mapreduce的开发冗余繁琐,使用hive可以进行调优和提升开发效率,降低MapReduce学习成本,
另外hive的函数是可以自定义的,这样hive具备相应扩展型,存储在hadoop的文件系统上可以共享存储区域,
hdfs的集群扩展性也成为hive存储的扩展性,hive本身跑在mapreudce上,所以其优势在于离线处理海量数据,
对于小数据来讲并没有太大优势,因为处理数据时执行延迟较高,对于小数据量实时处理不推荐使用hive
hive本身跑在mapreudce上,所以其优势在于离线处理海量数据,对于小数据来讲并没有太大优势,
因为处理数据时执行延迟较高,对于小数据量实时处理不推荐使用hive
hive初始使用derby数据库,而derby数据库只能启动一个实例,但注意不同路径下启动hive是可以的

三、hive的处理类SQL做了什么操作

在client端下,类sql语句抽象化,从中判断是否有表,字段等信息,交于编译器转换成逻辑执行语句,
交于优化器进行优化,再交于执行器,形成可执行的物理计划,基于mapreduce底层实施mapreduce任务,
实际上hive就是实现mapreduce任务的一个模板

四、hive安装部署

1. 下载hive,选择合适的版本
地址:http://archive.apache.org/dist/hive/
2. 上传使用工具(filezilla.exe)或linux的rz命令
上传工具很多:filezilla,FlashFXP,Xftp,vmware-tools,notepad++...
可能会有文件夹权限问题,需要检查一下
3. 根据官网doc步骤
地址:https://cwiki.apache.org/confluence/display/Hive/GettingStarted
上传之后:
$ tar -xzvf hive-x.y.z.tar.gz
# 转到hadoop目录下
$ bin/hdfs dfs -mkdir /tmp
$ bin/hdfs dfs -mkdir -p /user/hive/warehouse
$ bin/hdfs dfs -chmod g+w /tmp
$ bin/hdfs dfs -chmod g+w /user/hive/warehouse

五、启动hive测试(注意hadoop架构要提前运行)

# 转到hive目录下
$ bin/hive
$ show databases;
$ show tables;
$ show partitions tbname;
$ show functions;
$ create database if not exists schooldb;
$ use schooldb;
$ create table if not exists student(
num int,
name string
)raw format delimited fields terminated by '\';
$ load data local inpath '/home/liuwl/opt/datas/studen.txt' into table student;

Hive_初步见解,安装部署与测试的更多相关文章

  1. Nginx安装部署与测试

    场景:项目需要部署在生产环境中,这些新的工具都需要在生产环境中去实践练习.有时间再部署一套ELK的日志分析系统,这样的系统才算具有一定的应用价值. 1 Nginx安装 用root用户安装,采用源代码编 ...

  2. (三)Hyperledger Fabric 1.1安装部署-chaincode测试

    环境搭建完毕,需要的工具和镜像安装完毕,就可以进行chaincode测试了,接下来参考官方教程运行first-network. 进入first-netwok: cd first-network fir ...

  3. 【大数据之数据仓库】安装部署GreenPlum集群

    本篇将向大家介绍如何快捷的安装部署GreenPlum测试集群,大家可以跟着我一块儿实践一把^_^ 1.主机资源 申请2台网易云主机,操作系统必须是RedHat或者CentOS,配置尽量高一点.如果是s ...

  4. Kafka的安装和部署及测试

    1.简介 大数据分析处理平台包括数据的接入,数据的存储,数据的处理,以及后面的展示或者应用.今天我们连说一下数据的接入,数据的接入目前比较普遍的是采用kafka将前面的数据通过消息的方式,以数据流的形 ...

  5. Flume NG安装部署及数据采集测试

    转载请注明出处:http://www.cnblogs.com/xiaodf/ Flume作为日志收集工具,监控一个文件目录或者一个文件,当有新数据加入时,采集新数据发送给消息队列等. 1 安装部署Fl ...

  6. qemu-kvm和openvswitch安装部署-qemu-kvm和openvswitch原型环境部署和基本测试 (1)

    qemu-kvm和openvswitch安装部署 本文包含两个部分: qemu-kvm的安装部署 openvswitch的安装部署 参考文档: kvm官网:http://www.linux-kvm.o ...

  7. redis cluster安装部署(测试环境)

    redis 应用于web前端,做缓存和数据存取的速度是挺可观的,最近看了一些资料,手痒了,就弄了一个测试环境,两台方案,试用一下. ##Redis 集群部署## 一,方案调研: 参考博客: http: ...

  8. LDAP-openldap服务部署和测试(YUM安装)

    1. 概述2. 服务端部署过程2.1 软件包说明2.2 部署过程2.3 配置过程3. 测试4. 生成LDIF格式文件4.1 安装migrationtools工具4.2 用migrationtools生 ...

  9. 测试环境docker-swarm安装部署

    测试环境swarm安装部署 部署前增加监听docker2375端口 centos 增加tcp监听端口 修改/lib/systemd/system/docker.service sed -i ‘s/Ex ...

随机推荐

  1. 串口编程 tcflush()函数 (转)

    tcflush函数刷清(扔掉)输入缓存(终端驱动法度已接管到,但用户法度尚未读)或输出缓存(用户法度已经写,但尚未发送). int tcflush(int filedes,int quene)  qu ...

  2. ios 音乐播放

    #import "ViewController.h" #import <AVFoundation/AVFoundation.h> @interface ViewCont ...

  3. 序列化 Serializable

    1.序列化是干什么的? 简单说就是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来.虽然你可以用你自己的各种各样的方法来保存object states,但 ...

  4. 学习linux内核时常碰到的汇编指令(2)

    转载:http://blog.sina.com.cn/s/blog_4be6adec01007xvh.html JNGE∶指令助记符——(有符号数比较)不大于且不等于转移(等价于JL).当SF和OF异 ...

  5. Android简单自定义圆形和水平ProgressBar

    ProgressBar简介 继承于View类,直接子类有AbsSeekBar和ContentLoadingProgressBar,其中AbsSeekBar的子类有SeekBar和RatingBar,可 ...

  6. hdu1503 最长公共子序列变形

    题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=1503 题意:给出两个字符串 要求输出包含两个字符串的所有字母的最短序列.注意输出的顺序不能 ...

  7. DSP using MATlAB 示例Example2.10

    上代码 % noise sequence 1 x = [3, 11, 7, 0, -1, 4, 2]; nx = [-3:3]; % given signal x(n) [y,ny] = sigshi ...

  8. vim使用01

    安装与基础配置 iTerm快捷操作 清屏: <C l>/<W k> 剪切: <W x> 复制: <W v> 新增窗口: <W d> 切换窗口 ...

  9. node http 服务

    var http = require("http") http.createServer(function(req,res){ res.writeHead(200,{"C ...

  10. Graphics 导出图片使用【这个主要是画图类图的使用,记录一下】

    /// <summary> /// 导出信令流程矢量图 /// </summary> /// <param name="signalFlowInfos" ...