Как читать определенные столбцы из файла Parquet в Java - PullRequest
0 голосов
/ 12 июня 2018

Я использую WriteSupport, который знает, как записать мой пользовательский объект 'T' в Parquet.Меня интересует только чтение 2 или 3 определенных столбцов из 100 столбцов моего пользовательского объекта, которые записаны в файл Parquet.

Большинство примеров в Интернете расширяют ReadSupport и читают всю запись.Хотите выполнить это без использования таких вещей, как Spark, Hive, Avro, Thrift и т. Д.

Пример на Java, который читает выбранные столбцы пользовательского объекта в Parquet

1 Ответ

0 голосов
/ 28 ноября 2018

Этот пост может помочь.

Чтение определенного столбца из Parquet без использования Spark

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

В вашем случае вы должны иметь возможность вызывать .withConf (conf) для класса построителя AvroParquetReader, а в передаваемом вами conf вызывать conf.set (ReadSupport)..PARQUET_READ_SCHEMA, схема), где схема является авро-схемой в виде строки.

...