Skip to content

Оптимизация MySQL: удаление данных

Пересказ статьи Lukas Vileikis. Optimizing MySQL: Deleting Data


Удаление данных - основы


Спросите любого администратора баз данных, как удалить данные, и вы услышите об одном или двух следующих методов:

  1. Выполните запрос DELETE - запросы DELETE довольно самоочевидны, и они удаляют строки в таблицах базы данных.

  2. Выполните запрос TRUNCATE - TRUNCATE - это брат DELETE с тем главным отличием, что DELETE удаляет подмножество строк, а TRUNCATE удаляет все строки таблицы. TRUNCATE имеет еще одно отличие - он значительно быстрей, чем DELETE при удалении всех строк таблицы, поскольку он имеет меньше накладных расходов. Но давайте начнем с начала.


Для начала рассмотрим обычный запрос DELETE, который в MySQL выглядит следующим образом:

DELETE FROM имя_таблицы WHERE [логическое_выражение]

По частям:
Continue reading "Оптимизация MySQL: удаление данных"

Мастерство работы с индексами в SQL Server: выбор правильного порядка столбцов

Пересказ статьи Eitan Blumin. SQL Server Index Mastery: Choosing the Right Column Order


Введение


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

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

В этом руководстве я буду использовать мой реальный опыт работы консультантом для исследования мыслительного процесса, стоящего за выбором лучшей последовательности столбцов в индексе, логики принятия решений и предложения некоторых практических решений для достижения оптимальной производительности базы данных. Continue reading "Мастерство работы с индексами в SQL Server: выбор правильного порядка столбцов"

Фильтрованные индекс в SQL Server: основы

Пересказ статьи Simon Liew. SQL Server Filtered Index Essentials Guide


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

Фильтрованные индексы - это обычные некластеризованные индексы, которые содержат только подмножество данных (фильтрованные данные). Фильтрованные индексы особенно полезны для узкого покрытия запроса, который требует быстрого извлечения и высокой доступности.

Ключом для правильного использования оптимизатором SQL Server фильтрованных индексов является:

  1. Убедиться, то предикат (предикаты) запроса эквивалентны выражению фильтрованного индекса. Иногда предикат не должен точно совпадать с выражением, и оптимизатор SQL Server может определить это. Однако чем проще, тем лучше.

  2. Предикат ((предикаты) запроса на столбце (столбцах) фильтрованного индекса не параметризуются или не используют присвоение переменной.
Continue reading "Фильтрованные индекс в SQL Server: основы"

Обобщенный инвертированный индекс в PostgreSQL

Пересказ статьи Yash Marathe. Generalized Inverted Index in PostgreSQL


Исследование достоинств и недостатков GIN-индексов в PostgreSQL

Содержание

  1. Мотивация

  2. Введение

  3. GIN-индексирование изнутри

  4. Практический пример

  5. Уроки индекса GIN Trigram GitLab

  6. Заключение

  7. Ссылки

Continue reading "Обобщенный инвертированный индекс в PostgreSQL"