Книга поможет выработать правильную тактику и оценить перспективы раз



Pdf көрінісі
бет22/24
Дата19.11.2023
өлшемі1.3 Mb.
#483696
1   ...   16   17   18   19   20   21   22   23   24
refaktoringsql-prilozheniy

СУБД
Увеличение скорости
MySQL
3,2
Oracle
1,2
SQL Server
1,3


30
Глава 1. Оценка
Настройка SQL заново
Когда один индекс не дает тех результатов, на которые мы рассчитыва-
ем, иногда улучшить производительность может другой индекс . Пре-
жде всего, почему индекс создан только по одному столбцу accountid? 
По существу, индекс представляет собой отсортированный по древовид-
ной схеме список значений ключа, связанных с физическими адреса-
ми строк, соответствующих значениям этих ключей, – точно так же, 
как предметный указатель этой книги представляет собой отсортиро-
ванный список ключевых слов, связанных с номерами страниц . Если 
мы осуществляем поиск по значениям из двух столбцов, а проиндек-
сирован только один из них, нам придется зайти на все строки, соот-
ветствующие ключу, который мы ищем, и отбросить подмножество из 
этих строк, которое не соответствует ключу для другого столбца . Если 
мы индексируем оба столбца, то сразу получаем то, что нам нужно .
Мы можем создать индекс по (accountid, txdate), поскольку дата тран-
закции является вторым критерием запроса . Создав составной индекс 
по обоим столбцам, можно быть уверенным, что SQL-машина сумеет 
осуществить эффективный поиск (известный как сканирование диапа-
зона) по индексу . Если с моими тестовыми данными индекс по одному 
столбцу увеличил производительность на MySQL в 3,1 раза, то с ин-
дексом по двум столбцам увеличение скорости составило 3,4 раза, так 
что теперь программа работает около трех с половиной минут . Однако 
Oracle и SQL Server даже с индексом по двум столбцам не дали ускоре-
ния по сравнению с индексом по одному столбцу (табл . 1 .4) .
Таблица 1.4. Коэффициент увеличения скорости после изменения 
индекса 


Достарыңызбен бөлісу:
1   ...   16   17   18   19   20   21   22   23   24




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет