У меня более 2 миллионов строк данных в файле .psv, и я пытаюсь прочитать этот файл с помощью fs.readfile на nodejs, а затем разделить его на pipe, чтобы я хотел прочитать данные каждой строки из этого файла .psv , на обработку этого полного действия уходит 30-45 минут. Есть ли способ быстро выполнить этот полный процесс?
var fs = require('fs');
var firstLevelData = [];
var secondLevelData = [];
var filePath = 'sample-psvfile.psv';
async function readPsvFileContent() {
fs.readFile(filePath, function (err, completeData) {
if (completeData) {
completeData = completeData.toString();
// console.log(completeData);
completeData.split('\n').forEach(function (line) {
let rowData = line.split('|');
if (rowData && rowData[2]) {
let ovalue = rowData[2];
let unique = ovalue;
if (unique) {
let obj = {};
obj['index'] = rowData[1];
obj['name'] = rowData[0];
firstLevelData.push(obj);
if (rowData[4]) {
let ovalue2 = rowData[4];
let unique2 = ovalue2;
if (unique2) {
let obj1 = {};
obj1['index'] = rowData[3];
obj1['name'] = unique;
secondLevelData.push(obj1);
}
}
}
}
});
}
});
};