Если у вас нет особенно огромного количества записей посещаемости, которые вы добавляете каждый день, лучший способ сделать это с помощью insert
заявлений (я не знаю, почему именно у вас есть вам в голову, что это плохая идея, наши базы данных часто обрабатывают десятки миллионов строк, добавляемых в течение дня).
Если ваши показатели посещаемости превышают эти показатели, вы выигрываете и получаете столько людей, которые посещают любые функции или курсы, которые вы используете: -)
Массовое копирование и импорт, как правило, предназначены для передачи значительных объемов данных, и я имею в виду такие же размеры, как и все содержимое базы данных, на сайт аварийного восстановления (и другие подобные вещи). Я никогда не видел, чтобы он использовался в дикой природе как способ передачи небольших данных в базу данных.
Обновление 1:
Я предполагаю, основываясь на комментариях, что вы на самом деле вводите записи посещаемости по одному в свое веб-приложение, а 1500 - это слишком долго.
Если это так, то это не замедляет работу базы данных или веб-приложения. Это как быстро вы можете печатать.
Решение этой проблемы (если действительно является проблемой) состоит в том, чтобы обеспечить функциональность массового импорта в ваше веб-приложение (или базу данных напрямую, если вы хотите, но, на мой взгляд, вам лучше иметь приложение выполняет всю работу).
Это, конечно, при условии, что вводимые вами данные могут быть доступны в электронном виде. Если все, что вы получаете, это листки бумаги с подробностями посещаемости, то вам, вероятно, не повезло (несмотря на решения для оптического распознавания символов), хотя, если бы вы могли заставить несколько людей делать это одновременно, у вас может быть некоторый шанс сделать это своевременно манера. Наем 1500 человек делает один, каждый должен опрокинуть это приблизительно через пять минут: -)
Вы можете добавить функциональность в свое веб-приложение, чтобы принимать файл, содержащий сведения о посещаемости, и обрабатывать каждую запись, вставляя в свою базу данных по каждой строке. Это будет намного быстрее, чем ввод информации вручную.
Обновление 2:
На основании вашей последней информации, что обработка данных после запуска из веб-приложения занимает много времени, я не уверен, сколько данных у вас есть, но 100 записей в принципе не должны занимать время совсем.
Я не могу сказать, где узкое место, но вы должны это расследовать.
Я знаю, что в прошлом у нас были длительные операции из веб-интерфейса, где мы не хотели задерживать пользователя. Для этого существует множество решений, два из которых мы реализовали:
- переводит операцию в автономный режим (т. Е. Запускает ее в фоновом режиме на сервере), предоставляя пользователю идентификатор для проверки состояния с другой страницы.
- то же самое, но уведомить пользователя по электронной почте, как только он закончится.
Это позволило им продолжать работу в асинхронном режиме.