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

Microsoft SQL Server *

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

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

Инструкция по бэкапу одной базы в Postgres – миф или реальность

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

Бэкап в Postgres состоит из набора граблей, которые нужно обойти для успешного восстановления. Они заложены в самых неожиданных местах от предмета резервного копирования (база или кластер), до структуры каталогов. Один неверный шаг и восстановление будет невозможным. Почему нельзя  было сделать проще как в MS SQL или Oracle? Почему бэкап в Postgres оставляет впечатление чьей то лабораторной работы? Статья адресована прежде всего специалистам 1С избалованным комфортом в MS SQL, в суровых буднях импортозамещения на Postgres.

Сохранить в бэкап
Всего голосов 13: ↑8 и ↓5 +3
Комментарии 48

Новости

Common Table Expressions

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

Common Table Expressions (CTE) или обобщенное табличное выражение, впервые появилось в версии SQL Server 2005, и это простой способ разбить сложный запрос T-SQL на несколько запросов, что придаёт больше гибкости и управляемости. CTE во многом очень похожи на представления. В отличие от представления, которое можно создать один раз и потом использовать в других запросах, CTE привязан только к одному запросу. В Books Online есть несколько отличных примеров CTE, включая и рекурсивные CTE. Вместо того, чтобы продемонстрировать их устройство на своих примерах, в этой статье будут использоваться примеры из Books Online. Чтобы попробовать эти примеры у себя, используйте один из ранних образов базы данных AdventureWorks.

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

Самый старый код в MSSQL

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

Ваш покорный слуга работал с MSSQL с версии 6.5, но в качестве экзотики застал версии 6.0 и 4.2. Да, я супер стар!

Но осталось ли в MS SQL что-либо с тех времен?

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

GROUPING SETS

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

В двух последних статьях приводились примеры агрегации 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.1K

Популярная среди администраторов баз данных 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 мин
Количество просмотров 1.8K

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Новое в 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 мин
Количество просмотров 9K

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

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

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

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

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

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

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

One Day Offer от УЦСБ
Дата 17 февраля
Время 10:00
Место
Онлайн

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

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

Технология 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 мин
Количество просмотров 6.3K

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Вклад авторов