Конкурентный upsert в SQL Server без гонки проверки
Защитите вставку или обновление уникальным ключом, блокировками диапазона, явной политикой замены и повторами с учётом результата подтверждения.
Читать статьюПрактические статьи о ClickHouse, SQL Server, архитектуре аналитики, производительности, миграциях и эксплуатации баз данных.
Защитите вставку или обновление уникальным ключом, блокировками диапазона, явной политикой замены и повторами с учётом результата подтверждения.
Читать статьюОптимизатор выбирает соединения, доступ и память по оценочному числу строк. Если оценка далека от факта, разумный план становится дорогим.
Читать статьюПолучайте ключи и значения до и после изменения через OUTPUT с учётом порядка строк, триггеров, ошибок транзакции и повторов.
Читать статьюСравнивайте снимки счетчиков за нужный интервал и связывайте ожидания SQL Server с запросами, которые действительно замедлились у пользователей.
Читать статьюИзбегайте целочисленного деления, переполнения промежуточных результатов и расхождений в счетах с помощью правильных типов и правил округления.
Читать статьюПолучайте задания атомарно, учитывайте ограничения READPAST и защищайте нового владельца от запоздавших обновлений старого обработчика.
Читать статьюTempDB обслуживает сортировки, хеширование, версии строк, временные объекты, spills и внутренние таблицы. Плохая конфигурация превращает ее в общий узкий участок.
Читать статьюНаходите размножение строк при JOIN, агрегируйте дочерние наборы на нужном уровне и избегайте ложных исправлений сумм с помощью DISTINCT.
Читать статьюИспользуйте разницы файловых счётчиков для текущей диагностики, различайте данные и журнал и избегайте выводов по средним за весь срок работы.
Читать статьюКоординируйте обработчики через sp_getapplock, проверяйте коды возврата и отличайте временное исключение от постоянной идемпотентности.
Читать статьюDeadlock возникает, когда сеансы удерживают ресурсы, необходимые друг другу. SQL Server завершает один сеанс, но выбранная жертва не обязательно является причиной.
Читать статьюКак реализовать постраничную выборку SQL Server с уникальной сортировкой, подходящим индексом и понятным поведением при изменении данных.
Читать статью