#java #kubernetes #parquet #minio
Вопрос:
Этот пакет
org.apache.hadoop.fs.Path
может ли он использоваться с ведром Minio, основная цель состоит в разработке функции, которая обеспечивает чтение из списка данных и запись его в файл parquet без spark, поэтому в коде используется объект Path, который ссылается на этот импорт: import org.apache.hadoop.fs.Path; мой вопрос в том, можно ли его использовать с ведром Minio и путем URI от Minio, поэтому jar будет выполняться в Kubernetes с помощью ПВХ Minio, и информация будет храниться в ведре на нем.
код:
protected Path createDataFile(ReaderFsTestConfig fsConfig, Object... args) throws IOException {
FileSystem fs = fsConfig.getFs();
File parquetFile = File.createTempFile("test-", "." getFileExtension());
try (ParquetWriter writer = AvroParquetWriter.<GenericRecord>builder(new Path(parquetFile.toURI()))
.withConf(fs.getConf()).withWriteMode(ParquetFileWriter.Mode.OVERWRITE).withSchema(readerSchema).build()) {
IntStream.range(0, NUM_RECORDS).forEach(index -> {
GenericRecord datum = new GenericData.Record(readerSchema);
datum.put(FIELD_INDEX, index);
String uuid = UUID.randomUUID().toString();
datum.put(FIELD_NAME, String.format("%d_name_%s", index, uuid));
datum.put(FIELD_SURNAME, String.format("%d_surname_%s", index, uuid));
try {
fsConfig.offsetsByIndex().put(index, (long) index);
writer.write(datum);
} catch (IOException ioe) {
throw new RuntimeException(ioe);
}
});
}
Path path = new Path(new Path(fsConfig.getFsUri()), parquetFile.getName());
fs.moveFromLocalFile(new Path(parquetFile.getAbsolutePath()), path);
return path;
итак, в этом коде я могу установить значение мини-ведра]??:
FileSystem fs = fsConfig.getFs (); // minion config
new Path ("minio / bucket")