Индексация в Базах Данных

Индексация в Базах Данных

Сентябрь 20, 2015

Как работает индексация в базах данных?

 612  28

23,329 просмотров

comments powered by Disqus
2:40:56 5. Базы данных. Индексы и производительность | Технострим

5. Базы данных. Индексы и производительность | Технострим

Слайды лекции: https://bozaro.github.io/tech-db-lectures/05/
► Другие лекции курса: https://www.youtube.com/playlist?list=PLrCZzMib1e9oOFQbuOgjKYbRUoA8zGKnj
Подробнее о курсе: https://park.mail.ru/curriculum/program/discipline/218/

Лекция читается в рамках образовательного проекта "Технопарк Mail.ru Group" при МГТУ им.Баумана.


КРАТКОЕ СОДЕРЖАНИЕ:

Лекция посвящена индексам и производительности.
А так же: протоколированию запросов, плану запросов EXPLAIN, стратегиям запросов и JOINS.

Хронометраж:
00:00:04 О теме лекции
00:00:47 Индексирование. Введение в индексы БД
00:01:55 Варианты индексов. btree — сбалансированное дерево
00:03:56 Индексирование btree (особенности)
00:06:27 hash-индексы
00:08:29 Индексирование hash (особенности). Коллизии hash-индексов
00:11:12 Некоторые типы данных с которыми ни btree, ни hash не работают
00:12:17 Индексирование GiST (R-Tree)
00:13:36 Индексирование GIN (инвертированный)
00:14:39 Индексирование: битовый индекс
00:17:20 Частичный индекс
00:20:35 Функциональный индекс
00:22:19 Кластерный индекс
00:25:45 Покрывающий индекс
00:28:35 Индексирование. "Расплата"
00:30:34 Как создается индекс?
00:32:59 Индексирование. Итог ("подытоживание")
00:35:25 Вопрос из зала по hash-индексам
00:38:07 Большой выигрыш при использовании покрывающих индексов
00:38:44 Ответы на вопросы по индексированию
00:48:30 Тестовая БД для рассмотрения работы индексов
00:54:08 Как выполняется простой запрос? (Тестовая БД)
00:59:44 Как выполняется запрос? (Два условия и два индекса)
01:07:00 Как выполняется запрос? (Сортировка и индексы)
01:09:59 JOIN-стратегии
01:17:10 Профилирование
01:19:16 Несколько вариантов поиска запросов, которые создают основную нагрузку на сервер
01:19:23 Вариант 1 — Статистика запросов
01:22:44 Вариант 2 — Протоколирование запросов
01:25:50 Логирование в CSV
01:27:15 Протоколирование запросов (нюансы)
01:28:41 На что важно обратить внимание при чтении отчетов
01:32:03 EXPLAIN
01:36:08 Параметр ANALYZE (важная ремарка)
01:36:37 EXPLAIN: Некоторые особенности работы
01:37:57 EXPLAIN: Начало
01:39:09 Что такое стоимость? О единицах времени
01:40:37 EXPLAIN: Статистика
01:42:20 EXPLAIN: ANALYZE
01:45:17 EXPLAIN: WHERE
01:48:46 EXPLAIN: TEXT
01:56:52 EXPLAIN: ORDER BY
02:00:40 EXPLAIN: JOIN
02:05:34 EXPLAIN: На что обратить внимание?
02:07:20 EXPLAIN: Разбор примера из тестовой БД
02:08:06 EXPLAIN: Графическое представление
02:09:32 EXPLAIN: Текстовое представление
02:10:31 EXPLAIN: Добавляем индексы
02:21:03 Чем плохи подзапросы?
02:29:02 По поводу производительности
02:36:45 Покрывающий индекс (Продолжение разбора примера из тестовой БД)

————————————

О КАНАЛЕ:

Официальный канал образовательных проектов Mail.Ru Group

► Нажмите здесь для подписки ‣ http://www.youtube.com/TPMGTU?sub_confirmation=1

Актуальные лекции и мастер-классы о программировании от лучших IT-специалистов. Если вы увлечены мобильной и веб-разработкой, присоединяйтесь!

Наши проекты:
Технопарк при МГТУ им. Баумана ‣ https://park.mail.ru
Техносфера при МГУ им. Ломоносова ‣ https://sphere.mail.ru
Технотрек при МФТИ ‣ https://track.mail.ru
Техноатом при МИФИ — https://atom.mail.ru
Технополис при СПбПУ — https://polis.mail.ru

————————————

МЫ В СЕТИ:

Технопарк в ВК | http://vk.com/tpmailru
Техносфера в ВК | https://vk.com/tsmailru
Технотрек в ВК | https://vk.com/trackmailru
Техноатом в ВК | https://vk.com/technoatom
Технополис в ОК: https://www.ok.ru/technopolis
Технополис в ВК: https://vk.com/technopolis_ok
Блог на Хабре | http://habrahabr.ru/company/mailru

 290  12

18,191 просмотров

8:52 Когда стоит создавать индекс?

Когда стоит создавать индекс?

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

Этот урок как раз об этом.

 643  17

18,260 просмотров

15:14 Нормализация в базе данных

Нормализация в базе данных

Для записи данных в реляционную базу данных они должны пройти процесс называемый нормализацией. В этом видео я на примере описываю то, как можно нормализовать таблицу взятую из какого-либо документа.

 2100  22

37,872 просмотров

18:51 SQL Join

SQL Join

Начиная разбираться в SQL многие сталкиваются с проблемой сложности понимания различия между разными JOIN-ами в этом языке.

В этом видео уроке я объясняю: 1) Что такое JOIN. 2) Различие между CROSS JOIN, INNER JOIN, LEFT JOIN, RIGHT JOIN, и FULL JOIN. Также показываю как реализовать FULL JOIN в базах данных, которые не предоставляют такую конструкцию.

 3207  20

69,814 просмотров

24:36 B-дерево

B-дерево

B‐дерево (произносится «би дерево») — это вид деревьев, который гарантирует полную балансировку. Не стоит путать его с бинарными деревьями, так как он с ними не имеет ничего общего.

В этом видео уроке я обсуждаю, что такое B‐дерево и как работает алгоритм добавления данных в него. Как пример я обсуждаю дерево с M=4, также известное как дерево 2‐3‐4.

 1038  9

25,807 просмотров

10:25 Кардинальность в базе данных

Кардинальность в базе данных

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

В этом уроке я описываю связь и реализацию связи один-к-одному и один-к-многому.

 403  7

7,250 просмотров

12:30 Типы ключей в базе данных

Типы ключей в базе данных

Если вы не сталкивались с понятиями «первичный ключ», «вторичный ключ», «внешний ключ», и «сложный ключ», то вам просто необходимо посмотреть этот видео урок.

 1206  12

25,525 просмотров

8:4 Clustered vs. Nonclustered Index Structures in SQL Server

Clustered vs. Nonclustered Index Structures in SQL Server

Clustered and nonclustered indexes share many of the same internal structures, but they're fundamentally different in nature. Watch Microsoft Certified IT Professional Jon Seigel explain the similarities and differences of clustered and nonclustered indexes, using a real-world example to show how these structures work to improve the performance of SQL queries.

Blog post on primary key vs. the clustered index:
http://voluntarydba.com/post/2012/10/02/The-Primary-Key-vs-The-Clustered-Index.aspx

CREATE INDEX statement reference:
http://technet.microsoft.com/en-us/library/ms188783.aspx

ALTER INDEX statement reference:
http://technet.microsoft.com/en-us/library/ms188388.aspx

Index navigation internals by example:
http://sqlblog.com/blogs/paul_white/archive/2011/08/09/sql-server-seeks-and-binary-search.aspx

Sample index data is from the AdventureWorksLT2008R2 sample database:
http://awlt2008dbscript.codeplex.com/releases/view/46169

Visit my channel for more database administration videos:
https://www.youtube.com/voluntarydba

Subscribe to get notified about my latest videos:
https://www.youtube.com/voluntarydba?sub_confirmation=1

Read additional content on my blog:
http://voluntarydba.com

Follow on Twitter:
https://twitter.com/voluntarydba

Like on Facebook:
https://facebook.com/voluntarydba

 6618  84

329,541 просмотров

12:36 Видео курс Transact SQL. Урок 11. Индексы

Видео курс Transact SQL. Урок 11. Индексы

Промокод на скидку 15% на все курсы ITVDN- H94BCAB
Полные видео курса- https://itvdn.com/ru/video/ssms_tsql?utm_source=yb_promo_ssms

Профессиональная работа с индексами — залог достижения высокой производительности SQL Server. В этом уроке мы рассмотрим основные типы индексов и особенности использования их, а также научимся их создавать.

Благодарим всех за лайки, перепосты, добавление в избранное!

http://itvdn.com – видеопортал по обучению программированию

А также подписывайтесь на нас в социальных сетях:

https://vk.com/itvdn
https://www.facebook.com/ITVDN.EDU
https://twitter.com/ITVDN/
https://www.linkedin.com/company/itvdn
https://plus.google.com/u/0/ ItvdnEDU...

Свои предложения присылайте на почту: [email protected]

 27  29

2,542 просмотров