Hive
qiulinsama
一只菜鸡。
展开
-
生成Hive数据字典
生产中Hive的元数据存储在MySQL中,构建数据字典我们可以通过查询元数据表,导出查询结果后生成自己想要的文档。下面我会一步一步介绍如何生成markdown格式的数据字典文档。定义SQL首先废话不多说,贴出我们需要的在MySQL中使用的SQL。SELECT a. NAME as SCHEMA_NAME,-- 数据库名称 t.TBL_NAME as TABLE_NAME,-- 表名 ...原创 2020-04-30 16:59:26 · 2589 阅读 · 1 评论 -
Hive如何实现join操作
Hive如何实现join操作这两张表都有一个相同的字段userid,根据这个字段可以将两张表连接起来,pv_users表,SQL命令是SELECT pv.pageid, u.age FROM page_view pv JOIN user u ON (pv.userid = u.userid);同样,这个SQL命令也可以转化为MapReduce计算,连接的过程如下图所示。从图上看,...转载 2019-05-17 19:40:40 · 991 阅读 · 0 评论 -
LEFT SEMI JOIN 左半开连接
左半开连接(LEFT SEMI JOIN)会返回左边表的记录,前提是其记录对于右边表满足 ON 语句中的判定条件。对于常见的内连接(INNER JOIN)来说,这是一个特殊的,优化了的情况。大多数的SQL方言会通过 IN … EXISTS 结构来处理这种情况。例如下面所示的查询,其将试图返回限定的股息支付日内的股票交易记录,不过这个查询 Hive 是不支持的。-- HIVE中不支持的查询S...原创 2019-05-21 10:31:43 · 2940 阅读 · 0 评论 -
Hive UDTF
UDTF:用户自定义表生成函数,表生成函数接受0个或多个输入然后产生多列或多行输出。例如:select array(1,2,3) from dual;//注意,dual表中需要有数据结果为:然后我们使用一个表生成函数explode()样式描述explode(ARRAY array)返回0到多行结果,每行对应输入的array数组中的一个元素。explode(...原创 2019-04-23 20:59:08 · 2283 阅读 · 0 评论 -
Hive:Alter Table/Partition/Column
Alter Table/Partition/ColumnAlter TableRename TableAlter Table PropertiesAlter Table CommentAdd SerDe PropertiesAlter Table Storage PropertiesAlter Table Skewed or Stored as DirectoriesA...原创 2019-03-11 17:29:31 · 10884 阅读 · 0 评论 -
Hive:DDL of Database
Create/Drop/Alter/Use DatabaseCreate DatabaseCREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name [COMMENT database_comment] [LOCATION hdfs_path] [WITH DBPROPERTIES (property_name=property_v...原创 2019-02-14 10:24:20 · 193 阅读 · 0 评论 -
Hive分隔符
下面我们一起来研究文件格式。用户应该很熟悉以逗号或者制表符分隔的文本文件,也就是所谓的逗号分隔值(CSV)或者制表符分隔值(TSV)。只要用户需要,Hive是支持这些文件格式的。然而,这两种文件格式有一个共同的缺点,那就是用户需要对文本文件中那些不需要作为分隔符处理的逗号或者制表符格外小心。也因此,Hive默认使用了几个控制字符,这些字符很少出现在字段值中。Hive使用术语field来表示替换...原创 2019-02-13 17:16:53 · 6811 阅读 · 1 评论 -
Hive数据类型
基本类型(主数据类型)整型(Integers)TINYINT - 1 byte 有符号整数SMALLINT - 2 byte 有符号整数INT - 4 byte 有符号整数BIGINT - 8 byte 有符号整数布尔类型(Boolean)BOOLEAN - TRUE/FALSE浮点类型(Floating point numbers)FLOAT - 单精度浮点数...原创 2019-02-13 16:50:03 · 744 阅读 · 0 评论 -
Hive:Create/Drop/Truncate Table
Create/Drop/Truncate TableCreate Table 创建表Managed and External Tables 管理表和外部表Storage Formats 存储格式Row Formats & SerDe 行格式和SerDe(序列化和反序列化)Partitioned Tables 分区表External TablesCreate Table A...原创 2019-02-15 15:45:40 · 1420 阅读 · 0 评论 -
SerDe
SerDe Overview SerDe概述Built-in and Custom SerDes 内置和自定义的SerDesBuilt-in SerDes 内置的SerDesCustom SerDes 自定义的SerDesHiveQL for SerDesInput Processing 输入处理Output Processing 输出处理Additional Note...原创 2019-02-15 10:42:36 · 754 阅读 · 0 评论 -
Hive SerDe
什么是 SerDe?SerDe 是"Serializer and Deserializer(序列化器和反序列化器)"的缩写。Hive 使用 SerDe(和 FileFormat)读写表的行数据。HDFS files --> InputFileFormat --> <key, value> --> De原创 2019-02-14 18:57:10 · 783 阅读 · 3 评论 -
Hive表如何使用多字符分隔
一般情况下,Hive建表指定分隔符使用”row format delimited fields terminated by”语法,以下是一个最简单的例子,hive> create external table t2 (a int, b string) > row format delimited fields terminated by '|' > locati...转载 2019-01-26 11:08:24 · 3736 阅读 · 2 评论 -
安装Hive3.1.1
安装Hive1、下载hive,将安装包放置到服务器目录,进入你放置hive安装包的目录,解压。cd /opttar -zxvf apache-hive-3.1.1-bin.tar.gz2、配置hive环境变量。(非必须)echo "export HIVE_HOME=$PWD/apache-hive-3.1.1-bin" > /etc/profi原创 2019-01-10 15:14:13 · 1989 阅读 · 0 评论