Hive
爱吃甜食_
一点点进步,让编程更有趣
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Hive外部表和内部表的区别
Hive外部表和内部表的区别Hive外部表和内部表的区别Hive外部表和内部表的区别创建表语句外部表:创建表时指定external关键字创建的是外部表内部表:创建表时不指定external创建的表是内部表,即创建表默认创建的是内部表存储位置内部表:内部表默认存储在/user/hive/warehouse处,由配置项hive.metastore.warehouse.dir的值决定外部表:外部表默认也是存储在/user/hive/warehouse处,使用Location关键字可以指定存原创 2020-07-07 09:27:51 · 521 阅读 · 0 评论 -
hive-12 hive常用的调优方案
hive常用的调优方案Fetch抓取本地模式表的优化join调优group by调优count调优笛卡尔积使用分区剪裁、列剪裁并行执行严格模式JVM重用推测执行压缩使用Explain数据倾斜合理设置Map数小文件合并复杂文件增加Map数合理设置Reduce数Fetch抓取本地模式表的优化join调优group by调优count调优笛卡尔积使用分区剪裁、列剪裁并行执行严格模式JVM重用推测执行压缩使用Explain数据倾斜合理设置Map数小文件合并复杂文件增加Map数合原创 2020-06-29 17:40:42 · 657 阅读 · 0 评论 -
hive 多分割符解决方案
多分割符解决方案通过MultiDelimitSerDe 解决通过RegexSerDe 解决使用关键字 row format serde和with SerdeProperties通过MultiDelimitSerDe 解决create table t1 (id String, name string)row format serde 'org.apache.hadoop.hive.contrib.serde2.MultiDelimitSerDe'WITH SERDEPROPERTIES ("fie原创 2020-06-28 20:38:22 · 458 阅读 · 0 评论 -
hive-11hive表的数据压缩和存储
hive表的数据压缩hive的压缩数据压缩的评价常见的压缩格式Hadoop编码/解码器方式压缩性能的比较压缩配置参数开启Map输出阶段压缩开启Reduce输出阶段压缩压缩格式的选择HIve表的文件存储格式列式存储和行式存储TEXTFILE格式ORC格式ORC格式的读取PARQUET格式存储文件的查询速度测试存储和压缩结合创建一个非压缩的的ORC存储方式创建一个SNAPPY压缩的ORC存储方式存储方式和压缩总结:hive的压缩数据压缩的评价可使用以下三种标准对压缩方式进行评价压缩比:压缩比越高,压缩原创 2020-06-28 20:33:28 · 474 阅读 · 0 评论 -
hive-10 hive高级查询之排序
hive高级查询之排序order by 全局排序按照别名排序每个MapReduce内部排序(Sort By)局部排序distribute by 分区排序cluster bydistribute by与group by对比order by与sort by 对比order by 全局排序使用order by进行全局排序,只有一个reduce。默认是升序使用order by字句排序,子句在select语句的末尾asc升序(默认)desc降序select * from score s order原创 2020-06-28 15:03:35 · 1575 阅读 · 0 评论 -
hive-9 hive高级查询之join
hive高级查询之joinhive join 支持的类型注意事项Join操作内连接(inner join)左外连接(left [outer] join)右外连接 (right [outer] join)满外连接 (full [outer] join)左半连接(LEFT SEMI JOIN)笛卡尔积关联(CROSS JOIN)多表连接join原理join原理之common joinjoin原理之map joinjoin的优化官网地址hive join 支持的类型hive中支持:内关联(JOIN)左原创 2020-06-28 14:11:17 · 658 阅读 · 0 评论 -
hive-8 高级查询之having
Having 用处having用于group by之后的的分组统计Having和Where的区别where作用于表中的列,having作用于查询结果中的列where后不能写分组函数,having后可以使用分组函数示例求每个学生平均分数大于60的人select s_id,avg(s_score) as avgScore from scoregroup by s_idhaving avgScore > 60;...原创 2020-06-27 20:14:59 · 7165 阅读 · 0 评论 -
hive-7 Hive高级查询之group-by
Group-by用处Group by语法示例注意高级特性:Multi-Group-By Insertsgroup by 优化用处group by经常和聚合函数一起使用,按照一个活多个列对结果进行分组,然后对每个组进行聚合操作。Group by语法groupByClause: GROUP BY groupByExpression (, groupByExpression)*groupByExpression: expressiongroupByQuery: SELECT expression原创 2020-06-27 18:34:09 · 1724 阅读 · 2 评论 -
hive-6 基础查询
基础查询查询语法SQL书写顺序SQL执行顺序基础查询查询全表和特定列例起别名常用函数查询语法SELECT [ALL | DISTINCT] select_expr, select_expr, ... FROM table_reference [WHERE where_condition] [GROUP BY col_list] [ORDER BY col_list] [CLUSTER BY col_list | [DISTRIBUTE BY col_list] [SORT B原创 2020-06-27 12:31:23 · 162 阅读 · 0 评论 -
hive-5 hive运算符
算数运算符运算符描述A+BA和B 相加A-BA减去BA*BA和B 相乘A/BA除以BA%BA对B取余A&BA和B按位取与A|BA和B按位取或A^BA和B按位取异或~AA按位取反比较运算符操作符支持的数据类型描述A=B基本数据类型如果A等于B则返回true,反之返回falseA<=>B基本数据类型如果A和B都为NULL,则返回true,其他的和等号(=)操作符转载 2020-06-27 09:47:13 · 372 阅读 · 0 评论 -
hive-4 hive数据的导入和导出
Hive数据导入直接向表中插入(Insert)数据不推荐使用:每个insert语句产生一个MR任务,大量的insert语句会产生大量的小文件hive> create table score3 like score;hive> insert into table score3 partition(month ='2200601') values ('001','002','100');通过load加载数据filepath:相等路径: project/data1绝对路径:/us原创 2020-06-26 18:07:41 · 264 阅读 · 0 评论 -
Hive-3 分区和分桶
Hive分区分区的目的:将大的数据分割成小数据,减少分析时的扫描量,提高效率。如:可以将数据按天分区,每天分析前一天的数据。创建分区表语法 create table score(s_id string, c_id string, s_score int) partitioned by (month string) row format delimited fields terminated by '\t';创建一个表带多个分区create table score2 (s_id原创 2020-06-25 23:00:46 · 608 阅读 · 0 评论 -
hive 严格模式
Hive严格模式概述Hive提供了一个严格模式,可以防止用户执行那些可能产生意向不到的不好的效果的查询。说通俗一点就是这种模式可以阻止某些查询的执行。通过如下语句设置严格模式:hive> set hive.mapred.mode=strict;设置为严格模式后,可以禁止3种类型的查询:带有分区的表的查询如果在一个分区表执行hive,除非where语句中包含分区字段过滤条件来显示数据范围,否则不允许执行。换句话说就是在严格模式下不允许用户扫描所有的分区。进行这个限制的原因是,通常分区表都转载 2020-06-25 14:05:07 · 207 阅读 · 0 评论 -
Hive-2 Hive的DDL操作
Hive的DDL操作数据库DDL操作创建数据库显示所有数据库模糊查询数据库查看数据库详情切换当前数据库删除数据库表DDL操作建表语法创建内部表创建外部表创建内部表创建内部表创建内部表创建内部表创建内部表创建内部表DDL是数据库模式定义语言,是用于描述数据库中要存储的现实世界实体的语言。数据库DDL操作创建数据库hive > create database myhiv;或者hive > create database if not exists db_hive;或者 create原创 2020-06-24 00:58:23 · 676 阅读 · 0 评论 -
Hive-1 数仓和Hive基本概念
数仓和Hive基本概念数仓基础知识数仓基本概念数仓特点数仓和数据库的主要区别OLTP和OLAP数据仓库的分层架构数据仓库分层的目的数仓的三层架构数仓的四层架构ETLHive概念Hive的优缺点Hive框架原理Hive SQL执行过程简述Hive数据类型基本数据类型复合数据类型数仓基础知识数仓基本概念数仓英文名Data Warehouse ,简写为DW或DWH。数仓的目的是构建面向分析的数据环境,数仓本身不产生数据,也不消耗数据。数据来源于外部,并且开放给外部使用。这也是数仓为什么叫“仓库”,而不是原创 2020-06-22 23:00:20 · 807 阅读 · 0 评论
分享