Skip to content

Обработка неиспользуемых индексов

Пересказ статьи Chad Callihan. Handling Unused Indexes


Что делать, если вы видите, что индекс обновляется, но с ним мало выполняется операций поиска и сканирования? Следует ли вам удалить его, поскольку к таблице нет запросов, или выбирается лучший индекс? Если индекс не имеет обновлений, поиска или сканирования, нужно ли его тогда удалять? Продолжить чтение "Обработка неиспользуемых индексов"

Анатомия плана запроса в PostgreSQL

Пересказ статьи Everett Berry. Anatomy of a PostgreSQL Query Plan


Начинать оптимизацию запроса следует с планировщика запросов (Query Planner). В этой статье объясняется, как выполняется запрос, и как понимать команду EXPLAIN.
Продолжить чтение "Анатомия плана запроса в PostgreSQL"

Замена ограничений уникальности уникальными индексами

Пересказ статьи Erik Darling. Replacing Unique Constraints With Unique Indexes


Следует ли?


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

Продолжить чтение "Замена ограничений уникальности уникальными индексами"

Полезные команды/запросы PostgreSQL

Пересказ статьи Sahil Aggarwal. Useful PostgreSQL CommandsQueries


В этой статье мы вкратце обсудим некоторые запросы и их использование, особенно что касается мониторинга и отладки проблем, связанных с PostrgeSQL.
Продолжить чтение "Полезные команды/запросы PostgreSQL"

Логические чтения против физических

Пересказ статьи Erik Darling. Logical vs Physical Reads


В процессе


Иногда мне задают вопрос, как много я видел запросов, которые выполняли множество логических чтений. Ответ: не очень часто.

Основная метрика, на которую я смотрю, это ЦП, как общая, так и средняя. Если вы наблюдаете её, то наиболее вероятно также обнаружите тот тип запросов, которые выполняют много чтений, поскольку где-то попутно обнаружится отсутствие подходящего индекса.
Продолжить чтение "Логические чтения против физических"

Внутренняя структура транзакционной репликации в SQL Server

Пересказ статьи Raja Jegan. SQL Server Transactional Replication Internals


Транзакционная репликация в SQL Server является одним из наиболее общих методов репликации, используемой для копирования, распределения или предоставления данных множеству потребителей. В этой статье мы обсудим репликацию, её различные виды, уделив особое внимание работе транзакционной репликации.


Продолжить чтение "Внутренняя структура транзакционной репликации в SQL Server"
Категории: T-SQL

Поиск хранимой процедуры по тексту

Пересказ статьи Chad Callihan. Searching a Stored Procedure for Text


Такая история. Пусть сервер баз данных получил новый релиз, который включает изменение хранимой процедуры. Предполагается, что все базы данных получают обновления, но по той или иной причине возникли проблемы с релизом, и он должен быть остановлен на полпути. Возможно, некоторые изменения откатились, а другие - нет. Мы не имеем точной журнализации, какие базы данных обновились, но мы хотим знать, обновилась ли хранимая процедура до новой версии, или осталась в старой. Продолжить чтение "Поиск хранимой процедуры по тексту"
Категории: T-SQL

Где мои ошибки, SQL Server?

Пересказ статьи Garry Bargsley. Where are my SQL Server Errors?


Вы открывали когда нибудь журнал ошибок SQL Server и задавались вопросом: "А где ошибки?". Копаться в журнале ошибок в поисках того, что вам нужно, может вызвать головную боль. Конечно, вы можете использовать некоторые методы парсинга для поиска нужной информации, но иногда вам хочется взглянуть на журнал ошибок с помощью SSMS.


Продолжить чтение "Где мои ошибки, SQL Server?"
Категории: T-SQL

Новости за 2021-10-09 - 2021-10-15

§ Участие в рейтинге обучающего этапа становится платным. Подробности в последней статье FAQ.


§ Под номером 160 на обучающем этапе выставлена новая задача от Kursist (сложность 1 балл).
Новая задача выставлена под номером 306 для обсуждения (2 балла).

Продолжить чтение "Новости за 2021-10-09 - 2021-10-15"

DBCC ShrinkDatabase - я хочу сжать базу данных

Пересказ статьи Steve Stedman. DBCC ShrinkDatabase – I want to shrink my database


Не делайте этого. Вы можете перестать читать эту статью, но просто не делайте этого.

Эта публикация относится к сжатию файлов базы данных (файлов mdf или ndf), а не сжатию файла журнала. Файл журнала - это совершенно другая тема, хотя ShrinkDatabase действительно сжимает файл журнала.
Продолжить чтение "DBCC ShrinkDatabase - я хочу сжать базу данных"

Время компиляции запроса

Пересказ статьи Grant Fritchey. QUERY COMPILE TIME


Недавно мне задали вопрос о том, как отследить время компиляции запроса. Это действительно довольно интересный вопрос, поскольку существует не так много способов, сообщающих сколько времени занимает компиляция запроса, и они не обязательно согласуются между собой. Для большинства из нас зачастую время компиляции данного запроса не имеет значения. Однако я люблю рассказывать историю о запросе, который у меня на старой системе выполнялся 90 мс, но компилировался 5 минут. Короче, иногда время компиляции имеет значение.
Продолжить чтение "Время компиляции запроса"