Чтение большого CSV-файла в JavaScript интерфейсе приложения - PullRequest
0 голосов
/ 26 февраля 2020

У меня есть несколько файлов CSV, которые я хотел бы использовать в клиентском приложении на основе JavaScript. Большинство из них хранятся в облаке. Учитывая тот факт, что некоторые файлы CSV иногда бывают очень большими (несколько гигабайт), я сначала подумал об использовании parquet js для сжатия и перенес их в интерфейс в виде небольших файлов паркета (у нас есть большие избыточность в наших файлах CSV и паркете позволяет нам достичь высоких результатов сжатия, ie файл CSV 1,6 ГБ сжимается как файл паркета 7 МБ).

В целях оптимизации я намеревался использовать потоковые возможности паркета js для извлечения файлов CSV «на лету». Но почему-то эта особенность пока еще не очень развита. Я хотел знать, возможно ли найти другое решение для быстрой декомпрессии CSV с потоковой передачей. Существуют ли пакеты JavaScript на основе zip, которые бы сработали? Передача и чтение больших файлов CSV напрямую не кажется мне оптимальным решением.

1 Ответ

0 голосов
/ 26 февраля 2020

Если я правильно понимаю проблему и в зависимости от того, что вы хотите сделать на клиенте, вы могли бы потенциально использовать Fetch API и использовать поток response.body для обработки во время загрузки.

Есть сообщение Джейка Арчибальда , в котором говорится о том, как читать в потоке данных CSV, что может быть полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...