Мы создаем приложение, которое требует ежедневной вставки приблизительно 1,5 миллиона строк данных на таблицу. У нас есть 16 таблиц. Мы отслеживаем 3-дневные исторические данные, включая данные текущего дня.Запрос данных во время выполнения его вставки: можем ли мы использовать кеширование?
Приложение выполнено с использованием C#; на стороне сервера мы запускаем exe, который заполняет таблицы данных в течение рыночных часов (4,5 часа), и мы обновляем 16 таблиц каждые 5 секунд.
На стороне клиента приложение получает запросы пользователей, которые требуют последних вставленных данных (за последние 5 секунд) и исторической точки, которая может быть сегодня или раньше, и как-то их расписывает.
У нас возникает серьезная проблема с производительностью, так как один запрос может занять 1 секунду или больше, что слишком много. Вопрос в том, что для сегодняшних данных, которые вставляются во время выполнения, можно ли использовать кеширование вместо перехода в базу данных каждый раз, когда мы хотим что-то из сегодняшних данных? Будет ли это более эффективным? И если да, то как мы можем это сделать? P.S один день данных составляет приблизительно 300 МБ, и у нас достаточно ОЗУ
спасибо за ответ. Время запроса составляет 0 секунд после некоторой оптимизации. Тем не менее, мы запрашиваем VPN-соединение 512 и пользовательский интерфейс замерзает. Я не понял, что вы действительно предлагали решить! Не могли бы вы подробнее рассказать? – mustafabar
@mustafabar добавил обновление об этом. – eglasius