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

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

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

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

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

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

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

DATA GEEKS MEETUP: Cutting Edge (событие)

DATA GEEKS MEETUP: Cutting Edge (событие)

РЕГИСТРАЦИЯ

Всем привет!

Зима близко :) и это неплохой повод собраться на очередной теплый ламповый DΛTA GEEKS митап.

17-го ноября обсудим очень свежие фичи: адаптивную обработку запросов в SQL Server 2017, а также предпримем дерзкую попытку предсказать курс биткоина, используя мощь машинного обучения и новенький Microsoft Machine Learning Server (обновленный и переименованный Microsoft R Server).

Расписание докладов:

18:30 – Приветственный кофе с печеньем

18:45-19:45 – Адаптивная обработка запросов в SQL Server 2017. Дмитрий Пилюгин, Data Platform MVP

19:45-20:00 – Кофе-брейк

20:00-21:00 – Microsoft Machine Learning Server (часть 1). Дмитрий Петухов, AI MVP

21:00-21:15 – Общение && fun =)

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

РЕГИСТРАЦИЯ Читать далее

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

Анализ планов запросов в SQL Server

Анализ планов запросов в SQL Server

Александр Куклин написал отличную статью «Кэш планов и параметризация запросов. Часть 1. Анализ кэша планов«. Всем рекомендую к ознакомлению.

Вот небольшая вырезка из неё:

Процессор запросов (query processor), который и занимается выполнением SQL-запросов, поступивших на SQL-сервер, и выдачей их результатов клиенту, состоит из двух основных компонентов:

  1. Оптимизатор запросов (Query Optimizer).
  2. Исполнитель запросов (Relational Engine).

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

  1. Синтаксический анализатор (Parser) просматривает инструкцию SELECT и разбивает ее на логические единицы, такие как ключевые слова, выражения, операторы и идентификаторы, а также производит нормализацию запроса.
  2. Из синтаксического анализатора данные попадают на вход компонента Algebrizer, который выполняет семантический анализ текста. Algebrizer проверяет существование указанных в запросе объектов базы данных и их полей, корректность использования операторов и выражений запроса, и извлекает из кода запроса литералы, для обеспечения возможности использования автоматической параметризации.
    Например, именно поэтому запрос, имеющий в секции SELECT поля, не содержащиеся ни в агрегатных функциях, ни в секции GROUP BY, пройдёт в SQL Server Management Studio (SSMS) проверку по Ctrl+F5 (синтаксический анализ), но свалится с ошибкой при попытке запуска по F5 (не пройдёт семантический анализ).
  3. Далее Algebrizer строит дерево разбора запроса с описанием логических шагов, необходимых для преобразования исходных данных к желаемому результату. Для дерева запроса извлекаются метаданные объектов запроса (типы данных, статистика индексов и т.д.), производятся неявные преобразования типов (при необходимости), удаляются избыточные операции (например, ненужные или избыточные соединения таблиц).
  4. Затем оптимизатор запросов анализирует различные способы, с помощью которых можно обратиться к исходным таблицам. И выбирает ряд шагов, которые, по мнению оптимизатора, возвращают результаты быстрее всего и используют меньше ресурсов. В дерево запроса записывается последовательность этих полученных шагов и из конечной, оптимизированной версии дерева генерируется план выполнения запроса.

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

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

SQL Server 2017. Улучшения оптимизатора запросов (видео)

SQL Server 2017. Улучшения оптимизатора запросов

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

SQL Server 2017 привносит много нового в имеющийся функционал сервера, в том числе и улучшения в обработке и оптимизации запросов. В докладе мы поговорим об улучшениях в трех основных областях: — Адаптивная Обработка Запросов: адаптивные соединения, обратная связь по гранту памяти и выполнение с чередованием для Multistatement табличных функций. — Хранилище запросов (Query Store): Автоматическая коррекция регрессии планов. — Оптимизатор запросов: новые операторы плана, улучшения режима Batch, улучшенная диагностика Showplan

Докладчик: Дмитрий Пилюгин, долгое время занимался разработкой корпоративных информационных систем на базе MS SQL Server. В настоящее время работает в группе баз данных компании TNS Gallup. Ведет технический блог www.queryprocessor.com, посвященный SQL Server, периодически выступает в качестве докладчика на различных конференциях, а также активно участвует в профессиональных SQL Server сообществах, консультируя в области оптимизации запросов. Является обладателем статуса MVP по SQL Server.

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

Топ вопросов для собеседование на позицию Разработчик SQL Server

Топ вопросов для собеседование на позицию Разработчик SQL Server

Прошлая статья «Вопросы для Администраторов» получилась очень удачной и мы решили сделать новую, но на этот раз для Разработчиков SQL Server. Мы не будем разбирать все ответы, а только расскажем вам что следует изучить и какие бывают вопросы на собеседованиях.

Начнём с базовых вопросов для разработчика

  1. Агрегатные функции
  2. Индексы: виды, как организованы, различия
  3. Уровни изоляции транзакций (спрашивают 9 из 10 раз)
  4. Типы логических соединений (Inner Join, Left Join, Right Join и тд.)
  5. Триггеры
  6. Логический порядок обработки инструкции SELECT
  7. Null и как с ним работать
  8. Try/Catch
  9. Работа с SQL Profiler (старое направление, но многие спрашивают) и Extended Events
  10. Обобщённое табличное выражение (СTE)
  11. Как написать динамический SQL (exec, sp_executesql)
  12. Нормализация и денормализация БД
  13. Хинты. Чем могут помочь. Риски
  14. Курсоры.

Так же очень полезно знать

  1. Типы физических соединений (Merge Join, Hash, Nested Loop. Как работает, чем отличается)
  2. Оконные функции
  3. План запроса (Seek, Scan, Spool, Key Lookup и тд.)
  4. Секционирование. В каких случаях и для чего применяется. Как физически выглядит. Какие при этом бывают индексы
  5. Временная таблица и табличные переменные
  6. Понимание механизма распределенных транзакций
  7. Служба сервис-брокер и основные понятия
  8. Полнотекстовый поиск
  9. Виды репликаций, их особенности и сферы применения
  10. Как работает оптимизатор
  11. SQLOS. Что такое и как устроено

Читать далее

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

Улучшения Оптимизатора Запросов в SQL Server 2017 (вебинар)

Улучшения Оптимизатора Запросов в SQL Server 2017

Описание:

SQL Server 2017 привносит много нового в имеющийся функционал сервера, в том числе и улучшения в обработке и оптимизации запросов. В докладе мы поговорим об улучшениях в трех основных областях:
— Адаптивная Обработка Запросов: адаптивные соединения, обратная связь по гранту памяти и выполнение с чередованием для Multistatement табличных функций.
— Хранилище запросов (Query Store): Автоматическая коррекция регрессии планов.
— Оптимизатор запросов: новые операторы плана, улучшения режима Batch, улучшенная диагностика Showplan

Докладчик: Дмитрий Пилюгин, долгое время занимался разработкой корпоративных информационных систем на базе MS SQL Server. В настоящее время работает в группе баз данных компании TNS Gallup. Ведет технический блог www.queryprocessor.com, посвященный SQL Server, периодически выступает в качестве докладчика на различных конференциях, а также активно участвует в профессиональных SQL Server сообществах, консультируя в области оптимизации запросов. Является обладателем статуса MVP по SQL Server.

Регистрация

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

SQL Server 2017 на Windows, Linux и Docker стал доступен

SQL Server 2017 на Windows, Linux и Docker стал доступен

02.10.2017 стал доступен SQL Server 2017.

Пробную и другие версии можно скачать по этой ссылке

Вот несколько нововведений SQL Server 2017:

  1. Поддержка контейнеров.
  2. Поддержка Python
  3. Адаптивная обработка запросов
  4. Автоматическая корректировка планов
  5. Приостановка перестройки индексов онлайн

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

Опросник. Друзья, помогите нам сделать сообщество лучше

Опросник. Друзья, помогите нам сделать сообщество лучше

Мы планируем увеличить активность нашего сообщества в нескольких направлениях и мы хотим чтобы эти направления выбрали вы. Для этого необходимо ответить всего на 5 простых вопроса:

Ссылка на опросник — https://docs.google.com/forms/d/e/1FAIpQLSfX0LJ4oDxE7xOtMJRP_q2XMoRS-jgwEsmjCjTQ6Z6MGHl7aA/viewform

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

AlwaysOn. Проблемы производительности реплики на чтение

Вырезка из статьи: SQLskills SQL101:Readable secondary performance problems

Группа доступности AlwaysOn (AG) отличный инструмент, который позволяет без дополнительных ухищрений иметь возможность чтения данных со вторичной реплики. До появление AG, мы могли воспользоваться Зеркалированием, но тогда доступ на чтение мы могли получить только через создание снимка БД, который даёт только статическую информацию на момент его создания. Реплика, доступная на чтение в AG, постоянно обновляется, что позволяет получать максимально свежие данные.

Но, тема же называется «AlwaysOn. Проблемы производительности реплики на чтение» и я хотел бы рассмотреть какую цену мы платим за такое удобство.
Читать далее

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