Ich brauche Parkettdaten von aws s3 zu lesen. Wenn ich aws sdk für diesen Einsatz kann ich Input wie diese:Parkettdaten von AWS s3 lesen Eimer
S3Object object = s3Client.getObject(new GetObjectRequest(bucketName, bucketKey));
InputStream inputStream = object.getObjectContent();
Aber der Apache Parkett Leser verwendet nur lokale Datei wie folgt aus:
ParquetReader<Group> reader =
ParquetReader.builder(new GroupReadSupport(), new Path(file.getAbsolutePath()))
.withConf(conf)
.build();
reader.read()
Also ich weiß nicht, wie Parsing-Eingabestrom für Parkettfeilen. Zum Beispiel für CSV-Dateien gibt es CSVParser, der Inputstream verwendet.
Ich weiß, Lösung, um Funken für dieses Ziel zu verwenden. So:
SparkSession spark = SparkSession
.builder()
.getOrCreate();
Dataset<Row> ds = spark.read().parquet("s3a://bucketName/file.parquet");
Aber ich kann nicht Funken verwenden.
Kann mir jemand irgendwelche Lösungen für das Lesen von Parkett Daten von s3 sagen?