Прочитать файл fastparquet, используя паркет Akka - PullRequest
0 голосов
/ 05 июня 2019

У меня есть одна из наших систем Python, генерирующая файлы Parquet с использованием Pandas и fastparquet.Они должны быть прочитаны системой Scala, которая работает поверх потоков Akka.

Akka предоставляет источник для чтения файлов Avro Parquet .Однако, когда я пытаюсь прочитать файл, я получаю

java.lang.IllegalArgumentException: INT96 not yet implemented.

. Это один из столбцов, который не нужно читать для работы приложения Scala.Мой вопрос заключается в том, могу ли я указать схему и получить только один столбец, учитывая, что сгенерированный файл взят из fastparquet.

Соответствующий фрагмент, который генерирует источник для чтения файлов Parquet:

.map(result => {
      val path = s"s3a://${result.bucketName}/${result.key}"
      val file = HadoopInputFile.fromPath(new Path(path), hadoopConfig)
      val reader: ParquetReader[GenericRecord] =
        AvroParquetReader
          .builder[GenericRecord](file)
          .withConf(hadoopConfig)
          .build()
      AvroParquetSource(reader)
    })
...