插入 Parquet 文件会生成 512 MB 文件。如何生成 1 GB 的文件?
Posted
技术标签:
【中文标题】插入 Parquet 文件会生成 512 MB 文件。如何生成 1 GB 的文件?【英文标题】:Insert into Parquet file generates 512 MB files. How to generate 1 GB file? 【发布时间】:2014-09-17 18:50:51 【问题描述】:我正在测试 Parquet 文件格式并使用 Impala 外部表将数据插入 Parquet 文件。
以下是可能影响Parquet文件大小的参数集:
NUM_NODES: 1
PARQUET_COMPRESSION_CODEC: none
PARQUET_FILE_SIZE: 1073741824
我正在使用以下插入语句写入 Parquet 文件。
INSERT INTO TABLE parquet_test.parquetTable
PARTITION (pkey=X)
SELECT col1, col2, col3 FROM map_impala_poc.textTable where col1%100=X;
我想生成大约 1 GB 的文件大小并相应地对数据进行分区,以便每个分区的 Parquet 格式数据少于 1 GB。但是,此插入操作不会生成超过 512 MB 的单个文件。它将 512 MB 的数据写入一个文件,然后创建另一个文件并将其余数据写入另一个文件。如何将所有数据写入单个文件?
【问题讨论】:
【参考方案1】:尝试在执行查询的同一会话中设置拼花大小
set PARQUET_FILE_SIZE=1g;
INSERT INTO TABLE parquet_test.parquetTable ...
【讨论】:
以上是关于插入 Parquet 文件会生成 512 MB 文件。如何生成 1 GB 的文件?的主要内容,如果未能解决你的问题,请参考以下文章
spark剖析:spark读取parquet文件会有多少个task
spark剖析:spark读取parquet文件会有多少个task
spark剖析:spark读取parquet文件会有多少个task
spark剖析:spark读取parquet文件会有多少个task