Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Сильно ли ключи оптимизируют базу?
 
 автор: Trivium   (27.04.2010 в 18:08)   письмо автору
 
 

Всем привет!
Вот интересен вопрос насколько силён рост производительности в базе данных MySQL, если в таблице строковые поля, по которым может идти поиск будут проставлены как вторичные индексы?
И какую реальную производительность дают многотабличные запросы перед несколькими выборками?
К пример есть таблица товаров основная и есть таблица производителей, и в таблице товаров прописаны в поле отдельном ID производителей. И надо выбрать все товары с производителями.
Может есть какие-то ссылки на тесты скорости работы запросов?

  Ответить  
 
 автор: neadekvat   (27.04.2010 в 19:08)   письмо автору
 
   для: Trivium   (27.04.2010 в 18:08)
 

Во-первых, впервые про вторичные индексы слышу;
Во-вторых, есть такая штука, EXPLAIN;
В-третих, про индексы можно почитать там же, где и про EXPLAIN

  Ответить  
 
 автор: Trivium   (27.04.2010 в 23:08)   письмо автору
 
   для: neadekvat   (27.04.2010 в 19:08)
 

Ну в смысле не индекс, а вторичный ключ.

  Ответить  
 
 автор: Trianon   (27.04.2010 в 23:25)   письмо автору
 
   для: Trivium   (27.04.2010 в 23:08)
 

нет такого понятия.
Есть понятия первичный ключ, чужой ключ, составной ключ
Есть понятие индекса, построенного на поле (полях) того или иного ключа. Или не ключа.
обычный индекс, уникальный индекс, составной индекс, полнотекстовый индекс.

  Ответить  
 
 автор: Trivium   (28.04.2010 в 11:20)   письмо автору
 
   для: Trianon   (27.04.2010 в 23:25)
 

Ну я знаю.
Но насколько они увеличивают производительность?

  Ответить  
 
 автор: Valick   (28.04.2010 в 11:38)   письмо автору
 
   для: Trivium   (28.04.2010 в 11:20)
 

это прямая зависимость от величины базы и места расположения искомого
без индекса СУБД лопатит всю базу от начала и до конца, при использовании индекса СУБД знает например что искомое распологается, в определенном месте в итоге не приходиться тратить время на просмотр ненужных записей.
Вы в школе учились? Знаете что такое алфавитный порядок? Когда легче и быстрее найти свою фамилию в отсортированном по алфавиту списке или когда фамилии записаны в беспорядке?

  Ответить  
 
 автор: Trivium   (04.05.2010 в 04:12)   письмо автору
 
   для: Valick   (28.04.2010 в 11:38)
 

Ну я примерно так себе и представлял. Но именно в скорости какой выигрыш?
Кстати если когда 1 запись надо выбрать и поставить LIMIT 1 то по идее всё дальше ничего не будет идти, а только возьмёт запись и закончить лопатить файл БД?

  Ответить  
 
 автор: Trivium   (07.05.2010 в 04:47)   письмо автору
 
   для: Trivium   (04.05.2010 в 04:12)
 

Провёл тест...
Добавление строкового индекса увеличило скорость выполнения выборки минимум в 27 раз...

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования