MAPREDUCE服务 MRS-使用ZSTD_JNI压缩算法压缩Hive ORC表:创建ZSTD_JNI压缩表示例
创建ZSTD_JNI压缩表示例
- 以Hive客户端安装用户登录安装客户端的节点。
- 执行以下命令,切换到客户端安装目录,例如安装目录为“/opt/client”,请用户根据实际情况修改。
cd /opt/client
- 执行以下命令配置环境变量。
source bigdata_env
- 集群认证模式是否为安全模式。
- 执行以下命令登录Hive客户端。
beeline
- ZSTD_JNI压缩格式的建表方式如下:
- 使用此压缩算法时,只需在创建ORC表时指定表属性参数“orc.compress”为ZSTD_JNI即可,如:
create table tab_1(...) stored as orc TBLPROPERTIES("orc.compress"="ZSTD_JNI");
- ZSTD_JNI的压缩级别的取值范围为1~19,数值越高压缩比越高,相对压缩读写速率会变慢;数值越低压缩比越低,相对读写速率会变快,缺省默认值为“6”。建表时设置表属性参数“orc.global.compress.level”即可设置压缩级别,如:
create table tab_1(...) stored as orc TBLPROPERTIES("orc.compress"="ZSTD_JNI", 'orc.global.compress.level'='3');
- 用户可以对特定的数据格式列指定压缩,对业务数据进一步压缩。当前识别的特定格式数据包括:JSON数据列、BASE64数据列、时间戳数据列和UUID数据列。建表时设置表属性参数“orc.column.compress”即可。
例如,以下示例指定了压缩格式为ZSTD_JNI,压缩列f2为JSON格式的数据,f3为BASE64格式的数据,f4为时间戳格式的数据,f5为UUID格式的数据:
create table test_orc_zstd_jni(f1 int, f2 string, f3 string, f4 string, f5 string) stored as orc
TBLPROPERTIES('orc.compress'='ZSTD_JNI', 'orc.column.compress'='[{"type":"cjson","columns":"f2"},{"type":"base64","columns":"f3"},{"type ":"gorilla","columns":{"format": "yyyy-MM-dd HH:mm:ss.SSS", "columns": "f4"}},{"type":"uuid","columns":"f5"}]');
用户可根据实际情况按照对应格式插入数据即可实现进一步压缩的效果。
- 使用此压缩算法时,只需在创建ORC表时指定表属性参数“orc.compress”为ZSTD_JNI即可,如:
- 什么是Spark_如何使用Spark_Spark的功能是什么
- MapReduce服务_如何使用MapReduce服务_MRS集群客户端安装与使用
- MapReduce服务_什么是Hive_如何使用Hive
- MapReduce服务_什么是ClickHouse_如何使用ClickHouse
- MapReduce服务_什么是HetuEngine_如何使用HetuEngine
- GaussDB(DWS)服务_什么是IoT数仓_如何使用IoT数仓
- 容器引擎_制作容器镜像-华为云
- 云日志服务的价格_LTS_计费_价格_购买_费用_计费
- 函数流管理_编排无服务器_函数工作流 FunctionGraph-华为云
- 数据转发至函数工作流_数据处理_FunctionGraph处理流数据