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

Microsoft SQL Server *

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

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

Насколько сложна ваша работа MS SQL server DBA?

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

Посчитаем по пунктам потенциальные грабли и проблемы, с которым встречается DBA на своем рабочем месте. Сколько получилось у вас? Отпишитесь в комментариях.

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

Новости

Контроль покрытия T-SQL

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

Гоняем тесты кода на T-SQL в сборке каждого пулл-реквеста, собираем Coverage, проходим Quality Gate. Особенности построения CI-пайплайна для проектов БД MS SQL Server.

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

Как ускорить высокопараллельные вставки строк в SQL Server за считанные часы: опыт Mindbox

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

Привет, Хабр!

Меня зовут Тимур Маннапов, и я самый обычный senior-разработчик в Mindbox.

На примере нашего продукта я расскажу, почему при загрузке CPU наполовину или меньше скорость параллельных вставок на SQL-сервере упирается в «невидимый» предел, а потом и вовсе замедляется. На нашем железе предел был в районе ~120 тысяч строк в минуту в одну таблицу. Поделюсь, как его преодолеть, не потратив годы на разработку и миллионы на новый сервер.

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

Что такое 50% cpu?

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

Если у вас на машине стрелочка показывает, что у вас осталась половина бака, то у вас точно осталась половина бака? На самом деле больше, так как современные машины врут и топлива еще немного есть, даже когда стрелка на нуле - забота об альтернативно одаренных водителях. А если сервер показывает 50% cpu, то сколько ресурсов у нас осталось?

Для многих ответ ясен, и это не 50%. Поэтому извините, если многие вещи будут вам очевидны. А вот для менеджеров, например, которые планируют ресурсы, это может быть открытием.

Читать далее
Всего голосов 102: ↑99 и ↓3+123
Комментарии66

Истории

MSSQL natively compiled: когда они тормозят

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

В базах данных нет серебряной пули, универсального рецепта. Мне захотелось проверить экспериментально один граничный случай использования in memory tables и natively compiled - когда в тесте все было хорошо, а на реальных данных начались тормоза.

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

Transact SQL для анализа данных

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

Язык Transact SQL является процедурным расширением языка SQL и используется в СУБД Microsoft SQL Server. В этой статье мы рассмотрим использование некоторых элементов T-SQL для анализа данных. Сначала мы рассмотрим оконные функции, а затем поговорим о методах сводки (pivoting) данных и его отмены. При сводки данные преобразуются из состояния строк в столбцы, а при отмене обработки данные преобразуются из столбцов в строки, аналогично Excel.

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

Записки оптимизатора 1С (Часть 8). Нагрузка на диски сервера БД при работе с 1С. Пора ли делать апгрейд?

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

Поговорим про падения производительности ИТ-систем, которые на первый взгляд связаны с дисковой подсистемой. Но это только «на первый взгляд».

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

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

SQL server: темная сторона AlwaysOn

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

В SQL server есть замечательная технология - AlwaysOn. Она используется для DR (disaster recovery, асинхронная репликация данных), HA (high availability, часто с automatic failover, что возможно при синхронной репликации), и для того, что мы обсудим в статье: readonly replica для DWH/OLAP/Reporting workload.

Ничто не совершенно (хотя я восхищаюсь простотой установки некоторых решений в MS SQL по сравнению с Postgre и Oracle. Хотя бы бэкапы... А AlwaysOn для маленьких баз заводится буквально в пару кликов).

Cегодня мы рассмотрим проблемы при использовании AlwaysOn для DWH/OLAP/Reporting.

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

1С РИБ опять тормозит. Как лечить?

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

Назрела тут тема про обмены между базами данных 1С. Даже сузим круг и поговорим об обменах между гомогенными базами данных (базами данных с идентичными конфигурациями).

Ситуации когда бизнес предпочитает распределенные информационные системы централизованным системам – далеко не редкость. И чем ИТ-система больше, чем больше в ней пользователей и транзакций в единицу времени, тем сложнее поддерживать обмен между ее узлами на плаву. Обмен частенько тормозит и становится помехой пользователям и даже бизнесу...

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

Как перенести 1,4 ТБ с MS SQL на PostgresSQL за 13 часов

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

Привет, Хабр! Меня зовут Павел Кузьмин, я работаю ведущим разработчиком в РСХБ-Интех. Однажды в своей работе мы столкнулись с острой необходимостью перенести БД объемом 1,4 ТБ (более 1,5 млрд строк) с MS SQL на PostgresSQL не более чем за 20 часов. Неожиданно для нас, все имеющиеся готовые варианты не подходили, поэтому мы решили взять библиотеку Npgsql на C# и написать свой код. В итоге созданное решение справилось с поставленной задачей за 13 часов. Рассказываем, как мы это сделали, и делимся кодом. Возможно, он вам пригодится в работе.

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

Записки оптимизатора 1C (часть 7). «Нелогичные» блокировки MS SQL для систем 1С: Предприятие

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

Продолжаем тему блокировок на сервере СУБД. Сегодня «нелогичные» блокировки. Нелогичные в кавычках, потому что с точки зрения пользователя они выглядят как обычные логические (Записки оптимизатора 1С (часть 6). Логические блокировки MS SQL Server в 1С: Предприятие), но природа их совсем другая.

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

Как принудительно уронить MS SQL Server чтобы он ушёл на перезагрузку

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

При чтении логов из базы данных, а именно, из LDF данных, в большинстве случаев вы наткнётесь на такие функции в запросе sys.fn_dblog(null, null), sys.fn_dblog_xtp(null, null)

Читать из LDF Вы захотите по различным причинам, но так или иначе основная проблема будет «у нас откуда‑то списались деньги остатки, пропал товар, упал прод, разберитесь».

Допустим, Вы захотите воскресить удалённый, дропнутый объект из базы.

Типичный скрипт

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

Внедрение поисковой системы в крупное CRM-решение: наш опыт

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

Один из наших длительных проектов — это крупное многопользовательское SaaS-решение (CRM-система) основанное на микросервисной архитектуре и развернутое в облаке Azure. Изначально это был MVP, где все части (сервисы, базы данных и т. д.) располагались на одной виртуальной машине. Со временем проект вырос в облачное распределенное решение с множеством веб- и мобильных клиентов. 

В этой статье мы расскажем, как решили одну из проблем, с которой столкнулись в процессе разработки.

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

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

15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Миграция терабайтной базы 1С: УПП с платформы 1C 8.1 на 8.3

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

Продолжаем обсуждать вопросы, связанные с миграцией больших баз данных.

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

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

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

Установка MS SQL Server на Linux

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

В этой статье я научу вас устанавливать Microsoft SQL Server 2022 на Linux и мы развернем тестовую базу данных от Microsoft в операционной системе Linux.

Мы будем использовать пакетным менеджером Yum для Linux дистрибутивов: RedHat (RHEL), CentOS, Scientific Linux и DPKG (Debian Package) – система управления пакетами в Debian и дистрибутивах на его основе, например Ubuntu и набирающем популярность Astra Linux, в связи с импортозамещением. Поэтому команды я приведу для обоих пакетных менеджеров. Так же рассмотрим универсальный способ запуска через Docker.

Microsoft SQL Server — система управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Основной используемый язык запросов (диалект SQL) — Transact-SQL (T-SQL).

Для взаимодействия с СУБД MS SQL Server используются 2 основных способа:
1. Служебная программа sqlcmd
2. Microsoft SQL Server Management Studio (SSMS)

Конечно вы можете использовать привычный для вас DBeaver или DataGrip или любой другой инструмент администрирования базы данных.

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

Записки оптимизатора 1С (часть 6). Логические блокировки MS SQL Server в 1С: Предприятие

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

Поговорим о блокировках в 1С:Предприятие. Идея написать эту статью появилась «по просьбам слушателей». Постараюсь максимально простым языком, без зауми рассказать о природе блокировок и что с ними делать. В один пост весь материал помещать не буду — громоздко, поэтому сегодня речь пойдет о логических блокировках сервера СУБД.

С точки зрения конечного пользователя проблема избыточных блокировок выглядит почти одинаково — замедление при выполнении операций и/или ошибка. Но природа блокировок бывает разной и решения тоже разные.

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

Функции ранжирования: RANK, DENSE_RANK, and NTILE

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

В предыдущей статье обсуждалась функция ROW_NUMBER. Сейчас же мы рассмотрим другие функции ранжирования: RANK, DENSE_RANK и NTILE. Начнем с RANK и DENSE_RANK. Эти функции по функциональности и реализации аналогичны ROW_NUMBER. Разница в том, что ROW_NUMBER присваивает уникальное (возрастающее) значение каждой строке без учета связей в значениях ORDER BY, а функции RANK и DENSE_RANK присваивают одно и то же значение строкам, имеющим одинаковое значение ORDER BY. Разница между функциями RANK и DENSE_RANK заключается в том, как значения присваиваются строкам. Проще всего проиллюстрировать разницу между всеми этими функциями на простом примере:

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

Эффективное использование журнала регистрации и технологического журнала 1С в решении вопросов производительности

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

Эта статья носит своей целью продемонстрировать другой подход в анализе проблем производительности в системах 1С:Предприятие с применением журнала регистрации (ЖР) и технологического журнала (ТЖ).

Напомню, что ЖР логирует действия пользователей — кто, когда в каком объекте внес изменения, с какого компьютера, каким сеансом и т. п. ТЖ — это средство для логирования уже самой платформы. Для расследования проблем производительности информация из журналов очень полезна, но основное время уходит на её поиск, сопоставление с другими метриками и счетчиками мониторинга.

При проведении расследований мы сами часто сталкиваемся с проблемой длительной обработки и сопоставления данных журналов 1С с остальными метриками. И вот наконец руки дошли до парсинга журналов. С точки зрения анализа производительности все данные журналов нам не нужны. А какие нужны?

Вот! В этом как раз вся «соль» идеи.

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

Миграция с MSSQL Server на PostgreSQL. Предпосылки

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

Сегодня обсудим общие вопросы, связанные с миграцией баз данных на новую платформу. Как обычно, акцент сделан на системах 1С:Предприятие, как самых популярных на российском рынке. Но многие рекомендации универсальны и годятся для всех ИТ-систем.

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

Сильное шифрование подключения SQL Server Management Studio 20 к Microsoft SQL Server 2022

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

Эта статья о том, что нового появилось в SQL Server Management Studio 20 (SSMS), и является второй из серии статей на эту тему. Первую статью можно почитать тут: Upcoming changes for SQL Server Management Studio (SSMS) — Part 1.Заключительной статьёй в серии является: Upcoming changes for SQL Server Management Studio (SSMS) — Part 3. SSMS 20 может удивить Вас сразу после установки, когда вдруг обнаружится что по умолчанию предполагается шифрованное соединение SSMS с сервером баз данных. На то, чтобы помочь пользователям SSMS справится с этой проблемой и добиться лучшей защиты соединения с помощью новых механизмов шифрования SQL Server 2022, как раз и направлена эта статья.

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