Как стать автором
Обновить
16.57

Microsoft SQL Server *

Система управления реляционными базами данных

Сначала показывать
Порог рейтинга
Уровень сложности

GROUPING SETS

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.5K

В двух последних статьях приводились примеры агрегации WITH ROLLUP и WITH CUBE. В SQL Server 2008 появился новый, более мощный синтаксис, совместимый с ANSI SQL 2006. В этой статье будет рассказано об этих изменениях.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии7

Немного про OR в SQL запросах

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров12K

Несмотря на избитость темы и многочисленные рекомендации избегать OR в выражениях WHERE/ON SQL запросов, жизнь вносит свои коррективы. Иногда сама постановка задачи подразумевает необходимость использовать OR. Я не собираюсь здесь рассматривать простые случаи, а сразу возьму быка за рога и рассмотрю случай, когда OR должно привести к двум разным выборкам по разным индексам одной и той же таблицы.

Читать далее
Всего голосов 26: ↑23 и ↓3+20
Комментарии26

Новое в SQL Server 2022: Microsoft.Data.Sqlclient

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров2.3K

Популярная среди администраторов баз данных SQL Server Management Studio (SSMS) для подключения к серверам баз данных (по версию 18.12.1 включительно) использовала System.Data.Sqlclient (SDS). Новая версия SQL Server теперь поставляется с библиотеками Microsoft.Data.Sqlclient (MDS). Пакет Microsoft.Data.SqlClient теперь доступен на NuGet и становится основным способом доступа к данным для SQL Server. Этот пакет поддерживает как .NET Core, так и .NET Framework. Создание нового SqlClient в новом пространстве имен позволяет старому System.Data.SqlClient и новому Microsoft.Data.SqlClient жить бок о бок, хотя это и не происходит автоматически.

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Комментарии0

Агрегат WITH CUBE

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров2K

В предыдущей статье говорилось о том как  работает агрегат WITH ROLLUP. В этой статье мы рассмотрим, как реализована агрегация WITH CUBE. Как и предложение WITH ROLLUP, предложение WITH CUBE позволяет просчитать несколько «уровней» агрегации в одном операторе. Разницу между двумя этими агрегатами давайте рассмотрим на примере. Мы будем использовать те же вымышленные данные о продажах, что и в прошлый раз.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии2

Истории

Новое в SQL Server 2022: изменения в функции ISJSON

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.9K

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

Читать далее
Всего голосов 10: ↑8 и ↓2+6
Комментарии4

Записки оптимизатора 1С (часть 5). Ускорение RLS-запросов в 1С системах

Уровень сложностиСредний
Время на прочтение80 мин
Количество просмотров4.9K

Замахнемся сегодня на RLS.

Обсуждать будем проблемы по нашему профилю, связанные с производительностью 1С:Предприятие. Но, в целом, этот материал может быть полезен и не только 1С-никам.

Почему запросы с RLS часто такие долгие?

Какие есть варианты их ускорить?

Читать далее
Всего голосов 16: ↑16 и ↓0+16
Комментарии33

Рекомендации по ведению SQL-кода

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров19K
В этом материале разберем общие рекомендации по ведению SQL-кода на примере СУБД MS SQL (T-SQL). Однако, многие пункты можно также применить и к другим СУБД.
Читать дальше →
Всего голосов 55: ↑51 и ↓4+47
Комментарии382

Новое в SQL Server 2022: опция WAIT_AT_LOW_PRIORITY в команде DBCC SHRINKDATABASE

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров1.2K

Новая опция WAIT_AT_LOW_PRIORITY в команде DBCC SHRINKDATABASE предоставляет возможность снизить конкуренцию за блокировки во время сжатия базы или файла, заставляя сжатие пережидать окончание других операций на сервере, блокирующих сжатие. Это похоже на опцию WAIT_AT_LOW_PRIORITY для онлайн операций с индексами, но с некоторыми отличиями.

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии1

Проблемы при переходе с MS SQL на PostgreSQL. Типы данных

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров9.6K

Исходя из того, что предыдущую статью не заминусовали и даже не сильно критиковали, попробую продолжить серию и поделиться с проблемами некоторых различий типов данных в MS SQL и PostgreSQL.

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии16

Проблемы при переходе с MS SQL на PostgreSQL.Активное использование временных таблиц

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров16K

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

Читать далее
Всего голосов 10: ↑9 и ↓1+8
Комментарии29

Новое в SQL Server 2022: Обзор использования Intel QuickAssist

Уровень сложностиСложный
Время на прочтение11 мин
Количество просмотров1.5K

Технология Intel® QuickAssist (Intel QAT) в SQL Server 2022 призвана обеспечить аппаратное ускорение и возможности разгрузки процессоров от функций сжатия и распаковки резервных копий баз данных. Использование этой технологии даёт заметное снижение нагрузки на процессоры, времени создания резервных копий, а также уменьшает занимаемое под хранение копий место.

В SQL Server 2022 интегрированы возможности сжатия/распаковки с помощью библиотеки QATzip и связанной с ней библиотеки Intel Intelligent Storage Acceleration Library (ISA-L). Intel ISA-L устанавливается вместе с QATzip, и наличие их является необходимым условием для включения аппаратного ускорения Intel QAT на уровне экземпляра.

QATzip в настоящее время поддерживает передачу нагрузки резервного копирования на мощности периферийного аппаратного устройства в виде адаптера PCIe, либо на встроенный чипсет, а если этого нет, может обеспечивать программное сжатие по тем же алгоритмам.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Записки оптимизатора 1С (часть 4). Параллелизм в 1С, настройки, ожидания CXPACKET

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров8.3K

Параллелизм – это возможность выполнения запросов сервером СУБД в нескольких потоков. По умолчанию в настройках SQL Server параллелизм не ограничен и потенциально для выполнения запроса могут использоваться все ядра всех процессоров (max degree of parallelism= 0). В то же время, в системах 1С вендор настоятельно рекомендует установить max degree of parallelism = 1, и, соответственно, один запрос будет использовать только одно ядро.

Почему так и что же с этим всем делать? Давайте разбираться.

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии1

Как жесткую программную систему превратить в гибкую или Двадцать лет спустя

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров3K

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

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии4

Ближайшие события

Новое в SQL Server 2022: Get more out of Reporting Services with an improved user experience

Время на прочтение3 мин
Количество просмотров1K

В новой версии SSRS мы проделали значительную работу по обеспечению лучшего уровня доступности, и добавили новые возможности, которые включают в себя:

 Расширенную поддержку Windows Narrator1 для новых клиентских операционных систем Windows и Windows Server.

 Улучшения в безопасности.

 Улучшения производительности браузера с помощью Angular.

 Исправлены баги, ухудшавшие доступность.

 Поддержка каталога сервера отчетов для экземпляров SQL Server 20222.

  Повышена надежность.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Повышение эффективности SQL-запросов: советы и рекомендации

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров14K

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

Читать далее
Всего голосов 22: ↑18 и ↓4+14
Комментарии7

Записки оптимизатора 1С (часть 3). Распределенные взаимоблокировки в 1С системах

Время на прочтение4 мин
Количество просмотров3.7K

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

Читать далее
Всего голосов 2: ↑1 и ↓10
Комментарии0

Новое в SQL Server 2022: улучшаем масштабируемость с Buffer Pool Parallel Scan

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров2K

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

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

Сканирование буферного пула — это распространённая внутренняя операция, потенциально требующая перебора миллионов буферов. Например, экземпляр SQL Server с пространством буфера в 1 ТБ требует просмотра всего буферного пула с перебором больше 130 миллионов буферов. Это справедливо для любой редакции SQL Server, независимо от использования буферного пространства, поскольку, чтобы найти буферы определенной базы данных, просмотр буферного пула всегда перебирает весь массив дескрипторов буферов.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии1

Новое в SQL Server 2022: опция WAIT_AT_LOW_PRIORITY для создания индексов

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров1.8K

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

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Исследование производительности 1С на СУБД: Tantor, Postgres 1С, PostgresPro, MS SQL

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров11K

Команда EFSOL Oblako продолжает серию тестов производительности 1С. Подобные тесты мы проводим уже несколько лет и на этот раз решили сравнить актуальные СУБД для работы с 1С:Предприятие 8.3, включая продукт российского разработчика - Tantor СУБД.

В данном исследовании для проведения нагрузочных тестов в связке с 1С использовались не только разные СУБД, но и разные операционные системы, подробнее о тестовом стенде ниже.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии28

Как не потерять производительность при секционировании в MS SQL

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров3.3K

Рассмотрим достаточно распространенную ситуацию. Имеется огромная таблица примерно следующей структуры:

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии5