Конвертировать dask dataframe в avro - PullRequest
0 голосов
/ 15 марта 2019

У меня есть dask dataframe с 100 разделами и 57 столбцами. Я хочу сохранить его как avro в Google Cloud Storage. Я проверил intake-avro lib , но он может конвертировать только avro в dask dataframes, а не наоборот.

Есть ли какая-нибудь библиотека для этого или я должен написать свою собственную? Я хочу убедиться, что я не изобретаю колесо.

1 Ответ

0 голосов
/ 16 марта 2019

Действительно, потребление-авро (и другие драйверы-приемники) связаны с форматом / обслуживанием -> знакомый контейнер, а не с выводом.

Avro, вообще говоря, не является столбчатым форматом, и поэтому, чтобы написать его с помощью Dask, вам нужен bag, а не dataframe. Вам захочется сделать:

df.to_bag().to_avro(...)

(см. документы )

К сожалению, вам нужно будет создать свой собственный объект JSON схемы, что должно быть довольно просто из dtypes исходного dataframe.

Библиотека, которую потребление-avro и Dask используют для быстрого чтения avro в кадры данных, uavro , может в какой-то момент быть расширена и для записи.

...