创建 ORC 源表
ORC(Optimized Row Columnar)是一种Hadoop生态圈中的列式存储格式。产生于2013年初,最初产生自Apache Hive,用于降低Hadoop数据存储空间和加速Hive查询速度。和Parquet类似,它并不是一个单纯的列式存储格式,仍然是首先根据行组分割整个表,在每一个行组内进行按列存储。ORC文件是自描述的,它的元数据使用Protocol Buffers序列化,并且文件中的数据尽可能的压缩以降低存储空间的消耗,目前也被Spark SQL、Presto等查询引擎支持,但是Impala对于ORC目前没有支持,仍然使用Parquet作为主要的列式存储格式。2015年ORC项目被Apache项目基金会提升为Apache顶级项目。
DDL定义
Flink支持使用ORC格式文件作为输入源,示例代码如下:
create table orc_source(id int,user_name VARCHAR,content VARCHAR,primary key(id)) with (type='orc',filePath='hdfs://hdfshome/orcpath/test');
WITH参数
| 参数 | 注释说明 | 备注 |
|---|---|---|
| filePath | 文件路径 | 目前支持hdfs、oss两种文件系统。 |
| enumerateNestedFiles | 递归读取目录下的所有文件 | true - 递归读取目录下所有文件。默认为false。 |
本文转自实时计算——
创建ORC源表