如何在 flink 数据流中获取 parquet 文件的文件名
how to get file name of the parquet file during flink data stream
我有一个使用 parquet 输入格式的数据流,我想获取每个项目的文件名。所以我可以更新记录的文件。
我该怎么做?
DataStream eventStream = streamExecutionEnvironment.readFile(parquetInputFormat, path, FileProcessingMode.PROCESS_CONTINUOUSLY, 20000);
我们必须做这样的事情,我们希望时间戳是目录结构的一部分,但用于批处理。我们的方法是扩展输入格式 class(在我们的例子中是 HadoopInputFormat
),在 open()
调用中我们可以使用输入拆分参数来获取文件名。由于我们返回的是 Tuple2<LongWritable, Text>
,并且未使用 LongWritable
(文件偏移位置),因此我们将时间戳提取并填充到结果的第一个字段中。
我假设您可以扩展 ParquetInputFormat
class 并做类似的事情。
我有一个使用 parquet 输入格式的数据流,我想获取每个项目的文件名。所以我可以更新记录的文件。 我该怎么做?
DataStream eventStream = streamExecutionEnvironment.readFile(parquetInputFormat, path, FileProcessingMode.PROCESS_CONTINUOUSLY, 20000);
我们必须做这样的事情,我们希望时间戳是目录结构的一部分,但用于批处理。我们的方法是扩展输入格式 class(在我们的例子中是 HadoopInputFormat
),在 open()
调用中我们可以使用输入拆分参数来获取文件名。由于我们返回的是 Tuple2<LongWritable, Text>
,并且未使用 LongWritable
(文件偏移位置),因此我们将时间戳提取并填充到结果的第一个字段中。
我假设您可以扩展 ParquetInputFormat
class 并做类似的事情。