2016-03-05 2 views
0

У меня есть очень большой файл паркета, который мне нужно импортировать в elasticsearch. Я искал в сети, но не смог найти полезный результат. Интересно, поддерживает ли последняя версия elasticsearch такой формат?Как загрузить и индексировать файлы с паркетным форматом в elasticsearch?

ответ

1

Один из способов сделать это - использовать ConvertUtils и вызвать метод convertParquetToCSV().

Затем, когда файл CSV создан, вы можете просто потреблять его с помощью Logstash с

Пример конфигурации:

input { 
    file { 
     path => "/path/to/your/parquet/as/csv/file" 
    } 
} 
filter { 
    csv { 
     columns => ["col1", "col2"] 
    } 
} 
output { 
    elasticsearch { 
     hosts => ["localhost:9200"] 
    } 
} 
+0

Любой удачи с этим? – Val

+0

Спасибо, это хорошая идея, мне интересно, есть ли способ сделать это без стоимости преобразования данных – arefehTam

+0

@arefehTam и как бы вы преобразовали двоичные данные столбчатого паркета без каких-либо затрат на конвертацию в хранилище документов, например, elasticsearch? Это совершенно разные представления ... –

0

Я автор Moshe/elasticsearch_loader
я написал ESL для этой конкретной проблемы.
Вы можете скачать его с пипом:

pip install elasticsearch-loader[parquet] 

И тогда вы будете иметь возможность загружать файлы в паркетном elasticsearch путем выпуска:

elasticsearch_loader --index incidents --type incident parquet file1.parquet file2.parquet