@IGCapiti

Laravel. Многотысячная запись в DB?

Здравствуйте.
Требуется помощь.
Коротко. Сайт, October CMS. Есть таблица в .xls. Там около 50 столбцов и около 100 строк. Соответственно - 5000 данных.
Я загружаю файл, парсю оттуда данные и мне нужно внести их в базу. Начинаю вносить в базу. После 120-150 записей, запрос слетает не выдавая никакую ошибку.
Мне нужно сделать запись, максимально быстро. И без потерь. Ребята, можете подсказать? Может кто-нибудь пример подобного запроса делал? Как???

Заранее спасибо.
С Уважением, IGCapiti.
  • Вопрос задан
  • 245 просмотров
Пригласить эксперта
Ответы на вопрос 4
@karminski
Разработчик CRM/ERP систем
Разбить процесс на части. Парсите первые 100 строк и вставляете их в БД. Далее повторяете в цикле остальные строки.
Ответ написан
Fernus
@Fernus
Техник - Механик :)
Вариантов можно несколько выдумать...от задачи зависит...

Можно например при парсинге файла нужные данные "скидывать" в другой результирующий файл...
А далее этот файл прогнать через такой запрос:

LOAD DATA INFILE "/path/to/file" INTO TABLE `tbl`;
Залетит быстро...

Подробнее тут.
Ответ написан
YekitKsv
@YekitKsv
DevOps
Я так понимаю у вас сейчас работает сохранение по такому принципу: 1 строка = 1 запрос в базу ? Лучше пачкой сразу отправить. 5000 записей вставить 1 запросом для mysql как нефиг делать.
Ответ написан
@Xukaro
Как на счёт миграций? Выгрузить файл даже довольно большой не займёт много времени
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы