170 похожих чатов

Привет, подскажите, кто нибудь сталкивался с парсингом больших json to

csv? Как решали задачу?

10 ответов

20 просмотров

зОчем

Romas-Bitinas Автор вопроса

nometa pls опиши проблему, в чём затруднения и тебе помогут решить задачу можно не одним способом

Парсили. json-2-csv https://attacomsian.com/blog/nodejs-convert-json-to-csv Ответ достаточно закрывает вопрос?

Romas-Bitinas Автор вопроса
🇰🇿 Alexei Karikov
Парсили. json-2-csv https://attacomsian.com/blog/...

Спасибо. У меня возникает ошибка out of memory при парсинге 50мб+ файлов. Вот код import { APIGatewayProxyResult, APIGatewayProxyEvent } from 'aws-lambda'; import http from 'http'; import https from 'https'; import { pipeline } from 'stream'; import { isHttps } from './utils'; import { Transform as CsvTransform } from '@json2csv/node'; import flatten from './parsers/flatten'; // Function utilizes streams to read data from a url, transform it, and upload it to s3 export const lambdaHandler = async (event: APIGatewayProxyEvent): Promise<APIGatewayProxyResult> => { try { const data = typeof event === 'string' ? JSON.parse(event) : event; const url = data.message.extsrc; // const body = await streamResponse(url); const protocol = isHttps(url) ? https : http; const body = await new Promise((resolve, reject) => { protocol.get(url, (networkStream: http.IncomingMessage) => { pipeline( networkStream, new CsvTransform( { transforms: [flatten({ objects: true, arrays: true, separator: '__' })], }, { objectMode: true }, ), (error: any) => { if (error) { reject(error); } resolve('success'); }, ); }); }); const response = { statusCode: 200, body: JSON.stringify(body), }; return response; } catch (err) { console.log(err); return { statusCode: 500, body: JSON.stringify({ message: err, }), }; } };

Romas Bitinas
Спасибо. У меня возникает ошибка out of memory при...

А нужно каждый раз новый экземпляр трансформа?

Romas-Bitinas Автор вопроса

Я не уверен как нужно, но я же не создаю каждый раз новый экземпляр?

Romas-Bitinas Автор вопроса
Romas-Bitinas Автор вопроса
🇰🇿 Alexei Karikov
А без objectMode? Или он тебе нужен?

Все равно память кончается и крашится

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта