一、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. Eclipse·如何关联Git库文件和添加JUint库

    Eclipse创建工程并关联到文件(SVN或Git管理的代码文件) 新建java工程,用于存放工程的一些信息,默认存放地址. 工程相关的信息是不需要提交到(SVN或Git)版本库的,所以工程存放到本地 ...

  2. Eclipse查看JDK源码

    设置 点 "window"-> "Preferences" -> "Java" -> "Installed JR ...

  3. Javascript实现时钟

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  4. java判断字符串是否为数字或中文或字母

     个人认为最好的方法 *各种字符的unicode编码的范围:     * 汉字:[0x4e00,0x9fa5](或十进制[19968,40869])     * 数字:[0x30,0x39](或十进制 ...

  5. 【框架】网络请求+Gson解析--Retrofit 2

    其实内部是封装了Okhttp和Gson解析 public class CourseFragmentAPI { public static void get(String userId, BaseCal ...

  6. this和super

    1.this * 每个类的每个非静态方法(没有被static修饰)都会隐含一个this引用名称,它指向调用这个方法的对象. * 当在方法中使用本类的属性时,都会隐含地使用this名称,当然也可以明确指 ...

  7. android中随着ScrollView的滑动,titleBar状态的改变

    今天项目有一个需求,,类是于QQ空间里面的一个功能,于是就研究了一下,嗯,说这么多,可能还有人不知道指的是那个,直接上效果图.见谅,不会弄动态图:   对,就是这种效果,我研究了一下,思路如下: 1. ...

  8. Java常用命令

    jps    查看java进程的PID java -XX:+PrintFlagsInitial    显示所有可设置参数及默认值 java -XX:+PrintFlagsFinal    获取到所有可 ...

  9. express-15 与生产相关的问题

    执行环境 Express支持执行环境的概念,它是一种在生产.开发或测试模式中运行应用程序的方法.实际上你可以按自己的想法创建很多种不同的环境. 要记住,开发.生产和测试是"标准"环 ...

  10. Javascript参考手册

    ---------------------------------------------------------------------------------------------------- ...