
Hive
代码与思路齐飞
这个作者很懒,什么都没留下…
展开
-
hive中的本地模式
hive中的hql语句的执行大部分最后转化为了mr,但是执行的过程非常的慢,可以使用本地模式提高效率,不过不适合大数据量的时候。需要开启本地模式:sethive.exec.mode.local.auto=true;这时再去执行相同的hql时,会发现速度提高很多。但是,本地模式主要用来做调试,不能配置到hive-site.xml中,因为本地模式,会只在当前机器上执行mr,如果原创 2017-04-19 21:40:54 · 473 阅读 · 0 评论 -
metadata远程存储和hive.metastore.local属性的说明
官网上对hive.metastore.local属性的解释为:local or remote metastore (Removed as of Hive 0.10: If hive.metastore.uris is empty local mode is assumed, remoteotherwise);即本地或者远程的元数据(在hive0.10版本上删除列这个属性;如果hive.me转载 2017-04-19 23:02:31 · 2110 阅读 · 0 评论 -
hive的metastore的选择
metastore是hive元数据的集中存放地,Hive中的元数据包括表的名字,表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等。Hive将元数据存储在数据库中(metastore),目前只支持 mysql、derby。metastore默认使用内嵌的derby数据库作为存储引擎,但是我们一般选择使用mysql作为meta的存储位置。原创 2017-04-19 22:59:08 · 630 阅读 · 0 评论 -
hive表的DDL操作
查看表hive> show tables;创建表hive> create table t1(id int);查看表结构hive> desc [extended] t1;extended是可选的,是扩展的表的信息删除表hive> drop table t1;重命名表的名称h原创 2017-04-19 22:23:28 · 1019 阅读 · 0 评论 -
hive常用语句示例
1/ DDL1.1 内部表和外部表(external)create table t_2(id int,name string,salary bigint,add string)row format delimitedfields terminated by ',';create external table t_3(id int,name string,sala转载 2017-04-19 22:22:14 · 567 阅读 · 0 评论 -
数据的两种加载模式
读模式数据库加载数据的时候不进行数据的合法性校验,在查询数据的时候将不合法的数据显示为NULL,好处:加载速度快,适合大数据的加载。写模式数据库加载数据的时候要进行数据的合法性校验,在数据库里面的数据都是合法的好处:适合进行查询,不会担心有不合法的数据存在。hive使用的就是读模式,而mysql等数据库使用的则是写模式。原创 2017-04-19 22:15:30 · 764 阅读 · 0 评论 -
hive的三种复合数据类型array、map、struct以及自定义分割符示例
Hive的数据类型主要有int、boolean、date、array、map、struct等,在这只描述array,map,struct三种。1.array(等同于数组,可以使用下标来操作相应的元素)默认分割符下的array,示例如下:有一群学生,id,name,hobby(多个)create table t3_arr(id int,na原创 2017-04-19 22:04:21 · 8314 阅读 · 0 评论 -
hive的四种表类型
Hive表有受控表(内部表)、外部表、分区表、桶表四种。内部表,就是一般的表,前面讲到的表都是内布标,当表定义被删除的时候,表中的数据随之一并被删除。外部表,数据存在与否和表的定义互不约束,仅仅只是表对hdfs上相应文件的一个引用,当删除表定义的时候,表中的数据依然存在。创建外部表,external是外部表的关键字,也是和内部表有区别的地原创 2017-04-19 22:02:46 · 10570 阅读 · 0 评论 -
hive视图和索引的简单介绍
Hive和mysql等数据库一样,也有视图的概念,视图实际上是一张虚拟的表,是对数据的逻辑表示,只是一种显示的方式,主要的作用是:1、视图能够简化用户的操作2、视图使用户能以多钟角度看待同一数据3、视图对重构数据库提供了一定程度的逻辑独立性4、视图能够对机密数据提供安全保护5、适当的利用视图可以更清晰的表达查询如何创建一个视图?create原创 2017-04-19 22:01:10 · 738 阅读 · 0 评论 -
数据的导出
这个是数据装载的反向过程,有两种方式1°、在hdfs的直接上操作hadoop fs -cp src_uri dest_uri或者hive> export table tblName to'hdfs_uri';2°、在终端使用directoryinsert overwrite [local] directory'linux_fs_path' selec原创 2017-04-19 21:42:34 · 290 阅读 · 0 评论 -
hive中数据的几种加载方式
1、从linux fs和hdfs中加载load data [local] inpath 'path' [overwrite] into table tblName [partition_sepc];[local]:如果加上表示本地地址,如果没有表示HDFS上的地址。[overwrite]:如果加上表示覆盖之前的数据,如果没有表示追加之前的数据。[partition_原创 2017-04-19 23:05:22 · 3296 阅读 · 0 评论