Проекты
<<  Основные итоги работы Управления Росприроднадзора по Оренбургской области за 2012 г и приоритетные задачи на 2013 г 1С:УПРАВЛЕНИЕ АВТОТРАНСПОРТОМ для Украины  >>
SQL Server 2008 R2: Обработка потоков событий и централизованное
SQL Server 2008 R2: Обработка потоков событий и централизованное
О чём пойдет речь…
О чём пойдет речь…
Технология StreamInsight: обработка потоков событий
Технология StreamInsight: обработка потоков событий
В этой части
В этой части
Системы аналитики сегодня
Системы аналитики сегодня
Сценарии
Сценарии
Необходимость платформы (CEP), управляемой событиями
Необходимость платформы (CEP), управляемой событиями
Уровни использования
Уровни использования
Обзор CEP платформы StreamInsight
Обзор CEP платформы StreamInsight
События
События
Типы данных для событий
Типы данных для событий
Потоки событий
Потоки событий
Адаптеры для потоков событий
Адаптеры для потоков событий
Ядро StreamInsight
Ядро StreamInsight
Типичные CEP запросы
Типичные CEP запросы
Возможности StreamInsight CEP
Возможности StreamInsight CEP
Примеры запросов LINQ
Примеры запросов LINQ
Расширяемость
Расширяемость
Разработка для CEP платформы
Разработка для CEP платформы
Связывание запросов
Связывание запросов
StreamInsight Demo
StreamInsight Demo
Платформа Microsoft StreamInsight
Платформа Microsoft StreamInsight
Централизованное управление серверами: SQL Server Utility Control
Централизованное управление серверами: SQL Server Utility Control
В этой части
В этой части
Тенденции администрирования СУБД
Тенденции администрирования СУБД
SQL Server Utility Control Point
SQL Server Utility Control Point
Цели и задачи в этой версии
Цели и задачи в этой версии
Характеристики UCP
Характеристики UCP
Визуализация состояния
Визуализация состояния
Визуализация метрик
Визуализация метрик
Управление серверами сегодня
Управление серверами сегодня
demo
demo
Начало работы
Начало работы
Создаём UCP
Создаём UCP
Создаём UCP
Создаём UCP
Создаём UCP
Создаём UCP
Создаём UCP
Создаём UCP
Создаём UCP
Создаём UCP
Создаём UCP
Создаём UCP
demo
demo
Общая картина взаимодействия
Общая картина взаимодействия
Сбор данных на управляемом сервере
Сбор данных на управляемом сервере
Обработка данных на UCP
Обработка данных на UCP
Логика оценки общего состояния
Логика оценки общего состояния
Логика обработки утилизации CPU
Логика обработки утилизации CPU
Логика обработки утилизации диска
Логика обработки утилизации диска
Безопасность: права доступа
Безопасность: права доступа
Ограничения
Ограничения
Необходимые ресурсы
Необходимые ресурсы
Дополнительная информация
Дополнительная информация
Централизованное управление приложениями: Data-tier Applications
Централизованное управление приложениями: Data-tier Applications
В этой части
В этой части
Мотивация
Мотивация
Цели
Цели
Цели в SQL Server 2008 R2
Цели в SQL Server 2008 R2
Что такое DAC
Что такое DAC
Сервисы DAC
Сервисы DAC
Жизненный цикл DAC
Жизненный цикл DAC
Demo: Регистрация баз в качестве DAC
Demo: Регистрация баз в качестве DAC
Архив DAC
Архив DAC
Демонстрация: DAC
Демонстрация: DAC
Установка DAC
Установка DAC
Обновление DAC
Обновление DAC
Visual Studio: DAC vs
Visual Studio: DAC vs
DAC vs
DAC vs
DAC vs
DAC vs
DAC vs
DAC vs
DAC vs
DAC vs
Ограничения в SQL 2008 R2
Ограничения в SQL 2008 R2
Планы на будущее
Планы на будущее
Дополнительная информация
Дополнительная информация
Вопросы
Вопросы
© 2010 Microsoft Corporation
© 2010 Microsoft Corporation
Нам очень важна Ваша оценка
Нам очень важна Ваша оценка

Презентация: «SQL Server 2008 R2: Обработка потоков событий и централизованное управление серверами». Автор: . Файл: «SQL Server 2008 R2: Обработка потоков событий и централизованное управление серверами.pptx». Размер zip-архива: 3195 КБ.

SQL Server 2008 R2: Обработка потоков событий и централизованное управление серверами

содержание презентации «SQL Server 2008 R2: Обработка потоков событий и централизованное управление серверами.pptx»
СлайдТекст
1 SQL Server 2008 R2: Обработка потоков событий и централизованное

SQL Server 2008 R2: Обработка потоков событий и централизованное

управление серверами

Борис Барышников, BorisB@microsoft.com Microsoft Corp.

2 О чём пойдет речь…

О чём пойдет речь…

Технология StreamInsight для обработки потоков событий Централизованное управление приложениями и серверами UCP – Utility Control Point DAC – Data-tier Applications

3 Технология StreamInsight: обработка потоков событий

Технология StreamInsight: обработка потоков событий

4 В этой части

В этой части

Мотивация Сценарии StreamInsight Отличие системы StreamInsight от традиционной СУБД Устройство и возможности StreamInsight Потоки событий Запросы Адаптеры Ядро

5 Системы аналитики сегодня

Системы аналитики сегодня

100000

10000

1000

100

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

Факты в секунду

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

Активная аналитика в информационных хранилищах

Традиционная аналитика

Годы

Временная задержка

Текущий момент времени

Месяцы

Дни

Часы

Мин

Сек

Обработка (ET) в ETL

Загрузка (L) в ETL

6 Сценарии

Сценарии

Задержка

Реляционные СУБД

Месяцы

CEP сценарии

Дни

Аналитика

Часы

Анализ реляционных данных

Минуты

Web Аналитика

Секунды

Производство

Трейдинг

100 мс

Мониторинг

< 1 мс

0

10

100

1000

10000

100000

~10^6

Скорость поступления данных (Событий/сек)

7 Необходимость платформы (CEP), управляемой событиями

Необходимость платформы (CEP), управляемой событиями

Аналитические результаты должны отражать изменения бизнеса и допускать реакцию на них с минимальной временной задержкой

Субд

Приложения, упр. событиями (CEP)

Парадигма запросов

Запросы выполнятся по требованию

Запросы обрабатываются непрерывно

Задержка

Секунды, часы, дни

Милисекунды или меньше

Пропускная способность

Сотни записей/сек

Десятки тысяч записей/сек или больше

Семантика запросов

Декларативная реляционная аналитика

Реляционная и временная аналитика

Запрос

Выходной поток

Входной поток

Ответ

8 Уровни использования

Уровни использования

Системы развертываются на разных уровнях системы Рядом с источниками данных В среднем звене – консолидация разных источников В хранилищах данных – анализ исторических данных, корреляция больших объемов

Сложная аналитика и извлечения знаний

Веб серверы

Сенсоры

Потоки

Мобильные устройства

CEP

CEP

CEP

CEP

CEP

CEP

CEP

CEP

CEP

9 Обзор CEP платформы StreamInsight

Обзор CEP платформы StreamInsight

StreamInsight Engine

Разработка CEP приложений

Получатели событий

Источники событий

Работа CEP приложения

Внешние данные

IDE

Output Adapters

Input Adapters

.NET C# LINQ

Устройства, сенсоры

Пейджеры и устройства мониторинга

Постоянно активные запросы

Веб сервера

Панели упр, SharePoint

Трейлинговые консоли

СУБД и другие хранилища

Финансовые потоки

Хранение исторических данных

C_ID

C_NAME

C_ZIP

10 События

События

События отражают различные временные характеристики Мгновенные (point in time) Фиксированные интервалы (Interval events with fixed duration) Интервалы с изначально неизвестной продолжительностью (Interval events with initially unknown duration) События содержат данные, ассоциированные с ними, аналогично строкам в таблице

11 Типы данных для событий

Типы данных для событий

События в платформе StreamInsight используют типы даты .NET События могут содержать несколько полей Поля – скалярные типы данных .NET Движок StreamInsight обеспечивает поля для временных характеристик Input adapters заполняют эти поля

Timestamps/Metadata

Long pumpID

String Type

String Location

Double flow

Double pressure

12 Потоки событий

Потоки событий

Поток – это возможно бесконечная последовательность событий Возможно вставлять новые события Изменять временные характеристики событий Примеры: сенсорные данные, записи из журналов (логов) Характеристики потоков: Различные возможности поступления событий Равномерно с индикатором окончания потока. Например файлы или таблицы Нерегулярно, случайным образом, или шквалами. Например: сканнеры штрих-кодов, интернет клики, погодные данные События могут быть неупорядоченными Порядок поступления событий не обязан совпадать с их временными характеристиками StreamInsight берет на себя сложную часть задачи правильной реализации временной семантики

13 Адаптеры для потоков событий

Адаптеры для потоков событий

При создании адаптеров необходимо задать Типы производимых или потребляемых событий Методы, обеспечивающие реализацию потока Свойства, которые «понимает» CEP система Особенности адаптеров

Проблема

Особенность

Свойства событий

Шаблоны для адаптеров в записимости от типа: шаблоны для мгновенных событий

Описание нагрузки

Скалярные типы .NET для полей событий

Типизированные vs. обобщенные

Шаблоны для адаптеров определенного типа событий и обобщенные адаптеры

Поддержка оптимизации

Поддержка приема предикатов и проекций

14 Ядро StreamInsight

Ядро StreamInsight

Исполняет “постоянно активные запросы” Операторы потребляют и производят потоки Запросы стыкуются Результаты запросов вычисляются инкрементально

Управление выполнением запросов Submit, start, stop Получение статистик StreamInsight берет на себя сложность выполнения запросов с временной семантикой

Движок CEP

Выходные адаптеры

Входные адаптеры

Постоянно активные запросы

15 Типичные CEP запросы

Типичные CEP запросы

Для типичных CEP запросов необходимы следующие свойства Сложные типы данных для событий В процессе вычисления можно добавлять/изменять поля Группировка по одному или нескольким полям Агрегация за определенный период времени, например по окну Один запрос обрабатывает сразу нельколько групп событий Отслеживание корреляции между несколькими потоками Отслеживание отсутствия событий Дополнение событий информацией из внешних источников Цель системы StreamInsight состоит в том, чтобы сделать написание и управление такими запросами чрезвычайно простым

16 Возможности StreamInsight CEP

Возможности StreamInsight CEP

Операторы управления потоками Арифметические операции (PROJECT) Корреляция нескольких потоков (JOIN) Проверка наличия активности в источнике данных (EXISTS) Фильтрация событий (FILTER) Разбиение потока по признаку (GROUP & APPLY) Нахождение событий с наибольшим значением опреленных показателей (TOP-K) Темпоральные операции: hopping window, sliding window Агрерация (SUM, COUNT, …) Расширяемость – возможность добавлять свои операторы Запросы пишутся для типизированных потоков событий Они могут выполняться для любых потоков этого типа Поддерживает потоки, ссылки на статические данные, проигрывание исторических данных

17 Примеры запросов LINQ

Примеры запросов LINQ

Пример на LINQ – JOIN, PROJECT, FILTER: from e1 in MyStream1 join e2 in MyStream2 e1.ID equals e2.ID where e1.f2 = “foo” select new { e1.f1, e2.f4 };

Пример на LINQ – GROUP и WINDOW: from e3 in MyStream3 group e3 by e3.i into SubStreams from win in Substream.HoppingWindow(FiveMin, TenSec) select new {{ i = SubStream.Key, a = win.Avg(e => e.f) }; };

18 Расширяемость

Расширяемость

Встроенные операторы не покрывают всей функциональности Необходима интеграция с существующими библиотеками Есть необходимость в специфичных для предметной области операторах Расширения для StreamInsight: Функции, агрегаты и операторы определяемые пользоватем, написанные на .NET Запросы на LINQ легко стыкуются и интрегрируются с пользовательским кодом на .NET Для реализации операторов определяемых пользователем предоставляется framework

19 Разработка для CEP платформы

Разработка для CEP платформы

Цели Легкость и быстрота разработки Полный набор инструментов Поддержка разных стратегий развертования Встроенного в приложение На сервере приложений Расширяемость Среда разработки CEP На основе .NET Microsoft Visual Studio – среда разработки Приложения пишутся на C# Запросы на LINQ

LINQ: var queryFilter = from c in TestEventStream where c.Field1 > 1 select c;

20 Связывание запросов

Связывание запросов

Связывание запроса и источников входных данных создает экземпляр запроса Позволяет создать несколько экземпляров запроса Один запрос может быть связан с разными наборами источников данных

Движок StreamInsight

QT1

AT1

AT2

AT3

Входные адаперты

Выходные адаптеры

Постоянно активные запросы

Q1

Q1’

Q1’’

21 StreamInsight Demo

StreamInsight Demo

22 Платформа Microsoft StreamInsight

Платформа Microsoft StreamInsight

CEP платформа Микрософт предназначена для приложений обработки событий

CEP Engine

CEP Разработка приложений

Разработка на .NET, C#, LINQ and Visual Studio 2008 & 2010

Потребители

Гибкий SDK для создания адаптеров, соединяющихся с разными источниками и потребителями данных

CEP платформа берет на себя работу с временными характеристиками потоков событий

Приложения для работы с потоками событий фундаментально отличаются от традиционных приложений, работающих с БД: запросы выполнятся непрерывно, потребляют и производят потоки и вычисляются инкрементально

Static reference data

Источники данных

Выходные адаптеры

Входные адаперты

Standing Queries

C_ID

C_NAME

C_ZIP

23 Централизованное управление серверами: SQL Server Utility Control

Централизованное управление серверами: SQL Server Utility Control

Point

24 В этой части

В этой части

Мотивация Метрики Политики состояния Безопасность Пример работы Устройство Ограничения

25 Тенденции администрирования СУБД

Тенденции администрирования СУБД

2000

Future

2010

Типичный клиент Сотни небольших баз данных 1 файл на базу Средний размер базы < 4 Гб Пассивная реакция на проблемы Сложности управления жизненным циклом приложения Постоянно уменьшающее время для решения проблем

Количество баз данных

Простаивающее оборудование

Перегрузка админов

26 SQL Server Utility Control Point

SQL Server Utility Control Point

Центральное звено управления Хранилище данных Мониторинг Определение политик Простота настройки и использования

27 Цели и задачи в этой версии

Цели и задачи в этой версии

Мониторинг большого количества серверов Мониторинг утилизации серверов На уровне сервера и базы (DAC) Определение возможностей для консолидации Централизованные политики Централизованная консоль управления Удобство управления жизненным циклом приложений

28 Характеристики UCP

Характеристики UCP

Метрики

Измерения

Computer

Volume

Утилизация CPU

DAC

Server

Утилизация диска

Database

Filegroup

DataFile

LogFile

29 Визуализация состояния

Визуализация состояния

Сводка

Список

Детали

30 Визуализация метрик

Визуализация метрик

Утилизация CPU

Утилизация диска

31 Управление серверами сегодня

Управление серверами сегодня

Не стирать!

32 demo

demo

The SQL Server Utility

Click-through

33 Начало работы

Начало работы

34 Создаём UCP

Создаём UCP

35 Создаём UCP

Создаём UCP

36 Создаём UCP

Создаём UCP

37 Создаём UCP

Создаём UCP

38 Создаём UCP

Создаём UCP

39 Создаём UCP

Создаём UCP

40 demo

demo

The SQL Server Utility

Панель управления Состояние Наблюдение за ресурсами Изменение политик

41 Общая картина взаимодействия

Общая картина взаимодействия

42 Сбор данных на управляемом сервере

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

43 Обработка данных на UCP

Обработка данных на UCP

44 Логика оценки общего состояния

Логика оценки общего состояния

Рассмотрим 4 DACs где D1, D3, & D4 кандидаты «нарушений» политик. Оценка низкоуровневых политик для каждого объекта Вычисление суммарного состояния по результатам первого шага D1 – все файлы выше порога ? повышенная утилизация D3 – CPU ниже порога ? недостаточная утилизация D4 – только один файл выше порога ? норма Определяем состояние для каждого DAC Обобщаем результаты для все DACs

2

1

3

4

A

B

C

Cache Table

PBM Violations

Health Policy Violations

Health States

DAC Statistics

Name

File

CPU

Name

File

CPU

Count

Type

Name

File1

File2

CPU

File1

85

92

34

4

File2

48

54

1

39

4

1

89

63

68

File1

2

D1

D1

D1

D1

D1

D2

D2

D3

D3

D3

D4

D4

D4

D4

45 Логика обработки утилизации CPU

Логика обработки утилизации CPU

Instance

DAC

Threshold = 70% Window = 6 hrs Frequency = 50%

Threshold = 10% Window = 24 hrs Frequency = 90%

46 Логика обработки утилизации диска

Логика обработки утилизации диска

DAC1

Filegroup1

Filegroup2

File1

File2

File3

File4

3

2

1

1

47 Безопасность: права доступа

Безопасность: права доступа

Действие

UCP instance

Управляемый сервер

Создание UCP

sysadmin

N/A

Добавление или удаление управляемого сервера

sysadmin

sysadmin

Изменение общих политик и времени сохр. данных

sysadmin

N/A

Доступ к панели и отчётам

UCP reader

N/A

48 Ограничения

Ограничения

Количество управляемых серверов Enterprise Edition UCP – 25 серверов Datacenter Edition UCP – не ограничено Практический рекомендуемый лимит около 200 серверов Версии управляемых серверов (любая редакция, кроме SQL Express) SQL Server 2008 R2 SQL Server 2008 PCU2 Возможная дупликация данных на управляемых серверах

49 Необходимые ресурсы

Необходимые ресурсы

Ресурс

UCP

Управляемый сервер

Дисковое пространство

~ 2 GB в год на каждый управляемый сервер

Минимально

Диск, скорость

8 (10k RPM) spindles RAID-10*

Минимально

Процессор

4x 2.5 ghz intel xeon или эквивалент*

~ 4% дополнительная утилизация на 2x 2.5ghz intel xeon

* Рекомендация для максимальной производительности

50 Дополнительная информация

Дополнительная информация

Технический обзор: http://www.microsoft.com/sqlserver/2008/en/us/R2-multi-server.aspx Books Online http://msdn.microsoft.com/en-us/library/ee210557(SQL.105).aspx Reports http://blogs.msdn.com/hutch/archive/2010/02/21/sql-server-2008-r2-accessing-utility-control-point-data.aspx

51 Централизованное управление приложениями: Data-tier Applications

Централизованное управление приложениями: Data-tier Applications

(DACs)

52 В этой части

В этой части

Мотивация Что такое DACs Демонстрация возможностей SQL Server 2008 R2 Visual Studio 2010 Разница между проектами DAC & DB Ограничения Планы развития Дополнительная информация

53 Мотивация

Мотивация

Типичный клиент Сотни небольших приложений >99% используют 1 файл в базе данных Средний размер <4GB Число приложений увеличивается Перегрузка администраторов Постоянно улучшающаяся производительность серверов Недостаточная утилизация

54 Цели

Цели

Разработчики определяют и управляют логической структурой приложений Таблицы, представления и т.д. Используя концепцию DAC Панель-сводка состояния Sharepoint-like experience for data UCP конфигурирует, устанавливает и поддерживает приложения Управление физическими свойствами (сервер, файлгруппы, конфигурация базы); Поддержка приложения (e.g., auto-indexing, resource allocation, DAC move) Централизованное управления администратором

55 Цели в SQL Server 2008 R2

Цели в SQL Server 2008 R2

Первый шаг в данном направлении Ориентация на небольшие приложения (Tier 2 and 3) Не все типы данных поддерживаются (цель – поддержка более ~90% в типичных приложениях) Расширение поддержки в след. версиях DAC Независимый модуль приложения Удобство управления жизненным циклом приложения Обновления, перенос приложения Работает как на индивидуальных серверах, так и на SQL Azure Общие инструменты разработки и управления Для разработчиков и администраторов

56 Что такое DAC

Что такое DAC

Приложение как целое для приложений баз данных (T-SQL app) Аналогия с MSI в Windows Installer Части DAC DAC метаданные Определение приложения Требования на установку Разделение между разработчиком и админом Дополнительные сервисы

DAC Метаданные (Имя, Версия, …)

Определение (Schema)

Установка Indexes, Partitions FileGroups …

Разработка Tables, Views, Constraints, SProcs, UDFs, Users, Logins

DAC Профиль установки Требования установки, политики управления и отказоустойчивости

DAC

57 Сервисы DAC

Сервисы DAC

* Будущие версии

58 Жизненный цикл DAC

Жизненный цикл DAC

59 Demo: Регистрация баз в качестве DAC

Demo: Регистрация баз в качестве DAC

59

59

60 Архив DAC

Архив DAC

Переносимый файл (.dacpac) Формат Zip Содержимое Хранит метаданные DAC, логические определения, политики установки Может содержать дополнительные файлы После установочные скрипты Описания Скрипты для перемещения и работы с данными Создается путём Извлечения DAC из существующей базы данных Создания DAC проекта в Visual Studio

61 Демонстрация: DAC

Демонстрация: DAC

62 Установка DAC

Установка DAC

63 Обновление DAC

Обновление DAC

64 Visual Studio: DAC vs

Visual Studio: DAC vs

DB Projects

Когда использовать какой проект

65 DAC vs

DAC vs

DB projects Содержание проекта

?

?

?

?

?

?

?

?

?

?

66 DAC vs

DAC vs

DB projects Разработка

?

?

?

?

?

?

?

?

?

?

67 DAC vs

DAC vs

DB projects Установка

?

?

?

?

?

?

?

?

?

?

68 DAC vs

DAC vs

DB projects Сравнение и синхронизация

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

Source/Target

.dacpac

.dbschema

DAC Project

Live Database

SQL DB Project

SQL Server Project

.dacpac

.dbschema

DAC Project

Live Database

SQL DB Project

SQL Server Project

?

?

?

Not Allowed

Compare Allowed

Compare and Updates Allowed

69 Ограничения в SQL 2008 R2

Ограничения в SQL 2008 R2

DAC – неудачный термин Обновление DAC Side-by-side – отсутствует обновление на месте Нет обновления на Azure Поддержка версий Невозможность использовать SQL 2008 (до выхода PCU2), SQL 2005 Данные Нет прямой поддержки Можно использовать скрипты после установки

70 Планы на будущее

Планы на будущее

Обновление на месте Перемещение вместе с данными Дополнительная поддержка Permissions Synonyms Sequences Role Membership Xml indexes Builtin UDTs - hierarchyid, geometry, geography Spatial indexes Xml schema collection + columns with xml schema Extended properties

71 Дополнительная информация

Дополнительная информация

Технический обзор: http://go.microsoft.com/fwlink/?LinkID=183214 Books online: http://msdn.microsoft.com/en-us/library/ee240739(SQL.105).aspx

72 Вопросы

Вопросы

Борис Барышников BorisB@microsoft.com

73 © 2010 Microsoft Corporation

© 2010 Microsoft Corporation

All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

74 Нам очень важна Ваша оценка

Нам очень важна Ваша оценка

Заполните анонимную анкету Если Вы не ходили на какие то доклады, ставить ничего не надо.

«SQL Server 2008 R2: Обработка потоков событий и централизованное управление серверами»
http://900igr.net/prezentacija/pedagogika/sql-server-2008-r2-obrabotka-potokov-sobytij-i-tsentralizovannoe-upravlenie-serverami-148791.html
cсылка на страницу

Проекты

25 презентаций о проектах
Урок

Педагогика

135 тем
Слайды
900igr.net > Презентации по педагогике > Проекты > SQL Server 2008 R2: Обработка потоков событий и централизованное управление серверами