2017-02-02 2 views
0

В настоящее время я участвую в небольшом проекте, где отчет должен создаваться каждые 30 минут. SQL для отчета должен храниться как представление в базе данных MySQL, и в настоящее время представление будет обновляться, когда приложение обновляется через процесс обновления сервера, на котором он запущен. Однако, просто для изменения кода этот процесс обновления не нужно запускать. Поскольку SQL изменяется довольно часто, и процесс обновления является довольно громоздким, мне интересно, будет ли это проблемой производительности, если представление просто воссоздается каждый раз перед созданием отчета, поэтому каждые 30 минут? (SQL не может просто выполняться напрямую.) Таким образом, нужно развертывать только новый код, но процесс обновления сервера не нужно запускать. Поскольку это не материализованное представление, а лишь некоторый вид операции обновления для некоторого текста, я бы предположил, что для этой базы данных не требуется большая производительность.MySQL Производительность воссоздания просмотра часто

У кого-нибудь есть опыт?

+1

huh?!? Ваш вопрос довольно неясен. Можете ли вы отредактировать и предоставить более подробное описание того, что ваш процесс, что вы пытаетесь сделать, его цель, но сдерживать особенности, которые могут быть конфиденциальными. Ваш вопрос так же смешался, чтобы не следовать должным образом. – DRapp

ответ

0

У MySQL нет «материализованных представлений». Когда вы видите SELECT с точки зрения, он динамически выполняет базовый SELECT.

Если вы изменяете определение из VIEW, хорошо, это просто звучит неправильно. Если вам нужно «передать параметр» в представление, рассмотрите возможность использования хранимой процедуры. Вы можете передавать аргументы и строить запрос «на лету».

Просьба предоставить более подробную информацию.

Смежные вопросы