Рубрика «MS SQL»

Реализация автоудаления блокирующих сессий в MS SQL - 1

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

Читать полностью »

Рядовой SNAFU идет в DBA - 1

Для тех, кто не знает, SNAFU — персонаж военных патриотических мультфильмов, созданных американцами во время войны. Этот раздолбай, ввиду природного идиотизма, все время попадает в катастрофические ситуации и, как правило, гибнет в конце серии. Правда, в следующей серии он снова оказывается живым — в этом смысле, его можно считать далеким прародителем Кенни из Южного Парка.

При наборе людей на позицию SQL server developer, я часто был покорен тем, как они отвечали на вопросы. Я готов был сказать им ДА, если бы меня не спасала небольшая задача в одну строчку, которую предложил мой коллега. Удивительно, сколько всего может дать эта задача в одну строку SQL. И вот уже кандидат уже с упоением ходит по граблям. А грабель, как вы увидите, там много. Конечно, ни один человек не собрал ВСЕ возможные грабли. Но, чтобы их все показать, мне и понадобился SNAFU.
Читать полностью »

Как известно индексы играют важную роль в СУБД, предоставляя быстрый поиск к нужным записям. Потому так важно их своевременно обслуживать. Об анализе и оптимизации написано достаточно много материала, в том числе и в Интернете. Например, недавно делался обзор данной темы в этой публикации.

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

Далее рассмотрим бесплатную утилиту SQLIndexManager, автором которой является AlanDenton.
Читать полностью »

Люди издревле любят играть в числа. Доказать что отношение длины пирамиды Хеопса к высоте равна… уже не помню чему. Физики тоже не чужды этого, например есть мистическая формула Койде, связывающая массы электрона, мюона и тау частицы. Есть формула для постоянной тонкой структуры – в отличие от формулы Койде кажущаяся очень искусственной. Насколько обоснованы такие формулы? Я провел эксперимент.

Нумерология на MS SQL — занимательный эксперимент - 1

Читать полностью »

Каждый, кто когда-либо разрабатывал приложения, использующие базу данных, наверняка сталкивался с проблемой обновления структуры БД при разворачивании и обновлении приложения.

Чаще всего используется простой подход — создание набора SQL-скриптов для модификации структуры БД от версии к версии. Конечно, есть такой мощный инструмент, как Red gate, но он во-первых небесплатный, во-вторых не решает проблему полной автоматизации обновления.

Технология migrations, впервые появившаяся в ОРМ Hibernate и реализованная в Linq, очень хороша и удобна, но подразумевает стратегию разработки структуры БД code first, что весьма трудоемко для уже существующих проектов, а использование в БД триггеров, хранимых процедур и функций делает задачу перехода на code first практически невыполнимой.

В данной статье предлагается альтернативный подход к решению этой задачи, использующий хранение эталонной структуры БД в XML-файле и автоматическую генерацию SQL-скрипта на основе сравнения эталонной и существующей структуры. Итак, начнем...

Читать полностью »

В статье речь пойдет о специфических для проектных предприятий процедурах документооборота, а точнее, об интеграции технического документооборота (у нас – на основе TDMS) и внешней переписки. На предприятиях других типов тоже могут существовать аналогичные потребности, поэтому, если у вас есть вопросы в отношении интеграции или автоматизации с помощью easla.com, статью также имеет смысл прочитать – тут описываются интересные технические детали.
Ревизии и переписка в проектном институте. Интеграция easla.com и TDMS - 1
Я собирался выступить на ежегодной конференции в ПАО «Гипротюменнефтегаз», однако из-за сильной текущей загрузки просто не успел подготовиться. Чем не оправдал ожиданий моих знакомых и коллег (ожидалась небольшая публичная дискуссия). Описываемое далее решение не содержит ничего революционного с организационной точки зрения, но, смею надеяться, некоторого внимания оно все же заслуживает.

Читать полностью »

Или как без труда восстанавливать базы данных из длинной цепочки бэкапов

Километры логов и восстановление баз данных на MS SQL - 1
Читать полностью »

Спешу поделиться опытом установки и настройки указанных в названии монстров!

Windows 2012 R2 + IIS + MS SQL + PHP установка, настройка, подводные камни

К сожалению, такая связка не столь популярна, чтобы найти что-то стоящее по этой теме в поисковиках. Но мне удалось отрывками и кусками все-же поймать свой Дзен.
Читать полностью »

StackOverflow: 560 млн показов в месяц, 25 серверовStackOverflow опубликовал статистику посещаемости по всем сайтам StackExchange. На данный момент StackExchange занимает 54-е место в интернете по аудитории. На сайте зарегистрировано 4 млн пользователей, опубликовано 8 млн вопросов и 40 млн ответов. Посещаемость составляет 560 млн просмотров в месяц.

Что удивительно, для работы StackOverflow хватает всего 25 серверов. Но поскольку нагрузка на ЦП составляет около 10-15%, то всю работу могли бы выполнять и 5 серверов.
Читать полностью »

По роду деятельности я немного администратор баз данных. Так или иначе мне приходится обслуживать несколько десятков БД.
Наткнувшись на статью, опубликованную недавно, посчитал нужным дополнить ее некоторыми практическими рекомендациями. То что затрагивалось в прошлой статье, в этой опускалось.

1. Размер резервной копии

Оценить размер резервной копии можно с помощью хранимой процедуры sp_spaceused

К примеру вот такой запрос:

USE your_database;
GO
EXEC sp_spaceused @updateusage = N'TRUE';
GO

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js