Hive Learning

HIVEQL和MYSQL最为接近

数据操作

SHOW TABLES IN crm_integration

Show tables 'dim_con*'

DESCRIBE EXTENDED crm_integration.itg_fact_sales_order

DESCRIBE FORMATTED crm_integration.itg_fact_sales_order

show partitions crm_integration.itg_fact_sales_order  --查看表中所有分区

DELETE TABLE

DROP TABLE IF EXSTS employees

.Trash(需要开启回收站功能)

ALTER TABLE log_MESSAGES RENAME TO logmsgs;

ALTER TABLE table ADD PARTITION…

ALTER TABLE logmessages DROP IF EXISTS PARTITION (year = 2011, month =12, _day =2 )

ALTER TABLE log ADD COLUMNS(app_name STRING COMMENT ‘application name’)

替换列:REPLACE

ARCHIVE PARTITION

保护:

ALTER TABLE logmessages DROP IF EXISTS PARTITION (year = 2011, month =12, day =2 ) ENABLE NO_DROP

ALTER TABLE logmessages DROP IF EXISTS PARTITION (year = 2011, month =12, day =2 ) ENABLE OFFLINE

装载数据

Load data local

Overwrite

集合数据类型中的元素提取:

SELECT name, subordinates[0] FROM employees;

SELECT name, deductions[“State Taxes”] FROM EMPLOYEES;

这里deductions列是一个map,jason格式。

引用struct中的元素,可以用点。

SELEFCT name, ADDRESS.CITY FROM EMPLOYEES;

正则表达式:

LIKE, RLIKE

LIMIT 2

谓词:

A<> B

A !=B

A is null

A IS NOT NULL

A LIKE B

A NOT LIKE B

A RLIKE B

A REGEXP B

JOIN(笛卡尔积) --消耗资源,不建议

LEFT OUTER JOIN

LEFT SEMI-JOIN:

返回左边表的记录,前提是记录对于右边表满足ON语句中的判定条件。Sql回通过IN…EXISTS结构来处理这种情况。

HIVE不支持RIGHT SEMI-JOIN

SEMI-JOIN比inner join要更高效。

SORT BY –每个reducer中对数据排序,局部排序过程

ORDER BY—全局有序

DISTRIBUTE BY –写在SORT BY 前面。

CLUSTER BY

数据类型:

CAST(SALARY AS FLOAT)

6.9 抽样查询:

RAND()

数据块抽样:

SELECT * FROM numbersflat TABLESAMPLE (0.1 PERCENT) s;

CREATE TABLE shipments2 LIKE shipment

索引:

Show FORMATTED INDEX ON employess

调优

EXPLAIN

EXPLAIN SELECT SUM(NUMBER) FROM onecol;

EXPLAIN EXTENDED

HIVE - HIVEQL学习笔记的更多相关文章

  1. HIVE优化学习笔记

    概述 之前写过关于hive的已经有两篇随笔了,但是作者依然还是一枚小白,现在把那些杂七杂八的总结一下,供以后查阅和总结.今天的文章介绍一下hive的优化.hive是好多公司都在使用的东西,也有好多大公 ...

  2. hive kettle 学习笔记

    学习网址 http://wiki.pentaho.com/display/BAD/Transforming+Data+within+Hive

  3. 60分钟内从零起步驾驭Hive实战学习笔记

    本博文的主要内容是: 1. Hive本质解析 2. Hive安装实战 3. 使用Hive操作搜索引擎数据实战 SparkSQL前身是Shark,Shark强烈依赖于Hive.Spark原来没有做SQL ...

  4. 60分钟内从零起步驾驭Hive实战学习笔记(Ubuntu里安装mysql)

    本博文的主要内容是: 1. Hive本质解析 2. Hive安装实战 3. 使用Hive操作搜索引擎数据实战 SparkSQL前身是Shark,Shark强烈依赖于Hive.Spark原来没有做SQL ...

  5. hive sql 学习笔记

    1.coalesce 语法: COALESCE ( expression [ ,...n ] ) 参数: expression 任何类型的表达式. 返回类型: 返回数据类型优先级最高的 express ...

  6. hive学习笔记之六:HiveQL基础

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  7. hive学习笔记之一:基本数据类型

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  8. hive学习笔记之三:内部表和外部表

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  9. hive学习笔记之四:分区表

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  10. hive学习笔记之五:分桶

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

随机推荐

  1. ascii编码常用字符的十进制对照表

  2. Linux操作命令(四) 1.which命令 2.whereis命令 3.locate命令

    1.which命令 which 命令的作用是,在 PATH 变量指定的路径中搜索可执行文件的所在位置.它一般用来确认系统中是否安装了指定的软件 确认是否安装了 gcc:which gcc 查看 cd ...

  3. JavaScript之异步编程

    什么是异步 异步:Asynchronous,async是与同步synchronous,sync相对的概念. 传统单线程编程中,程序的运行是同步的,指程序运行在一个控制流之中运行.而异步的概念就是不保证 ...

  4. Windows打开代理快捷方式

    最近使用电脑需要频繁打开关闭网络代理(全局代理会导致一些网站打不开),在想有没有快捷方式,一搜果然有,看来有跟我一样的使用习惯的人. 传统切换代理开关,步骤如下: 设置 => 网络和 Inter ...

  5. bzoj5000+的洛谷题号

    前言 闲得没事把 bzoj5000+ 在 Luogu 上可找到的题面整理了一下-- 对于我,bzoj 连账号都没有,所以肯定是不清楚 bzoj 题目总数的--因此其实就是手动翻查. 工作量很大,基本不 ...

  6. MySQL 8.0 新特性-原子DDL

    背景 MySQL 8.0 原子DDL 是一个复杂的过程,涉及比较多的模块,例如:MDL 锁,表定义缓存,行格式,Row Log,DDL Log,online 属性,表空间物理文件操作等.本文主要通过与 ...

  7. 前端下载图片、pdf、excel、world文件;前端下载图片和pdf文件;前端a标签下载图片和pdf文件;下载文件名称不生效原因

    https://blog.csdn.net/i_am_a_div/article/details/125050379 https://blog.csdn.net/moguzhale/article/d ...

  8. 10base-t的数据发送

    功能 数据流(NIC) pin码 发送信号 发送回路 1 2 接收信号 接收回路 3 不使用   4 不使用   5 接收信号 接收回路 6 不使用   7 不使用   8 上图是基于10BASE-T ...

  9. VUE学习-条件渲染

    条件渲染 v-if & v-else-if & v-else <div id="app"> <h1 v-if="type == 'VUE ...

  10. git提交到代码到远程仓库,合并分支提示entirely different commit histories(备忘)

    最近提交代码到github,合并分支的时候提示"master and main are entirely different commit histories" master为本地 ...