Первоначальное руководство по настройке базы данных
Люди часто спрашивают меня о некоторых быстрых советах по настройке базы данных. Это все равно, что спросить совета у дипломированного бухгалтера, как сэкономить на налогах в конце финансового года. Бухгалтер может дать вам несколько советов по экономии денег, которые помогут вам подавать меньше налоговых деклараций за год, но реальный способ использовать силу денег и баз данных — это инвестировать в них с самого начала, имея четкий план.
В первые дни разработки программного обеспечения команды часто пренебрегают проектированием хорошей базы данных. И помимо плохо спроектированной схемы они добавляют SQL-запросы, которые еще больше ухудшают ситуацию. Вы запускаете продукт, все идет хорошо, наблюдается постоянный рост пользователей (и данных), и, прежде чем вы это заметите, система шатается под давлением, пытаясь обработать данные. Плохие SQL-запросы создают дополнительную нагрузку на сервер.
Следовательно, хороший дизайн и написание правильных SQL-запросов — это первые шаги к созданию надежной базы данных. Затем вы выполняете фактическую настройку и оптимизацию базы данных. Я следую приведенным ниже шагам, чтобы просмотреть любую базу данных, в которой возникла проблема.
1. Проектирование и разработка базы данных— 70% проблем решаются с помощью хранимых процедур, функций, триггеров, временных таблиц, представлений и т. д. и наличия хороших SQL-запросов.
**2. Индексы **— Добавление индексов не является решением всех проблем. Нет никакой гарантии, что сервер базы данных будет использовать добавленный вами индекс. Добавление подсказок может помочь, но заставлять сервер использовать подсказку определенно не рекомендуется. Добавление индексов еще больше увеличит размер базы данных.
3. Обслуживание БД— Проверка, не повреждены ли какие-либо таблицы, и их восстановление.
4. Кэширование запросов— Многие серверы теперь поддерживают эту функцию. Иногда включение кеша запросов может быть недостатком для системы в зависимости от стека приложений. Любой механизм кэширования страдает от «пробуксовки», и то же самое можно сказать о кэшировании запросов.
5. Настройка сервера— Проверка и настройка таких параметров, как буфер памяти, размер набора результатов, может повлиять на производительность сервера. Значения этих переменных зависят от аппаратной конфигурации машины, на которой работает сервер, а также приложений и служб, работающих на ней.
После этого нужно выполнить много других шагов. Различные серверы баз данных имеют разные параметры и синтаксис, но основные принципы настройки любого сервера более или менее одинаковы. Сначала проверьте код, затем настройте параметры сервера, а затем перейдите к изменению оборудования. Это здесь…