Каковы ваши наиболее распространенные оптимизации SQL? - PullRequest
30 голосов
/ 26 августа 2009

Какая у вас самая распространенная оптимизация SQL, которую вы использовали?

Ответы [ 17 ]

1 голос
/ 26 августа 2009

Снижение уровней изоляции транзакций, чтобы обойти блокировки таблиц для пользовательских запросов. Не все время, но для графического интерфейса пользователя, он прекрасно работает.

1 голос
/ 26 августа 2009

Убедитесь, что таблицы объединены в правильном порядке.

1 голос
/ 26 августа 2009

Если вы говорите на обычном, как на самом деле, то индексы - это первое, что всплывает в моей голове.

Они являются мощной техникой, которую часто неправильно понимают и довольно часто злоупотребляют.

Тогда я бы добавил денормализацию, которая может значительно повысить производительность для многих баз данных.

Оптимизация запросов - третья, и она тоже очень помогает. В настоящее время я использую MySQL, и ведение журнала запросов очень помогает для оптимизации.

Memcached определенно не распространен, хотя какое-то кэширование является частью многих веб-сайтов на стороне сценариев (ASP.Net или PHP).

0 голосов
/ 26 августа 2009

Пара подсказок: Используйте

delete from table where id>=1 and id<=3;

вместо

delete from table where id=1;
delete from table where id=2;
delete from table where id=3;

Также используйте синтаксис «IN» вместо «OR»

0 голосов
/ 26 августа 2009

Избегайте использования встроенных функций, таких как convertdate, stringreplace и т. Д. В своих представлениях. Если вы не можете убедиться, что данные в правильном формате, используйте хранимые процедуры, которые запускаются регулярно «очищать» данные в ваших соответствующих таблицах.

это неприятно, но экономит время просмотра, т.е. делает пользователя счастливым ... ^^

0 голосов
/ 24 сентября 2010

Не устанавливайте ограничения, если это не требуется, поскольку ограничения будут добавлять индекс, чем больше число индексов, тем больше времени требуется для вставки данных.

0 голосов
/ 26 августа 2009
  1. индексирует свою наиболее распространенную оптимизацию
  2. Де нормализация таблиц.
  3. Снятие ограничений (только если вы знаете, что делаете)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...