- Я использую nodeJs Express Framework.
- Я использую базу данных mysql с библиотекой sequelizejs и использую запросы для извлечения данных.
Я получаю ошибку тайм-аутакогда я запустил запрос на выборку для почти 50 000 000 записей.
Я сделал тайм-аут сервера, но не работал.Я сделал метод объединения в sequlizeJs, но не сработало.
function fetchNamesData(req, name) {
return new Promise((resolve, reject) => {
const names = req.app.locals.models.names_data;
names.findAll({
where: {
name: name
},
order: [['date', 'DESC']],
limit: 50
})
.then(function (dbRes) {
console.log(dbRes.length);
resolve(dbRes);
})
.catch(function (dbErr) {
console.log(dbErr);
return reject(dbErr);
});
});
}
allNames.forEach(element => {
//console.log(element.dataValues.name);
fetchNamesData(req, element.dataValues.name).then((dbRes) => {
//here I will have all the records
}).catch((dbErr) => { console.log(dbErr) });
var allNames = {с почти 7000 именами}, теперь я повторяю этот объект и каждое имя, имеющее 50 записей в базе данных, я хочу получить эту всю записькак 50 * 7000 = 3,50,000.