Hive高级】的更多相关文章

第8章 压缩和存储(Hive高级)8.1 Hadoop源码编译支持Snappy压缩8.1.1 资源准备8.1.2 jar包安装8.1.3 编译源码8.2 Hadoop压缩配置8.2.1 MR支持的压缩编码8.2.2 压缩参数配置8.3 开启Map输出阶段压缩8.4 开启Reduce输出阶段压缩8.5 文件存储格式8.5.1 列式存储和行式存储8.5.2 TextFile格式8.5.3 Orc格式8.5.4 Parquet格式8.5.5 主流文件存储格式对比实验8.6 存储和压缩结合8.6.1 修…
第3节 hive高级用法:16.hive当中常用的几种数据存储格式对比:17.存储方式与压缩格式相结合:18.总结 hive当中的数据存储格式: 行式存储:textFile sequenceFile 都是行式存储 列式存储:orc parquet 可以使我们的数据压缩的更小,压缩的更快 数据查询的时候尽量不要用select * 只选取我们需要的字段即可 hive的数据存储格式:用的比较多的一种行式存储 : textfile 用的比较多的列式存储: orc parquet 其中orc底层有自带的一…
hive的高级数据类型主要包括:数组类型.map类型.结构体类型.集合类型,以下将分别详细介绍. 1)数组类型 array_type:array<data_type> -- 建表语句 create table test.array_table( name   string, age    int, addr   array<string> ) row format delimited fields terminated by ',' collection items termina…
scala> import org.apache.spark.sql.hive.HiveContextimport org.apache.spark.sql.hive.HiveContext scala> val hcon=new HiveContext(sc)warning: there was one deprecation warning; re-run with -deprecation for detailshcon: org.apache.spark.sql.hive.HiveCo…
HiveServer2 概述: https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Overview2 客户端: https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Clients Hive数据压缩 压缩格式: bzip2, gzip, lzo, snappy等 压缩比:bzip2>gzip>lzo bzip2最节省存储空间 解压速度:lzo>gzi…
hive当中的数据存储格式: 行式存储:textFile sequenceFile 都是行式存储 列式存储:orc parquet 可以使我们的数据压缩的更小,压缩的更快 数据查询的时候尽量不要用select * 只选取我们需要的字段即可 hive的数据存储格式:用的比较多的一种行式存储 : textfile 用的比较多的列式存储: orc parquet 其中orc底层有自带的一种压缩算法,会对数据进行压缩的比较厉害 实际工作当中,很多时候,列式存储的数据格式都是选择orc或者parquet…
六.hive的数据压缩 在实际工作当中,hive当中处理的数据,一般都需要经过压缩,前期我们在学习hadoop的时候,已经配置过hadoop的压缩,我们这里的hive也是一样的可以使用压缩来节省我们的MR处理的网络带宽 6.1.MR支持的压缩编码 压缩格式 工具 算法 文件扩展名 是否可切分 DEFAULT 无 DEFAULT .deflate 否 Gzip gzip DEFAULT .gz 否 bzip2 bzip2 bzip2 .bz2 是 LZO lzop LZO .lzo 否 LZ4 无…
4.2.Hive参数配置方式 Hive参数大全: https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties 开发Hive应用时,不可避免地需要设定Hive的参数.设定Hive的参数可以调优HQL代码的执行效率,或帮助定位问题.然而实践中经常遇到的一个问题是,为什么设定的参数没有起作用?这通常是错误的设定方式导致的. 对于一般参数,有以下三种设定方式: l  配置文件 l  命令行参数 l  参数声明   配…
在输出结果较多,需要输出到文件中时,可以在hive CLI之外执行hive -e "sql" > output.txt操作 但当SQL语句太长或太多时,这种方式不是很方便,可以考虑将SQL语句存为sql.hql文件中,然后执行 hive -f sql.hql >output.txt操作 如果是多个语句,且要输出到多个文件,只好把SQL写在shell脚本中,下面附一个例子 start_day=$ end_day=$ start_date=`date +"%Y-%m-…
Hive SQL练习之成绩分析 数据:[id, 学号,班级,科目,成绩] 1,1,1,yuwen,80 2,1,1,shuxue,85 3,2,1,yuwen,75 4,2,1,shuxue,70 5,3,1,yuwen,86 6,3,1,shuxue,72 7,4,2,yuwen,88 8,4,2,shuxue,99 9,5,2,yuwen,86 10,5,2,shuxue,94 11,6,2,yuwen,56 12,6,2,shuxue,96 题目: (1)求每个班级前三名的同学(组内top…
完整PDF下载:<HIVE简明教程> 前言 Hive是对于数据仓库进行管理和分析的工具.但是不要被“数据仓库”这个词所吓倒,数据仓库是很复杂的东西,但是如果你会SQL,就会发现Hive是那么的简单,简单到甚至不用学就可以使用Hive做出业务需求所需要的东西. 但是Hive和SQL毕竟不同,执行原理.优化方法,底层架构都完全不相同. 大数据离线分析使用Hive已经成为主流,但是目前市面上Hive相关的中文书籍只有一本<Hive编程指南>,对于不懂技术的数据分析人员来说,这本书有些繁琐…
Hi,博友: 我是解耀伟,笔名是虾皮,最近我在极客学院录制Hive系列教程,也是督促自己学习一种方式,可以把自己的学习积累有方向,星期天也能做点有意义的事情.在做每一期的过程中,需要找资料,总结,先自己融合才能讲出来.由于是自己第一次做网上视频课,里面会有错误,还请把错误发给我(xieyaowei1986@163.com),我在日后的视频中注意调整.以前是看别人视频,现在也轮到自己录制了,心中有些期许.我会尽力把每期做好. 红:已经上线:蓝:在制作中:黑:未开始做: 备注:未做的会根据看的资料进…
一.Hive的几种数据模型 内部表 (Table 将数据保存到Hive 自己的数据仓库目录中:/usr/hive/warehouse) 外部表 (External Table 相对于内部表,数据不在自己的数据仓库中,只保存数据的元信息) 分区表 (Partition Table将数据按照设定的条件分开存储,提高查询效率,分区----->  目录) 桶表 (Bucket Table本质上也是一种分区表,类似 hash 分区   桶 ----> 文件) 视图表 (视图表是一个虚表,不存储数据,用来…
 前提条件:已经安装好如下软件 Eclipse4.5 hadoop-2.7.3 jdk1.7.0_79 此篇文章基于上一篇文章:zookeeper高可用集群搭建 什么是Hive? 1.Hive是一个基于Hadoop文件系统之上的数据仓库结构.它为数据仓库的管理提供了许多功能:数据ETL(抽取.转换和加载)工具.数据存储管理和大型数据集的查询和分析能力. 2.同时Hive定义了类SQL的语句:它能够将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能.还允许开发人员方便的使用Mappe…
一.Fetch Task 在执行hive代码的时候,一条简单的命令大部分都会转换成为mr代码在后台执行, 但是有时候我们仅仅只是想获取一部分数据而已,仅仅是获取数据,还需要转化成为mr去执行吗? 那个也太浪费时间和内存啦,所以有一个hive的配置如下所示: #在hive-default.xml.template默认配置中可知:SELECT STAR, FILTER on partition columns, LIMIT only 这些查询是不走MapReduce的 <property> <…
本文参考:黑泽君相关博客 本文是我总结日常工作中遇到的坑,结合黑泽君相关博客,选取.补充了部分内容. 查询函数(Hive高级) NVL(cloumn,replace_with) 如果cloumn为NULL,则NVL函数返回 replace_with 的值: 否则返回cloumn的值: 如果两个参数都为NULL,则返回NULL. hive> select nvl(a,1) from (select null as a) as aa; 1 Time taken: 0.147 seconds, Fet…
第一章.hive入门 一.hive入门手册 1.什么是数据仓库 1.1数据仓库概念 对历史数据变化的统计,从而支撑企业的决策.比如:某个商品最近一个月的销量,预判下个月应该销售多少,从而补充多少货源. 1.2传统数据仓库面临的挑战 (1)无法满足快速增长的海量数据存储需求 (2)无法有效处理不同类型的数据 (3)计算和处理能力不足 1.3 Hive介绍 Hbase支持快速的交互式的大数据应用 pig,Hive支持批量式的数据分析业务 1.4 Hive与传统数据库的对比 1.5 Hive在企业中的…
  Nosql资源: http://www.aboutyun.com/thread-5655-1-1.html (1)redis安置(2)RedisAdminUI.zip(3)redis安装部署(4)redis技术深层剖析及应用实践经验(sina微博)(5)Redis内存存储结构分析(6)redis起步(7)Redis容量及使用规划(8)Redis新的存储模式diskstore(9)Redis学习笔记(11)redis应用场景(12)redis应用之日志汇总(13)构建可扩展微博架构(14)浅谈…
mongodb文档与视频资料分享 1.mongodb1-72.mongodb8-17集含代码3.MongoDB_and_Python学习笔记4.深入学习MongoDb5.PHP&MongoDB6.MongoDB权威指南中文版7.MongoDB权威指南EnV28.MongoDb应用设计模式9.MongoDB_and_Python10.Ruby&MongoDb11.MongoDB实战http://www.aboutyun.com/thread-6147-1-1.html hadoop视频-ha…
HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”.就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力.HBase是Apache的Hadoop项目的子项目.HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库.另一个不同的是HBase基于列的而不是基于行的模式.…
一直在调研一个轻量级开源的 BI 系统.之前我们生产环境使用的 aliyun 的 QuickBi,也调研了另外一个 airflow 的开源商业智能 superset.不得不承认 QuickBI 正在日益完善变得好用,但是因其重量级,不灵活,支持数据源单一(比如普通版本只支持 自建 MySQL | RDS 阿里云内部的一些组件)superset 有类似问题.不支持 Hive(高级版支持) | Presto 等数据源数据读取给 QuickBi 的灵活性带来很多挑战. 不支持多数据源带来的困难表现在灵…
0. 说明 Hive 的高级聚合函数 union all | grouping sets | cube | rollup pv //page view 页面访问量 uv //user view 访问人数 1. union all 表联合操作 1.0 准备数据 pv.txt cookie1 cookie5 cookie7 cookie3 cookie2 cookie4 cookie4 cookie2 cookie3 cookie5 cookie6 cookie3 cookie2 cookie1 c…
本文主要使用实例对Hive内建的一些聚合函数.分析函数以及采样函数进行比较详细的讲解. 一.基本聚合函数 数据聚合是按照特定条件将数据整合并表达出来,以总结出更多的组信息.Hive包含内建的一些基本聚合函数,如MAX, MIN, AVG等等,同时也通过GROUPING SETS, ROLLUP, CUBE等函数支持更高级的聚合.Hive基本内建聚合函数通常与GROUP BY连用,默认情况下是对整个表进行操作.在使用GROUP BY时,除聚合函数外其他已选择列必须包含在GROUP BY子句中. 例…
查询操作 group by. order by. join . distribute by. sort by. clusrer by. union all 底层的实现 mapreduce 常见的聚合操作 count计数 count(*) 所有值不全为NULL时,加1操作 count(1) 不管有没有值,只要有这条记录,值就加1 count(col) col列里面的值为null,值不会加1,这个列里面的值不为NULL,才加1 sum求和 sum(可转成数字的值)  返回bigint avg求平均值…
一.负责数据类型 1.array 现有数据如下: 1 huangbo guangzhou,xianggang,shenzhen a1:30,a2:20,a3:100 beijing,112233,13522334455,500 2 xuzheng xianggang b2:50,b3:40 tianjin,223344,13644556677,600 3 wangbaoqiang beijing,zhejinag c1:200 chongqinjg,334455,15622334455,20 建…
一内置函数 1 数学函数 Return Type Name (Signature) Description DOUBLE round(DOUBLE a) Returns the rounded BIGINT value of a. 返回对a四舍五入的BIGINT值 DOUBLE round(DOUBLE a, INT d) Returns a rounded to d decimal places. 返回DOUBLE型d的保留n位小数的DOUBLW型的近似值 DOUBLE bround(DOUB…
一.视图 视图:享用基本表的数据,不会生成另外一份数据创建视图:create view view_name as select * from carss;create view carss_view as select * from carss limit 500;查看视图:desc view_namedesc carss_view删除视图:drop view view_namedrop view carss_view使用视图:create view sogou_view as select *…
一.hive的各种join操作 语法结构:join_table:table_reference JOIN table_factor [join_condition]| table_reference {LEFT|RIGHT|FULL} [OUTER] JOIN table_reference join_condition| table_reference LEFT SEMI JOIN table_reference join_conditionHive 支持等值连接( equality join…
在一些特定的业务场景下,使用hive默认的配置对数据进行分析,虽然默认的配置能够实现业务需求,但是分析效率可能会很低. Hive有针对性地对不同的查询进行了优化.在Hive里可以通过修改配置的方式进行优化. 以下,几种方式调优的属性. 1.列裁剪 在通过Hive读取数据的时候,并不是所有的需求都要获取表内的所有的数据.有些只需要读取所有列中的几列,而忽略其他列的的数据. 例如,表Table1包含5个列Column1.Column2.Column3.Column4.Column5.下面的语句只会在…
本章节我们将介绍为什么须要在Kylin创建Cube过程中使用Hive视图.而假设使用Hive视图.能够带来什么优点.解决什么样的问题.以及须要学会怎样使用视图.使用视图有什么限制等等. 1.      为什么须要使用视图 Kylin创建Cube的过程中使用Hive的表数据作为输入源.可是有些情况下,Hive中的表定义和数据并不能满足分析的需求.比如有些列的值须要进行处理,有些列的类型不满足需求,甚至有时候我们在创建Hive表时为了方便快捷,会将Hive表的全部列的字段类型都定义为string,因…