Друзья, доброго времени суток!

Рады видеть вас на проекте SqlCom.ru о Microsoft SQL Server. У нас вы найдёте интересные статьи, видео материалы, новости, переводы статей на русский язык и многое другое. Публикуемая здесь информация будет полезна как разработчикам баз данных (SQL Database Developer), так и администраторам баз данных (SQL Database Administrator, DBA).

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

Цель проекта - сформировать активное сообщество, с которым будет приятно не только работать, но и отдыхать. Для продвижения идеи совместного отдыха иногда устраиваем мероприятия в Москве и Петербурге.

Тормозит SQL Server после переезда на новый сервер. Часть 1

Тормозит SQL Server после переезда на новый сервер. Часть 1

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

Почему же всё-таки может тормозить SQL Server после переезда на новый сервер:

  1. Одно из первых места, куда вам стоит посмотреть это настройки Электропитания. По-умолчанию, даже на серверах, выставлена опция «Сбалансированный», в то время как необходимо использовать «Высокая производительность» по причине сильного влияния данной настройки на производительность CPU.
  2. Так же часто может отличаться настройка кэширования записи на диск. Как мы помним, если кэширование включено, то возможна потеря данных при отключении питания.
  3. Если у вас установлен антивирус, то необходимо обязательно добавить папку SQL Server и файлов БД в исключения.
  4. Часто бывает, что ранее не были настроены параметры параллелизма (cost threshold for parallelism, max degree of parallelism), а на новом сервере оказалось значительно больше ядер. Звучит заманчиво, но это не всегда так. Если вы уверены, что вашей системе не нужен параллелизм, то можно выставить max degree of parallelism = 1 и у вас всё будет хорошо, но если он используется, то начать следует с cost threshold for parallelism = 25 и max degree of parallelism=(половина количества ядер ОДНОГО процессора), после чего наблюдать за нагрузкой.
  5. Следующий пункт не обязательный, но иногда может повлиять на производительность, я говорю про настройку Hyper-Threading. Общие рекомендации звучат так
    1. Следует включать если у вас одновременно выполняющихся запросов больше, чем количество ядер
    2. Отключать — если количество одновременно выполняющихся запросов не высоко, но запросы тяжёлые
Рубрика: Оптимизация | Метки: | Оставить комментарий

Pro SQL Server Internals, second edition (англ)

Pro SQL Server Internals, second edition (англ)

О книге

Автор: Дмитрий Короткевич

Улучшите ваши способности в разработке, управлении и поиска проблем SQL Server через глубокое изучение каждого из компонентов и их взаимодействия. Глубоки знания помогут создавать высокопроизводительные решения. Вы научитесь находить корневые проблемы, как правильно разрабатывать и какие решения необходимо принять чтобы производительность вашей системы была максимальной.

Вторая реакция книги актуальная для SQL Server 2014 и SQL Server 2016.

Из книги вы узнаете:

  • Детальную информацию о новшествах и улучшениях SQL Server 2016
  • Полную картину колоночных индексов и Im-Memory OLTP
  • Разнообразие объектов базы данных и как они устроены внутри, а так же когда они должны или не должны использоваться
  • Как SQL Server выполняет запросы, работает с данными и логом транзакций

Для кого эта книга

Те разработчики и администраторы кто стремиться узнать механизм работы SQL Server на внутреннем уровне.

От SQLCom.ru

Одна из лучших фундаментальных книг по SQL Server от нашего соотечественника, к сожалению доступна только на английском языке. Рекомендуется каждому.

Рубрика: Книги | Метки: | Оставить комментарий

Готовый мониторинг для Microsoft SQL Server

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

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

Чтобы быть уверенным что вы ничего не упустили и получить качественный мониторинг, можно воспользоваться готовым мониторингом для Microsoft SQL Server (платный) от разных компаний:

  1. Idera — SQL Diagnostic Manager
  2. Red-Gate — SQL Monitor
  3. ApexSQL — ApexSQL Monitor
  4. Quest — Spotlight on SQL Server Enterprise
  5. SentryOne — SQL centry

Так же отдельно хотел бы рассмотреть вариант мониторинга SQL Server на Zabbix. Если данная система уже установлена в вашей организации, то имеет смысл создать мониторинг Microsoft SQL Server на нём. Можно скачать уже готовые шаблоны, но скорее всего вам потребуется немного их доработать. Для мониторинга экземпляра по-умолчанию можно использовать следующий шаблон.

Выбор конкретной реализации вам предстоит сделать самостоятельно.

Рубрика: Мониторинг | Метки: | Оставить комментарий

SQL Server. Используйте TOP вместо SET ROWCOUNT

SQL Server. Используйте TOP вместо SET ROWCOUNT

Перевод статьи — Use TOP instead of SET ROWCOUNT

Оба TOP and SET ROWCOUNT метода ограничения вывода строк имеют право на существование, но они сильно отличаются. TOP ограничивает одну инструкцию T-SQL, в то время как SET ROWCOUNT ограничивает все инструкции в текущем подключении.

Если у вас несколько запросов, в каждом из которых вы хотите вернуть только по 10 строк, то кажется, что лучше использовать SET ROWCOUNT:

против

Так почему же я рекомендую использовать TOP вместо SET ROWCOUNT? Читать далее

Рубрика: Оптимизация | Метки: | Оставить комментарий

SQL Server. Безопасное кэширование записи на диск (NVDIMM-N)

По рекомендациям Microsoft, следует отключать кэширование записи на диск,

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

Решение

Теперь, Microsoft, даёт нам возможность включить кэширование записи на диск, но иным способом. В Windows Server 2016 появилась возможность создавать том с выделенной для него памятью NVDIMM-N, которая, в момент потери электропитания, сбрасывает информацию на NAND хранилище, где она может храниться до момента восстановления электропитания (https://www.micron.com/about/blogs/2017/august/nvdimm-n-where-are-we-now). Данная память и будет служить нам кэширующим элементом записи на диск.

Минимальные требования — один дисковый носитель и планка памяти NVDIMM-N, которые вы объедините в один том. Планка памяти добавляется в сервер локально.

Установка

На сайте Microsoft можно посмотреть как настроить данную технологию в отказоустойчивом варианте — ссылка

Сравнение

Предлагаю рассмотреть время отклика различных носителей:

  • HDD время отклика 4 мс+
  • SDD менее 4 мс, обычно около 1 мс
  • PCI NVMe SSD время отклика измеряется в микросекундах
  • NVDIMM измеряется в наносекундах

Обратите внимание, что ускорение дисковых операций часто приводит к большей пропускной способности и как следствие вырастает нагрузка на CPU.

Дополнительная литература

Рубрика: Полезно и интересно | Метки: | Оставить комментарий

SQL Server. JSON или XML?

Отличная статья от 

Ссылка на статью

Текста в статье много, поэтому для нетерпеливых можно сразу обратиться к выводам:

Краткие выводы

  • Извлечение данных из JSON происходит от 2 до 10 раз быстрее, чем из XML.
  • Хранение JSON зачастую более избыточное, нежели в XML формате.
  • Процессинг JSON данных в Unicode происходит на 5-15% быстрее.
  • При использовании JSON можно существенно снизить нагрузку на CPU сервера.
  • В SQL Server 2017 существенно ускорили парсинг скалярных значений из JSON.

Если вам не хочется много читать, то можно посмотреть весь материал в видео формате

Рубрика: Полезно и интересно | Оставить комментарий

Использование R с Power BI (вебинар, анг)

Использование R с Power BI (вебинар, анг)

In this week’s Power BI Webinar Ginger Grant will show how easy it is to use R Script with Power BI

Power BI is a great tool for providing in-depth analysis of your data. In this webinar we are going to add R to Power BI to provide not only some R visualizations which are not available in Power BI, but also to analyze the data using statistical methods. We will take a look at what answers Power BI can glean from the data and those which remain unknowable. This webinar will show you how to take your Power BI reports to the next level using analysis you can use in your next project.

Using the recently released 2018 Data Professionals Salary Survey gathered by Brent Ozar, we will use R to explore how to determine what combinations of answers are found in the top 25% of the salary respondents so that you will know what criteria that group has in common. We will examine the data to review steps needed to ensure that the answers provided are statistically significant and examine the data to find the data features most likely to result in a higher salary. Learn what greater insight Power BI can provide and how you can include that in your next Power BI project.

When: Jan 11th 2018 10am PST

Where: https://www.youtube.com/watch?v=d8bjjJvQcp4

Рубрика: События и мероприятия | Метки: | Оставить комментарий

SQL Server в Azure IaaS – подводные камни (27.12.2017 19:00)

SQL Server в Azure IaaS – подводные камни (27.12.2017 19:00)

Приглашаю 27 декабря послушать доклад Евгения Недашковского на тему:SQL Server в Azure IaaS – подводные камни

Говорят, что эксперт – это не тот человек, который не делает ошибок, а тот, который наступил на все возможные грабли. Наша компания начала путь перехода в облако в 2012 году и хотя сейчас вся инфраструктура успешно работает, нам не раз хотелось вернуться on-premise. Виной тому небольшие неявные ограничения, которыми так и пестрит ажурная инфраструктура.
Не хотите повторять наших ошибок? Предлагаю послушать о шишках, которые набили я и мои коллеги за последние пять лет. Отдельный акцент будет сделан на выборе и настройке виртуальных машин для кластеров SQL Server.
Доклад в онлайне!

Регистрация: https://attendee.gotowebinar.com/regist…/7548586417442286337

Начало в 19:00 MSK

Рубрика: События и мероприятия | Метки: , | Оставить комментарий

DATA GEEKS MEETUP: New Year is coming (событие)

DATA GEEKS MEETUP: New Year is coming (событие)

Всем привет!

Скоро Новый год! И перед праздниками мы соберемся в новом месте для очередной встрече, посвященной обработке данных.

Расписание

18:00 – Приветственный кофе
18:30-19:25 – Microsoft ML Server: REST-сервис прогнозирования цены биткоина своими руками. Дмитрий Петухов
19:25-19:35 — Кофе-брейк
19:35-20:45 – Нетрадиционные методы оптимизации запросов. Дмитрий Костылев
20:45-21:00 — Общение, знакомства, New Year Fun!

Программа

Microsoft ML Server: REST-сервис прогнозирования цены биткоина своими руками

На прошлом митапе мы рассмотрели общую архитектуру и компоненты фреймворка машинного обучения Microsoft ML Server (бывший Microsoft R Server).

Во второй части доклада мы продолжим играть со знакомыми инструментами – MS ML Server, языком программирования R и биржевыми данными Bitcoin.

В этот раз мы проведем обучение нейросети для задачи прогнозирования цены биткоина. А потом опубликуем ее (нейросеть) в виде масштабируемого и отказоустойчивого REST-сервиса в облаке Azure.

Дмитрий Петухов, Microsoft AI MVP, Machine Intelligence Researcher @ OpenWay && Coffee Addicted | 0xCode.in (http://0xcode.in/)

Нетрадиционные методы оптимизации запросов

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

Дмитрий Костылев, АО «Лаборатория Касперского»

Вход свободный (но необходима регистрация на meetup.com)

Внимание! Встреча пройдет в новом для нас месте, коворкинге Yellow Door. Описание и как добраться можно найти по ссылке http://yellowdoor.ru/

Регистрация

Рубрика: События и мероприятия | Метки: , | Оставить комментарий

Технологии Баз Данных 2017 (событие)

Технологии Баз Данных 2017 (событие)

Регистрация и подробности (участие платное)

29.11.2017 пройдёт единственное в России мероприятие, объединившее ведущих исследователей технологий управления данными, отраслевых гуру и разработчиков баз данных, готовых поделиться своими знаниями и опытом проектирования, развертывания и эксплуатации платформ обработки данных в различных отраслях цифровой экономики – это конференция «Технологии баз данных».

Узнайте все о текущем состоянии и перспективах развития открытых и проприетарных СУБД, платформ и отдельных инструментов работы с данными.

В программе:

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

Мы ждем на форуме:

  • Руководителей проектов
  • Аналитиков, консультантов и специалистов по данным
  • Архитекторов ИТ-систем и ИТ-директоров
  • Руководителей подразделений разработки и технических директоров
  • Администраторов баз данных
  • Ведущих разработчиков

Темы:

  • Все российские СУБД на одной площадке: Postgres Pro, ClickHouse, «Ред База Данных», Тарантул
  • Навигатор в мире открытых популярных систем MariaDB, MongoDB, MySQL и др.
  • Агрегатор предложений коммерческих СУБД на вызовы цифровой трансформации, Micro Focus Vertica, MS SQL Server, Oracle
  • Руководство по конструированию архитектур современных платформ«три в одном»: хранение, анализ, обработка
  • Рекомендации по выбору СУБД и инструментов работы с данными практически неограниченных объемов
  • Опыт реальных проектов

Для получения 10% скидки используйте промо код: SQLCOM

Регистрация и подробности (участие платное)

Рубрика: События и мероприятия | Метки: | Оставить комментарий