Apache flink ApacheFlink-数据集API支持将输出写入单个文件分区吗
我在Flink中使用Dataset API,并试图通过POJO中的一个键(例如日期)对拼花地板文件进行分区。最终目标是使用以下文件结构写下我的文件Apache flink ApacheFlink-数据集API支持将输出写入单个文件分区吗,apache-flink,parquet,Apache Flink,Parquet,我在Flink中使用Dataset API,并试图通过POJO中的一个键(例如日期)对拼花地板文件进行分区。最终目标是使用以下文件结构写下我的文件 /output/ 20180901/ file.parquet 20180902/ file.parquet Flink提供了一个方便的类来包装AvroParquetOutputFormat,如下所示,但我看不到提供分区键的方法 HadoopOutputFormat<Void, Pojo>
/output/
20180901/
file.parquet
20180902/
file.parquet
Flink提供了一个方便的类来包装AvroParquetOutputFormat
,如下所示,但我看不到提供分区键的方法
HadoopOutputFormat<Void, Pojo> outputFormat =
new HadoopOutputFormat(new AvroParquetOutputFormat(), Job.getInstance());
您可以使用
BucketingSink
sink在通过提供Bucketer
接口实例定义的分区中写入数据。有关示例,请参见DateTimeBucketer。
如果您找到了解决方案,请帮我解决。我决定使用Spark。我的生产力更重要。嗨,你能给我一个如何转换我的数据集[MyType]->DataSet[Void,MyType]的提示吗
df.write.partitionBy('date').parquet('base path')