Оптимизация проекта .NET + Angular, который извлекает миллионы записей из базы данных [закрыто]C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Оптимизация проекта .NET + Angular, который извлекает миллионы записей из базы данных [закрыто]

Сообщение Anonymous »

Вопрос:

Вам поручено оптимизировать проект .NET + Angular, который извлекает миллионы записей из базы данных и отправляет их клиентскому приложению для фильтрации. Кроме того, когда данные обновляются, серверная часть обновляет все записи с указанием их статусов. Статусы извлекаются во время выполнения из отдельной таблицы и включаются в список моделей, содержащий статус и соответствующие данные.
В текущей реализации:
  • Запрос возвращает список записей, а затем идентификаторы этих записей используются в другом запросе для получения дополнительных сведений.
  • Как только этот запрос возвращает результат, он отправляется еще одному запросу для получения статусов, связанных с этими записями.
  • Кроме того, записи содержат ссылки на файлы, которые извлекаются с помощью еще одного запроса.
< strong>Вопросы:
  • Как бы вы реорганизовали текущую структуру запроса, чтобы:
    • Устранить проблему повторения, вызванную объединениями?
    • Эффективно обрабатывать несколько статусы или связанные файлы для одной записи?
  • Какие альтернативные стратегии вы могли бы реализовать, чтобы уменьшить количество запросы, обеспечивая при этом точность и полноту данных?
  • Как бы вы обрабатывали сценарии, в которых запись имеет несколько статусов и/или файлов, и агрегировали эти данные в неизбыточный формат для клиента?
  • Предложите ли вы механизм кэширования для повышения производительности и объясните, как бы вы его реализовали в этом сценарии.
  • Как бы вы минимизировали ненужную передачу данных между сервером и клиентом, в то же время обеспечивая эффективную фильтрацию на стороне клиента?
  • Если обновления в реальном времени для записи статусов или связанные файлы, как бы вы разработали решение, отвечающее этому требованию?
Решение, проверенное самостоятельно:

Мы попытались оптимизировать этот процесс, добавив объединения во все эти запросы для получения всей необходимой информации за одну операцию. Однако это приводило к повторению записей, поскольку записи с несколькими статусами или связанными файлами дублировались в наборе результатов.

Подробнее здесь: https://stackoverflow.com/questions/792 ... rom-the-da
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»