Hive数据仓库笔记(一)】的更多相关文章

Hive建表: CREATE TABLE records (year STRING,temperature INT, quality INT) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'; 每行三列数据通过tab分隔,数据如果是以tab分隔的可被hive直接识别. 查看表结构信息: desc records; 加载数据: LOAD DATA LOCAL INPATH'/home/data/sample.txt' OVERWRITE INTO TA…
Joins: Inner  joins: hive> SELECT * FROM sales; Joe 2 Hank 4 Ali 0 Eve 3 Hank 2 hive> SELECT * FROM things; 2 Tie 4 Coat 3 Hat 1 Scarf 两个表Inner joins: hive> SELECT sales.*, things.* > FROM sales JOIN things ON (sales.id =things.id); Joe 2 2 Ti…
分区和桶:   分区:可以提高查询的效率,只扫描固定范围数据,不用全部扫描 CREATE TABLE logs (ts BIGINT, lineSTRING) PARTITIONED BY (dt STRING, country STRING); 通过关键字PARTITIONED BY 定义分区表 LOAD DATA LOCAL INPATH '/home/data/file1' INTO TABLE logs PARTITION (dt='2001-01-01',country='GB');…
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS等: <hive学习笔记>系列导航 基本数据类型 复杂数据类型 内部表和外部表 分区表 分桶 HiveQL基础 内置函数 Sqoop 基础UDF 用户自定义聚合函数(UDAF) UDTF 关于hive学习笔记系列 <hive学习笔记>系列保持了作者一贯的风格,即通过实战学习和了解: 作…
一.Hive介绍 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单SQL查询功能,SQL语句转换为MapReduce任务进行运行. 优点是可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析.缺点是Hive不适合在大规模数据集上实现低延迟快速的查询. 二.安装Hive 环境:Docker(17.04.0-ce).镜像Ubuntu(16.04.3).JDK(1.8.0_144).…
第1章 Hive基本概念 1.1 什么是Hive Hive:由Facebook开源用于解决海量结构化日志的数据统计. Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能. 本质是:将HQL转化成MapReduce程序 1)Hive处理的数据存储在HDFS 2)Hive分析数据底层的实现是MapReduce 3)执行程序运行在Yarn上 1.2 Hive的优缺点 1.2.1 优点 1) 操作接口采用类SQL语法,提供快速开发的能力(简单.容易上…
主要内容: 1.Hive的基本工能机制和概念 2.hive的安装和基本使用 3.HQL 4.hive的脚本化运行使用方式 5.hive的基本语法--建表语法 6.hive的基本语法--内部表和外部表. 7.hive的基本语法--create建表 like as 8.hive的基本语法--数据导入--从本地--从hdfs 9.查询语法 10.数据类型 11.hive函数 1.   什么是hive hive本身是一个单机程序.转在哪里都行,相对于hadoop来说就是一个hdfs的客户端和yarn的客…
1. hive是什么? Hive是基于 Hadoop 的一个数据仓库工具: 1.       hive本身不提供数据存储功能,使用HDFS做数据存储: 2.       hive也不分布式计算框架,hive的核心工作就是把sql语句翻译成MR程序: 3.       hive也不提供资源调度系统,也是默认由Hadoop当中YARN集群来调度: 4.       可以将结构化的数据映射为一张数据库表,并提供 HQL(Hive SQL)查询功能. 2. hive和Hadoop关系 Hive利用HDF…
hive数据仓库建设 1.设计原生日志表 原生日志表用来存放上报的原始日志,数据经过清洗加工后会进入到各个日志表中. 1.1 创建数据库 #创建数据库 $hive>create database umeng_big11 ; 1.2 创建原生日志表 原生表使用分区表设计,分区字段为ym/d/hm,hive使用动态分区表,分区采用非严格模式,即所有分区都可以是动态分区.hive命令行终端打开显式表头设置: #临时设置,只在当前回话有效 $hive>set hive.cli.print.header…
Author: kwu 高速查询hive数据仓库中的条数.在查询hive表的条数,通常使用count(*).可是数据量大的时候,mr跑count(*)往往须要几分钟的时间. 1.传统方式获得总条数例如以下: select count(*) from ods.tracklog; 执行时间为91.208s 2.与关系库一样hive表也能够通过查询元数据来得到总条数: select d.NAME,t.TBL_NAME,t.TBL_ID,p.PART_ID,p.PART_NAME,a.PARAM_VAL…
在工作中我们经常使用的数据库,数据库一般存放的我们系统中常用的数据,一般为百万级别.如果数据量庞大,达到千万级.亿级又需要对他们进行关联运算,该怎么办呢? 前面我们已经介绍了HDFS和MapReduce了,它俩结合起来能够进行各种运算,可是MapReduce的学习成本太高了,如果有一种工具可以直接使用sql将hdfs中的数据查出来,并自动编写mapreduce进行运算,这就需要使用到我们的hive数据仓库. Hive基本概念 什么是Hive Hive是基于Hadoop的一个数据仓库工具,可以将结…
目录 Hive常见属性配置 将本地库文件导入Hive案例 Hive常用交互命令 Hive其他命令操作 参数配置方式 Hive常见属性配置 1.Hive数据仓库位置配置 1)Default数据仓库的最原始位置是在hdfs上的:/user/hive/warehouse路径下 2)在仓库目录下,没有对默认的数据库default创建文件夹.如果某张表属于default数据库,直接在数据仓库目录下创建一个文件夹. 3)修改default数据仓库原始位置(将hive-default.xml.template…
第一章.hive入门 一.hive入门手册 1.什么是数据仓库 1.1数据仓库概念 对历史数据变化的统计,从而支撑企业的决策.比如:某个商品最近一个月的销量,预判下个月应该销售多少,从而补充多少货源. 1.2传统数据仓库面临的挑战 (1)无法满足快速增长的海量数据存储需求 (2)无法有效处理不同类型的数据 (3)计算和处理能力不足 1.3 Hive介绍 Hbase支持快速的交互式的大数据应用 pig,Hive支持批量式的数据分析业务 1.4 Hive与传统数据库的对比 1.5 Hive在企业中的…
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS等: <hive学习笔记>系列导航 基本数据类型 复杂数据类型 内部表和外部表 分区表 分桶 HiveQL基础 内置函数 Sqoop 基础UDF 用户自定义聚合函数(UDAF) UDTF 本篇概览 本文是<hive学习笔记>系列的第三篇,要学习的是各种类型的表及其特点,主要内容如下:…
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS等: <hive学习笔记>系列导航 基本数据类型 复杂数据类型 内部表和外部表 分区表 分桶 HiveQL基础 内置函数 Sqoop 基础UDF 用户自定义聚合函数(UDAF) UDTF 本篇概览 本文是<hive学习笔记>系列的第四篇,要学习的是hive的分区表,简单来说hive的分…
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS等: <hive学习笔记>系列导航 基本数据类型 复杂数据类型 内部表和外部表 分区表 分桶 HiveQL基础 内置函数 Sqoop 基础UDF 用户自定义聚合函数(UDAF) UDTF 本篇概览 本文是<hive学习笔记>的第五篇,前文学习了分区表,很容易发现分区表的问题: 分区字段…
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS等: <hive学习笔记>系列导航 基本数据类型 复杂数据类型 内部表和外部表 分区表 分桶 HiveQL基础 内置函数 Sqoop 基础UDF 用户自定义聚合函数(UDAF) UDTF 本篇概览 本文是<hive学习笔记>系列的第六篇,前面的文章咱们对数据类型.表结构有了基本了解,接…
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS等: <hive学习笔记>系列导航 基本数据类型 复杂数据类型 内部表和外部表 分区表 分桶 HiveQL基础 内置函数 Sqoop 基础UDF 用户自定义聚合函数(UDAF) UDTF 本篇概览 本文是<hive学习笔记>系列的第七篇,前文熟悉了HiveQL的常用语句,接下来把常用的…
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS等: <hive学习笔记>系列导航 基本数据类型 复杂数据类型 内部表和外部表 分区表 分桶 HiveQL基础 内置函数 Sqoop 基础UDF 用户自定义聚合函数(UDAF) UDTF 本篇概览 本文是<hive学习笔记>的第九篇,前面学习的内置函数尽管已经很丰富,但未必能满足各种场…
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<hive学习笔记>的第十篇,前文实践过UDF的开发.部署.使用,那个UDF适用于一进一出的场景,例如将每条记录的指定字段转为大写: 除了一进一出,在使用group by的SQL中,多进一出也是常见场景,例如hive自带的avg.sum都是多进一出,这个场景的自定义函数叫做用户自定义聚合函数(User Defiend Aggregat…
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS等: 本篇概览 本文是<hive学习笔记>系列的第十一篇,截至目前,一进一出的UDF.多进一出的UDAF咱们都学习过了,最后还有一进多出的UDTF留在本篇了,这也是本篇的主要内容: 一进多出的UDTF,名为用户自定义表生成函数(User-Defined Table-Generating Funct…
学习内容:数据导入,要求将CSV格式或者EXCEL格式的文件导入到HIVE数据仓库中: ①hive建表:test1 create table test1 (InvoiceNo String, StockCode String, Description String, Quantity String, InvoiceDate String, UnitPrice String, CustomerID String, Country String) ROW format delimited field…
@ 目录 概述 定义 本质 特点 Hive与Hadoop关系 Hive与关系型数据库区别 优缺点 其他说明 架构 组成部分 数据模型(Hive数据组织形式) Metastore(元数据) Compiler(编译器) Optimizer(优化器) 安装 内嵌模式 本地 MetaStore 远程 MetaStore hiveserver2 metastore 概述 定义 Hive 官网 https://hive.apache.org/ Hive 官网Wiki文档 https://cwiki.apac…
摘要: Hive 是建立在 Hadoop 上的数据仓库基础构架.它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在 Hadoop 中的大规模数据的机制.Hive 定义了简单的类 SQL 查询语言,称为 QL,它允许熟悉 SQL 的用户查询数据.同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作.1. HIVE结构 Hive 是建…
Hive 是一个基于Hadoop分布式文件系统(HDFS)之上的数据仓库架构,同时依赖于MapReduce.适用于大数据集的批处理,而不适用于低延迟快速查询. Hive将用户的HiveQL语句转换为MapReduce作业提交到Hadoop集群上,监控执行过程,最后返回结果给用户.由于Hive的元数据(Hive仓库本身的数据信息)需要不断更新.修改.读取,而由于Hadoop存在较高的延时以及作业调度的开销,因此将Hive元数据存在关系型数据库Mysql.derby中.…
一.什么是Hive Hive是建立在 Hadoop 上的数据仓库基础构架.它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在 Hadoop 中的大规模数据的机制.Hive 定义了简单的类 SQL 查询语言,称为 HQL,它允许熟悉 SQL 的用户查询数据.同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作. 二.Hive的体系结…
1.建表: hive> CREATE TABLE pokes (foo INT, bar STRING); hive> CREATE TABLE invites (foo INT, bar STRING) PARTITIONED BY (ds STRING); 由于很多数据在hadoop平台,当从hadoop平台的数据迁移到hive目录下时,由于hive默认的分隔符是/u0001,为了平滑迁移,需要在创建表格时指定数据的分割符号,语法如下: create table ooo(uid strin…
本文转载自:http://blog.csdn.net/haojun186/article/details/7977565 1.  HIVE结构 Hive 是建立在 Hadoop 上的数据仓库基础构架.它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在 Hadoop 中的大规模数据的机制.Hive 定义了简单的类 SQL 查询语言,称为 QL,它允许熟悉 SQL 的用户查询数据.同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 map…
(2015.07.22Hive笔记) 一.Hive的安装 1.1Hive的安装过程 下载hive源文件(apache-hive-0.14.0-bin.tar.gz ) 解压hive文件 进入$HIVE_HOME/conf/修改文件 cp hive-env.sh.template hive-env.sh cp hive-default.xml.template(模板文档,提供了hive很多参数) hive-site.xml 修改$HIVE_HOME/conf的hive-env.sh,增加以下三行…
一.Hive介绍 Hive是基于Hadoop的一个数据仓库,Hive能够将SQL语句转化为MapReduce任务进行运行. Hive架构图分为以下四部分. 1.用户接口 Hive有三个用户接口: 命令行接口(CLI):以命令行的形式输入SQL语句进行数据数据操作 Web界面:通过Web方式进行访问. Hive的远程服务方式:通过JDBC等方式进行访问. 2.元数据存储 将元数据存储在关系数据库中(MySql.Derby),元数据包括表的属性.表的名称.表的列.分区及其属性以及表数据所在的目录等.…