Skip to content

Статистика SQL Server в группах доступности Always On

Пересказ статьи Rajendra Gupta. SQL Server Statistics in Always On Availability Groups


Введение в статистику SQL Server


Статистика существенно влияет на производительность запросов в SQL Server. Она помогает оптимизатору запросов подготовить план выполнения, используя распределение значений в задействованных строках. Если статистика не обновляется, это может привести к плану выполнения с интенсивным использованием ресурсов. Например, для больших таблиц с миллиардами записей, SQL может выбрать использование сканирования индекса вместо поиска в нем.

Continue reading "Статистика SQL Server в группах доступности Always On"

Погружение в SET STATISTICS IO ON для SQL Server

Пересказ статьи Eric Blinn. SQL Server SET STATISTICS IO ON Deep Dive


Проблема


Я использовал параметр STATISTICS IO как средство для настройки производительности SQL Server, однако основное внимание я уделял логическим чтениям. Я вижу здесь значительно больше выходной информации, которую я хотел бы понять и использовать для настройки запросов.
Continue reading "Погружение в SET STATISTICS IO ON для SQL Server"

Что это за база данных model?

Пересказ статьи Garry Bargsley. What is a model database?


Вы заглядывали когда-нибудь в раздел системных баз данных SSMS? Те, кто только начинает работать с SQL Server, могут многого не знать о важных системных базах данных. Для функционирования каждого SQL Server требуются четыре системные базы данных.
Continue reading "Что это за база данных model?"

Синтаксис MySQL CREATE TABLE для разработчиков T-SQL

Пересказ статьи Edwin Sanchez. Top 5 MySQL CREATE TABLE Syntax for T-SQL Developers


Вы разработчик T-SQL, изучающий основы MySQL? Тогда одной из вещей, которую вы захотите узнать, это CREATE TABLE в MySQL. Кроме всего прочего, наискорейший способ изучить новую платформу баз данных SQL, это сравнение общей функциональности и синтаксиса.

Continue reading "Синтаксис MySQL CREATE TABLE для разработчиков T-SQL"

Когда обновляется статистика?

Пересказ статьи Matthew McGiffen. When do Statistics get updated?


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

Continue reading "Когда обновляется статистика?"

Руководство по триггерам в SQL: настройка отслеживания базы данных в PostgreSQL

Пересказ статьи Daniel Lifflander. A Guide to SQL Triggers: Setting up Database Tracking in PostgreSQL


Триггеры в SQL встречаются не так часто, однако они могут оказаться отличным решением в определенных ситуациях. Я покажу, как использовать триггеры в PostrgeSQL для обеспечения целостности данных и отслеживания изменений в базе.

Continue reading "Руководство по триггерам в SQL: настройка отслеживания базы данных в PostgreSQL"

Объекты поддержки диаграмм базы данных SQL Server Management Studio не могут быть установлены

Sergey Grigoyan. SQL Server Management Studio Database Diagram Support Objects Cannot be Installed


Проблема


Иногда необходимо нереименовать машину хоста после установки SQL Server. После изменения имени хоста и выполнения связанных с этим изменений мы можем успешно подключаться с новым именем и без проблем работать с SQL Server. Однако возможна скрытая проблема, с которой вы можете столкнуться при создании диаграммы базы данных. Ниже показано сообщение об ошибке, которое вы можете получить и в котором говорится, что невозможно создать диаграмму базы данных, т.к. у базы данных отсутствует допустимый владелец.
Continue reading "Объекты поддержки диаграмм базы данных SQL Server Management Studio не могут быть установлены"

Нормализация для сокращения блокировок

Erik Darling. Normalizing To Reduce Blocking


Посыл


Я вижу множество таблиц, которые выглядят примерно так:

CREATE TABLE dbo.orders
(
order_id int NOT NULL PRIMARY KEY
DEFAULT (NEXT VALUE FOR dbo.order_id),
order_date datetime NOT NULL,
order_ship_date datetime NOT NULL,
order_total money NOT NULL,
order_tax money NOT NULL,
customer_id int NOT NULL
DEFAULT (NEXT VALUE FOR dbo.customer_id),
customer_fullname nvarchar(250),
customer_street nvarchar(250),
customer_street_2 nvarchar(250),
customer_city nvarchar(250),
customer_state nvarchar(250),
customer_zip nvarchar(250),
customer_country nvarchar(250)
);

Continue reading "Нормализация для сокращения блокировок"