Да, знаю что это уже не новость, продукт вышел 17 ноября, а кодовое имя Denali превратилось в SQL Server 2012 ещё раньше, но не могу не написать об этом событии у себя в блоге и не рассказать о том, что-же нового в RC0.
[More]
Друзья! Это свершилось! Выходит в свет второе издание мега-книги SQL Server MVP Deep Dives! И это не дополнение первого, а полностью новая книга. Первая книга вызвала огромный интерес в своё время благодаря своему формату (я тоже с удовольствием прочёл её). Формат второй книги остался тот-же: SQL Server MVP со всего мира объединились и каждый написал главу для этой книги.
[More]
FileTable основывается на функционале FILESTREAM, появившемся в 2008-й версии. Давайте быстро вспомним что он из себя представляет. FILESTREAM позволяет хранить файлы в базе данных, при этом сохраняя возможность потоковой работы с файлами. Таким образом мы поддерживаем ссылочную целостность базы данных и файловой системы. Более подробно можно прочитать здесь - Введение в FILESTREAM. На презентациях и в теории всё выглядит очень красиво, но на самом деле, если попробовать использовать FILESTREAM сталкиваешься со множеством ограничений, да и сам код работы с подобными файлами красотой не блещет (открываем транзакцию в БД, получаем дескриптор файла и т.д.). Одним из ограничений FILESTREAM была синхронизация БД и файловой системы. Удаление записи в базе приводило к удалению файла (тут всё ок), а вот удаление файла не приводило к удалению записи и приводило к ошибке при обращении к этой записи. Кроме этого недостатка, файлы на файловой системе получали совершенно нечитаемые имена и находились в папке, указанной при создании базы данных. На самом деле FileTable не устраняет эти недостатки FILESTREAM, но успешно позволяет абстрагироваться от них. Суммируя всё вышесказанное, FileTable это не замена, а скорее надстройка над FILESTREAM. Впрочем вы это и сами увидите по ходу изложения.
[More]
Постраничный вывод данных – это тот функционал, который встречается чуть-ли не на каждом информационном сайте, и реализация подобной выборки зачастую не так сложна. Но всё же в SQL Server, до версии Denali, не было нормальной поддержки таких сценариев. Стандартным подходом реализации постраничной выборки в SQL Server был запрос с функцией ROW_NUMBER. Суть этого подхода в том, что запрос пробегает по всем строкам набора и нумерует их от единицы до номера конечного элемента. Потом по этим номерам и делается выборка по диапазону, например мы получаем вторые 10 записей набора (2-я страница). Но у этого подхода есть один существенный минус – каждый раз, даже если вам нужно выбрать 10 первых записей из таблицы в миллион записей, запрос будет пробегать миллион записей. Чем больше данных, тем ниже перфоманс. Те кто уже боролся с подобными проблемами меня поймут. Бороться можно и нужно, но это сложно. В SQL Server Denali появляется поддержка таких выборок на уровне обработчика запросов, но всё далеко не так хорошо, как может показаться на первый взгляд. Впрочем, обо всём по-порядку.
[More]
Итак, не буду писать много слов. Стал доступен 3-й CTP всеми нами любимого сиквела - SQL Server Code Name "Denali" CTP3. Ставим, Пробуем, Смотрим!
[More]
SQL Profiler, наверное, самый часто используемый инструмент SQL Server после Management Studio. И многие разработчики пользуются им для поиска тяжёлых запросов или анализа того, что происходит в системе. Чаще всего мы смотрим на трейс прямо в профайлере, пытаясь найти интересующие нас данные. Иногда мы добавляем некоторые условия и группировки для того, чтобы выделить только то, что нам действительно важно. Но это не очень эффективно. По-настоящему эффективный анализ рабочей нагрузки лежит за пределами профайлера.
[More]
Буквально только-что прочитал твит команды SQL server о том, что следующий публичный CTP SQL Server Denali будет доступен этим летом. Для того, чтобы получить его одним из первых необходимо зарегистрироваться на сайте - http://www.microsoft.com/sqlserver/en/us/product-info/future-editions.aspx.
[More]
25 Апреля в солнечном городе Краснодаре прошла конференция, посвящённая продуктам и решениям для бизнес-аналитики от Microsoft. В докладах мероприятия были рассмотрены не только существующие решения и продукты, но и продукты, которые ещё только готовятся к запуску. Были затронуты вопросы лицензирования продуктов и разобраны реальные примеры внедрения BI решений. Мероприятие прошло очень живо и динамично. И, судя по анкетам, которые участники заполнили после мероприятия, всем было интересно :)
[More]
Возобновляя серию статей, посвящённую новым возможностям SQL Server Denali, я хочу рассказать о Contained Databases. Смысл их довольно прост. Contained Database – база данных, которая не зависит ни от каких серверных объектов. Это гарантирует нам то, что перенеся базу данных на другой сервер, база данных и приложения, работающие с ней, будут продолжать работать точно также, как и на предыдущем сервере.
[More]
You may heared this phrase many times. But this time it sounds really interesting (and it sounds in my blog also :))! This time your feedback can be delivered directly to product team and help Microsoft to create better product! Better SQL Server!
[More]