hive和hbase

hive:适合用来进行分析统计;

hbase:用来进行实时查询。

hive的应用答题相当于mysql:

切换到当前数据库:hive:use database;

创建数据库命令:hive:create database financials;

删除数据库时,不允许删除的数据库中有数据,若有数据则会报错。这是可以用加有CASCADE关键字的命令删除;

hive:drop database databasename cascade;

或者:drop database if exists databasename cascade;

查看当前数据库中的表:hive:show tables in databasename;

或者:hive:show tables like ‘h*‘;

查看所有的数据库。

hive> show databases ;

hive> describe databases DbName; --查看数据库信息

truncate table table_a ;   清空一个表的数据(hive 0.11.0 支持)

?          通过Alter关键字修改DB相关信息

hive> ALTER DATABASE financials SET DBPROPERTIES (‘edited-by‘ = ‘Joe Dba‘);

首先Hive有内部表,和External Table外部表两种表的概念。内部表就是通过Hive自身创建的表,并由Hive本身来管理数据。

而外部表,则是通过Hive建立表的Metadata提供一些数据查询服务,比如一些HDFS文件,Pig,Hbase的文件都可以通过Hive进行批处理和查询。

使用外部表就使用CREATE EXTERNAL TABLE,增加External关键字,并且通过LOCATION关键字指定外部表的数据存放位置。

内部表使用LOCATION关键字时指定该表的存放在HDFS中位置。

在使用DELETE TABLE 命令的时候,内部表的数据会与表结构一起删除,而外部表则只会删除表结构。

与RDBMS不一样,Hive支持各种数据类型,常用的是string,bigint,double

日期类型也是使用string来存储。

此外,Hive支持各种结构,如Map,Array,Struct,这些数据类型非常强大。

create table choice(userid int,classname string)

row format delimited fields terminated by ‘\t‘

STORED AS TEXT FILE

LOCATION ‘/data/test01/daxingyu930’;

STORED AS TEXTFILE 关键字指代数据的存储格式为文本格式,如果对数据进行压缩,可以使用RCFILE或者是SEQUENCE FILE。

此外可以将从hive表中查询得到的信息插入倒新的表格中、放到本地文件系统中或者hdfs文件系统中。

1.将select的结果放到一个的的表格中(首先要用create table创建新的表格)

insert overwrite table test

select uid,name from test2;

2.将select的结果放到本地文件系统中

INSERT OVERWRITE LOCAL DIRECTORY ‘/tmp/reg_3‘

SELECT a.* FROM events a;

3.将select的结果放到hdfs文件系统中

INSERT OVERWRITE DIRECTORY ‘/tmp/hdfs_out‘

SELECT a.* FROM invites a WHERE a.ds=‘‘;

链接:http://blog.sina.com.cn/s/blog_72d544900101f1i8.html

时间: 2024-12-13 10:35:48

hive和hbase的相关文章

HIVE和HBASE区别

1. 两者分别是什么? Apache Hive是一个构建在Hadoop基础设施之上的数据仓库.通过Hive可以使用HQL语言查询存放在HDFS上的数据.HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce. 虽然Hive提供了SQL查询功能,但是Hive不能够进行交互查询--因为它只能够在Haoop上批量的执行Hadoop. Apache HBase是一种Key/Value系统,它运行在HDFS之上.和Hive不一样,Hbase的能够在它的数据库上实时运行,而不是运行MapRedu

Hive集成HBase;安装pig

Hive集成HBase 配置 将hive的lib/中的HBase.jar包用实际安装的Hbase的jar包替换掉 cd /opt/hive/lib/ ls hbase-0.94.2* rm -rf hbase-0.92* cp /opt/hbase/hbase-0.94.2* 将Hive的lib/中的zookeeper.jar包用HBase中lib/中的替换掉 步骤同上 在hive-site.xml中添加: <property> <name>hive.aux.jars.path&l

Hive(五):hive与hbase整合

配置 hive 与 hbase 整合的目的是利用 HQL 语法实现对 hbase 数据库的增删改查操作,基本原理就是利用两者本身对外的API接口互相进行通信,两者通信主要是依靠hive_hbase-handler.jar工具类. 但请注意:使用Hive操作HBase中的表,只是提供了便捷性,前面章节已经介绍,hiveQL引擎使用的是MapReduce,对于性能上,表现比较糟糕,在实际应用过程中可针对不同的场景酌情使用. 注意:本文介绍的内容适用的版本见我前面章节,HDP2.4.2 ( HBase

Hive和Hbase的区别

1. 两者分别是什么? Apache Hive是一个构建在Hadoop基础设施之上的数据仓库.通过Hive可以使用HQL语言查询存放在HDFS上的数据.HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce. 虽然Hive提供了SQL查询功能,但是Hive不能够进行交互查询--因为它只能够在Haoop上批量的执行Hadoop. Apache HBase是一种Key/Value系统,它运行在HDFS之上.和Hive不一样,Hbase的能够在它的数据库上实时运行,而不是运行MapRedu

Hadoop Hive与Hbase关系 整合

用hbase做数据库,但因为hbase没有类sql查询方式,所以操作和计算数据很不方便,于是整合hive,让hive支撑在hbase数据库层面 的 hql查询.hive也即 做数据仓库 1. 基于Hadoop+Hive架构对海量数据进行查询:http://blog.csdn.net/kunshan_shenbin/article/details/7105319 2. HBase 0.90.5 + Hadoop 1.0.0 集成:http://blog.csdn.net/kunshan_shenb

hive与hbase数据类型对应关系

hive与hbase数据类型对应关系 当hbase中double,int 类型以byte方式存储时,用字符串取出来必然是乱码. 在hivd与hbase整合时也遇到这个问题:做法是:#b 1.加#b CREATE EXTERNAL TABLE hivebig (key string,CUST_NAME string,PHONE_NUM int,BRD_WORK_FLUX double) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHand

hive存储处理器(StorageHandlers)以及hive与hbase整合

此篇文章基于hive官方英文文档翻译,有些不好理解的地方加入了我个人的理解,官方的英文地址为: 1.https://cwiki.apache.org/confluence/display/Hive/StorageHandlers 2.https://cwiki.apache.org/confluence/display/Hive/HBaseIntegration 一 存储处理器介绍 通过HIVE存储处理器,不但可以让hive基于hbase实现,还可以支持cassandra JDBC MongoD

Hive over HBase和Hive over HDFS性能比较分析

转载至: http://lxw1234.com/archives/2015/04/101.htm   mark - 参考学习 环境配置: hadoop-2.0.0-cdh4.3.0 (4 nodes, 24G mem/node) hbase-0.94.6-cdh4.3.0 (4 nodes,maxHeapMB=9973/node) hive-0.10.0-cdh4.3.0 查询性能比较: query1: select count(1) from on_hdfs; select count(1)

[Hive]HBaseIntegration:通过Hive读写HBase

业务背景 unmatch_oppon_pro是一张Hive表,现在需要将其导入到HBase中. Hive中的unmatch_oppon_pro的表结构如下: 字段 类型 id bigint site_id int product_code string product_name string product_url string update_time string product_price double appraisal_num int sold_num int 导入到HBase时,将 p

大数据时代之hadoop(六):hadoop 生态圈(pig,hive,hbase,ZooKeeper,Sqoop)

大数据时代之hadoop(一):hadoop安装 大数据时代之hadoop(二):hadoop脚本解析 大数据时代之hadoop(三):hadoop数据流(生命周期) 大数据时代之hadoop(四):hadoop 分布式文件系统(HDFS) 大数据时代之hadoop(五):hadoop 分布式计算框架(MapReduce) hadoop是有apache基金会所开发的分布式系统基础架构,其主要提供了两方面的功能:分布式存储和分布式计算.其中分布式存储是分布式计算的基础,在hadoop的实现里面,提