Hive 导入 parquet 格式数据
2024-10-11 01:21:19
Hive 导入 parquet 数据步骤如下:
- 查看 parquet 文件的格式
- 构造建表语句
- 倒入数据
一、查看 parquet 内容和结构
下载地址
命令
查看结构:
java -jar parquet-tools-1.6.0rc3-SNAPSHOT.jar schema -d activity.201711171437.0.parquet |head -n 30
查看内容:
java -jar parquet-tools-1.6.0rc3-SNAPSHOT.jar head -n 2 activity.201711171437.0.parquet
parquet 和 hive 的 field 类型映射关系
BINARY -> STRING
BOOLEAN -> BOOLEAN
DOUBLE -> DOUBLE
FLOAT -> FLOAT
INT32 -> INT
INT64 -> BIGINT
INT96 -> TIMESTAMP
BINARY + OriginalType UTF8 -> STRING
BINARY + OriginalType DECIMAL -> DECIMAL
二、hive 命令
创建表
create table test_data(a bigint) stored as parquet;
# 创建表时可选择数据存储格式
Tips:分区 partitioned by (date string)
本地导入数据
load data local inpath '/path/data.parquet' into table test_database.test_table_name;
导入HDFS中的数据
load data inpath '/path/data.parquet' into table test_database.test_table_name;
Tips:区别是没有 local
三、pandas 数据导成 parquet 文件
先安装 pyarrow
或 fastparquet
库
import pandas as pd
>>> df = pd.DataFrame(data={'col1': [1, 2], 'col2': [3, 4]})
>>> df.to_parquet('df.parquet.gzip', compression='gzip')
>>> pd.read_parquet('df.parquet.gzip')
col1 col2
0 1 3
1 2 4
参考
最新文章
- iOS的一像素线
- 了解HTML 盒模型
- JVM垃圾回收参数说明整理
- 从JAVA客户端访问Redis示例(入门)
- Ionic学习笔记四 一些问题处理
- 进程process和线程thread的关系
- Spring Security(15)——权限鉴定结构
- 从零开始学安全(三十九)●FCK编辑器解析漏洞
- Windows 环境下的 protoc 安装(转)
- html单选按钮用jQuery中prop()方法设置
- SSM 三大框架---事务处理
- 第二个spring,第一天
- python递归,装饰器,函数, 高阶函数
- canvas手机端绘图解决方案
- xshell提示采购解决方法
- Python中定义函数时参数有默认值的小陷阱
- PWA小记
- 新手学Linux:在VMware14中安装CentOS7详细教程
- ce+od无法同时附加进程的问题
- [USACO06NOV]玉米田$Corn \ \ Fields$ (状压$DP$)