Аннотация
Оптимизация запросов является важной частью работы любого приложения, взаимодействующего с базами данных. Наиболее эффективным методом ускорения поисковых запросов является применение индексных структур разного вида. Известно, что запросы, использующие кластеризованные и некластеризованные индексы, максимально производительны в том случае, когда столбцы реляционных таблиц содержат невысокий процент повторяющихся значений. Если обрабатываемые данные не избирательны, использование большинства видов индексов является неэффективным. Основной целью представленной работы является расширение возможностей технологий в среде MS SQL Server по индексированию данных и увеличению производительности поисковых запросов. Для реализации этой цели было создано Net-приложение на языке программирования высокого уровня C#, использующее алгоритм формирования битовых шкал для обработки столбцов реляционных таблиц с большим количеством дублированных значений. В статье сделан обзор основных существующих методов, повышающих эффективность выполнения запросов, а также видов индексных структур, используемых в различных системах управления базами данных. Продемонстрированы примеры работы приложения по выборке значений с использованием битовых индексов. Тестирование созданного программного продукта на таблицах с разной кардинальностью позволило сделать выводы о значительном сокращении времени обработки данных при применении битовых шкал по сравнению с другими алгоритмами поиска.
Ключевые слова
Оптимизация запросов SQL, индексирование данных, двоичные индексы, словарь данных.
1. Стаин Д.А., Часовских В.П. Методы оптимизации и повышения эффективности доступа к данным в информационных системах управления организацией // Фундаментальные исследования. 2014. № 12-10. С. 2114-2119.
2. Оптимизация производительности выполнения запросов (SQL Server Compact) //Microsoft. Developer Network [Электронный ресурс]. Режим доступа: https://msdn.microsoft.com/ru-ru/library/ms172984.aspx. Заглавие с экрана. (Дата обращения: 10.10.2017).
3. Фролов К.М., Князев В.Н. Оптимизация запросов к базам данных на основе механизма индексирования // Сборник научных статей XII международной научно-технической конференции «Новые информационные технологии и системы». 2015. С. 201-204.
4. Типичные причины неоптимальной работы запросов и методы оптимизации // 1С: ИТС. Информационно-технологическое сопровождение пользователей 1С: Предприятие [Электронный ресурс]. Режим доступа: https://its.1c.ru/db/metod8dev#content:5842:hdoc. Заглавие с экрана. (Дата обращения: 10.10.2017).
5. Optimizing Database Structure [Электронный ресурс]. Режим доступа: https:// dev.mysql.com/ doc/refman /5.7/ en/optimizing-database-structure.html. Заглавие с экрана. (Дата обращения: 10.09.2017).
6. Петухов И.С. Алгоритм определения необходимых индексов для оптимизации запросов с соединением двух таблиц в СУБД MySQL (INNODB) // Научный вестник ГосНИИ ГА. 2017. № 16. С. 98-107.
7. Ригс С., Кросинг Х. Администрирование PostgreSQL 9. Книга рецептов / пер. с англ. Самохвалова Е.В. М.: ДМК Пресс, 2013. 368 с.
8. Тарасов С.В. СУБД для программиста. Базы данных изнутри. М.: Солон-Пресс, 2015. 320 с.
9. Туманов В.Е. Проектирование хранилищ данных для приложений систем деловой осведомленности (Business Intelligence Systems). М.: Национальный Открытый Университет «ИНТУИТ», 2016. 958 с.
10. SQL Server 2000 [Электронный ресурс]. Режим доступа: http://www.intuit.ru/studies/courses/68/68/lecture/2016?page=3. Заглавие с экрана. (Дата обращения: 10.10.2017).
11. Microsoft. Developer NetWork [Электронный ресурс]. Режим доступа: https://msdn.microsoft.com/ru-ru/library/ms175049(v=sql.120).aspx. Заглавие с экрана. (Дата обращения: 10.09.2017).
12. Борри Х. Firebird: руководство разработчика баз данных. СПб.: БХВ-Петербург, 2013. 1104 с.
13. Хендерсон К. Профессиональное руководство по SQL Server: структура и реализация. М.: Вильямс, 2006. 1044 с.
14. Академия Microsoft: Распределенные базы и хранилища данных [Электронный ресурс]. Режим доступа: http://www.intuit.ru/studies/courses/1145/214/lecture/5523?page=2 intuit. Заглавие с экрана. (Дата обращения: 10.10.2017).
15. Скит Д. C# для профессионалов: тонкости программирования. М.: Вильямс, 2014. 610 c.
- Подробности
- Просмотров: 1472