454607b0d5834fc910f6fb3b86eecea1.ppt
- Количество слайдов: 74
Microsoft SQL Server 2008 R 2 новые возможности и перспективы Алексей Шуленин Microsoft Департамент стратегических технологий Эксперт по технологиям обработки и анализа информации
Краткий курс истории SQL Server • • • SQL Server 2008 R 2 Производительность Функциональность Надежность 1989 1990 1992 1995 1996 1998 2000 2005 2008 2010. . .
SQL Server 2008 R 2 - это релиз, ориентированный на BI Madison - поддержка хранилищ > 100 ТБ при помощи горизонтально масштабируемой архитектуры решения Data. Center - поддержка до 256 логических процессоров - вертикальная масштабируемость Multi-server administration и UCP (utility comtrol point) в SSMS централизованное управление серверами в слое данных Data Tier Application - централизованное управление приложениями по работе с данными за счет более тесной интеграции с VS 2010 Self-service analysis - Power. Pivot - In-memory OLAP, анализ по требованию на уровне бизнес-пользователя Self-service reporting - поддержка картографических отчетов в Report Builder 3. 0 и другие улучшения Master Data Services - централизованное управление нормативносправочной информацией (измерениями) в масштабах всего предприятия Stream. Insight - комплексная обработка событий - анализ потоков данных на лету в масштабе времени, близком к реальному. . .
Что же такое BI? Business Intelligence = «a set of technology tools focused on querying, reporting and multi-dimensional analysis on top of a data warehouse» Именно так этот термин был введен в 1989 г. аналитиками Gartner Group Однако в конце 2006 г. докопались, что они его не придумали, а позаимствовали из статьи 1958 г. в IBM Journal Business is a collection of activities carried on for whatever purpose, be it science, technology, commerce, industry, law, government, defense, et cetera Intelligence is defined as "the ability to apprehend the interrelationships of presented facts in such a way as to guide action towards a desired goal“ Сейчас этот смысл вкладывается в понятие DSS = Decision Support System
Основные направления инвестиций в IT на 2010 г. Технологические приоритеты Бизнес-приоритеты Виртуализация Улучшение бизнес-процессов Облачные вычисления Сокращение корпоративных затрат Web 2. 0 Повышение уровня использования информации Телекоммуникации (сеть и голос) Повышение производительности труда Бизнес-анализ Привлечение и удержание новых клиентов Мобильные технологии Управление изменениями Управление данными и документами Инновации – создание новых продуктов и услуг Сервисно-ориентированная архитектура и приложения Лучшая ориентация на клиентов и рынки Информационная безопасность Консолидация бизнес операций Управление ИТ Расширение отношений с текущими клиентами Источник: Gartner EXP (январь 2010)
SQL Server 2008: платформа данных для ПО и сервисов Database Engine Управление реляционными данными Integration Services Analysis Services Обработка ETL Управление многомерными даными (OLAP) Управляемая отчетность Самостоятельная (Self Service) отчетность Репликация Полнотекстовый поиск Reporting Services Профилирование данных Интеллектуальный анализ данных (Data Mining) Встроенная отчетность
SQL Server 2008 R 2: платформа данных для ПО и сервисов Database Engine Integration Services Управление реляционными данными Обработка ETL Обработка сложных событий Репликация Профилирование данных Полнотекстовый поиск Analysis Services Reporting Services Классическое управление многомерными даными (OLAP) Stream. Insight* Управляемая отчетность Интеллектуальный анализ данных (Data Mining) Самостоятельная (Self Service) отчетность Самостоятельный анализ данных с помощью Power. Pivot* Встроенная отчетность Master Data Services* Управление метаданными
Редакции SQL Server 2008 R 2 Новые редакции в R 2
Новое в редакциях R 2 Standard Память Enterprise Datacenter 64 Гбайт ОЗУ 2 Тбайт ОЗУ Максимум ОС Поддержка процессора 4 процессора До 8 процессоров Более 8 процессоров; До 256 логических процессоров Виртуализация 1 VM / лицензия 4 VM / лицензия Максимальная виртуализация Virtualization Support Транзакционные системы и много -серверное управление Business Intelligence Hyper-V Live Migration Сжатие резервной копии (новое из Enterprise); Поддержка управляемых экземпляров Компонентные отчеты (SSRS); Продвинутые средства визуализации (карты) До 25 экземпляров Управление максимальным количеством экземпляров Power. Pivot для Share. Point; Master Data Services; Сжатие Unicode
Магический квадрант для BI-платформ Источник - Гартнер
Ценовое сравнение
Лидеры рынка Forrester выделяет в первой волне 3 -х участников:
Предпочтения пользователей Исследование IDC в области mission-critical applications (осень 2009 г. )
Сравнительная стоимость администрирования Исследование компании Alinean Известна своими методологиями в ROI и ТСО, используемыми в аналитике Gartner
Новые возможности Таким образом, понятие BI автоматически вовлекает в сферу рассмотрения вопросы масштабируемости и снижения административных издержек Масштабируемость Madison (Parallel Datawarehouse) Централизованное внедрение/сопровождение Synthesis (интеграция с Visual Studio 2010, Data-Tier Applications, Utility Control Point) Собственно, BI Gemini (Power. Pivot) Улучшения Reporting Services Master Data Services Потоковая аналитика Stream. Insight
Масштабируемость
Крупнейшие внедрения на SQL Server My. Space - 4. 4 million concurrent users at peak time, 8 billion friend relationships, 34 billion e-mails, 1 Petabyte store, scale-out using SSB and SOA http: //www. microsoft. com/casestudies/Case_St udy_Detail. aspx? casestudyid=4000004532 bwin - Most popular European online gaming site – 30 k db transactions/second, motto: “Failure is not an option”; 100 TB total storage http: //www. microsoft. com/casestudies/Case_St udy_Detail. aspx? casestudyid=4000004138 http: //www. microsoft. com/casestudies/Case_St udy_Detail. aspx? casestudyid=4000001470 Korea Telecom - Largest telco in Korea serves 26 million customers; 3 TB DW http: //www. microsoft. com/casestudies/Case_St udy_Detail. aspx? casestudyid=4000001993 Category Metric Largest single database 80 TB Largest table 20 TB Biggest total data 2. 5 PB Highest transactions per second 36, 000 Fastest I/O subsystem in production 18 GB/sec Fastest “real time” cube 15 sec latency data load for 1 TB 20 minutes Largest cube 4. 2 TB
Parallel Data. Warehouse (Madison) Массивно-параллельные системы для SQL Server 2008 Microsoft BI Reference Hardware Platforms
Роли узлов и архитектура решения Private Network Compute Nodes Industry Standard SAN Storage Corporate Network Control Node Active/Passive Client Drivers Landing Zone Spare Node ETL Load Interface Configuration & Monitoring Microsoft Cluster Server Backup Corporate Backup Solution Distributed DB
SQL Server Data Types Типы данных bigint DAv 3 Madison P P binary bit char / nchar P P date, time DA = DATAllegro В preview только Latin 1_General с бинарным сравнением Синтаксис SQL - в основном ANSI 92 Базовые INSERT, UPDATE, DELETE, SELECT Поддерживается CREATE TABLE AS SELECT Некоторые аналитические фции Напр. , терадатовские расширения Quantile, Sample, … datetime (was date in DA) P P datetime 2 P datetimeoffset P decimal P P float P P geometry / geography hierarchyid Int (was integer in DA) money P real P smalldatetime P smallint P smallmoney P P sql_variant text / ntext / image timestamp tinyint P P varchar / nvarchar / varbinary P P v*(max) uniqueidentifier xml
Инструменты запросов SSMS пока не поддерживается Используется GUI Nexus (Coffing. DW. com) Она также применяется в Netezza, Teradata, . . . Имеется object explorer и возможность оперативного выполнения запросов Утилита командной строки DA-SQL уже заменена разновидностью Sql. Cmd
BI: корпоративный подход Централизованная разработка хранилища, витрин и системы отчетности Да, но с другой стороны, сколь бы масштабируемой ни была система. . . Централизованная разработка хранилища, витрин и системы отчетности
Персональный BI Да, но с другой стороны, сколь бы масштабируемой ни была система, пользователи зачастую рассматривают ее результат как подспорье и продолжают проводить собственный анализ в зависимости от своих конкретных задач 23
Power. Pivot
Power. Pivot для Excel Функциональность OLAP Pivot. Tables и Pivot. Charts без необходимости привлечения кубов SQL Server Analysis Services
Компоненты архитектуры Power. Pivot add-in assembly Загружает Power. Pivot в Excel Power. Pivot затем взаимодействует с Excel через его СOM interop assembly: дергает объектную модель Excel и отвечает на события и callbackи, поднятые на стороне Excel Установки Registry и файлы манифеста Позволяет Excel 2010 загружать Power. Pivot в runtime HKEY_CURRENT_USERSoftwareMicrosoftOfficeExcelAddins указывает на манифесты Power. Pivot В манифестах в XML-виде описано, как загружать сборку add-in’a Verti. Paq engine Обрабатывает запросы Pivot. Table и Pivot. Chart и DAX-выражения Реализует (но не засвечивает) объектную модель Analysis Services Verti. Paq database Хранит данные Power. Pivot Сама БД находится в custom XML part внутри Excel workbook zip -> xlcustom. Data cache Единственное исключение из самодостаточности Excelного workbook’a Обслуживает временные файлы в %TEMP% во время операций сохранения Провайдер OLE DB for OLAP Это понятно Теперь он может коннектиться не только к SQL Server Analysis Services, но и к книгам Excel Power. Pivot, как локальным, так и опубликованным на Share. Point AMO и ADOMD. NET Аналогично, реализация XMLA для операций доступа к данным и администрирования
Требования и ограничения Power. Pivot Размер книги не может превышать 2 ГБ Что соответствует 4 -гиговому датасету с 2 -кратным к-том сжатия В процессе загрузки данных и работы с ними ограничений нет, однако книга > 2 ГБ не может быть сохранена Процессор Минимальный - 500 МГц, рекомендованый - 2 -ядерный 2. 6 ГГц Практика показывает, что и на 2 гигах можно загрузить в Power. Pivot сотни миллионов записей и чувствовать себя при этом достаточно комфортно, однако раз на раз не приходится. Сильно зависит от сжимабельности данных. Память Минимум - 1 ГБ, рекомендовано - 4 ГБ ОС Минимум - Windows XP SP 3, рекомендовано - Windows 7 Business или Ultimate Edition (х64) Софт Минимум Excel 2010 +. NET Framework 3. 5 SP 1, рекомендован Office 2010 +. NET Framework 4. 0
Визуальные фильтры и инфокривые Визуальные фильтры (Slicers) Могут передавать выбранные данные в: Pivot. Tables Pivot. Charts CUBE functions Могут ссылаться на несколько элементов Могут быть отформатированы с помощью стилей Инфокривые (Sparklines) Представляют диапазон данных Типы: график столбец выигрыш/проигрыш Могут быть настроены по осям и отформатированы
Расширения Pivot. Table Именованные наборы Предоставляют возможность определить какие элементы будут помещены в области осей Pivot. Table явным выбором из списка или написав в окне MDXзапрос Не путать с Named Sets в кубе (на них по-прежнему можно ссылаться из Pivot. Table) Анализ «что-если» Pivot. Table поддерживает модификацию данных с целью увидеть влияние этих изменений на другие данные Этот функционал поддерживеается только на кубах Analysis Services 2005 и выше Анализ может производиться в локальном режиме (на уровне книги Excel), либо, если куб поддерживает режим обратной записи, результаты анализа могут быть опубликованы в кубе Таким образом Excel может использоваться разработчиками в своих приложениях как средство сбора данных при планировании Включается MDX-окно, где можно задать динамическое разнесение изменений по детальным ячейкам (равномерное, взвешенное) «Дополнительные вычисления» В Pivot. Table числовое значение может быть показано как преднастроенное дополнительное вычисление; эта функция доступна из контекстного меню Дополнительные расширения Расширения условного форматирования, взаимодействие с визуальными фильтрами, возможность повтора элементов на верхних уровнях иерархии, фильтрация по рассчитываемым элементам, визуальные итоги Улучшения в о внешнем виде и скорости отрисовки диаграмм Улучшения поиска при фильтрации больших наборов элементов
Основы DAX = Data Analysis Expressions Предназначен для построения простых конструкций, которые помогут вам расширять базовую модель Power. Pivot вычислениями Типы вычислений: Вычисляемые колонки (оценивается для каждой строки в таблице) Меры (помещаются в область значений свод. таблицы или графика) Типы функций: Обычные функции Excel (~80 функций) Табличные функции - возвращают таблицу, которая служит входным параметром для др. ф-ций DAX Функции агрегирования Две функции для навигации по связям между колонками Первая возвращает скалярное значение, представляющее сторону « 1» отношения, вторая таблицу, представляющую сторону «ко-многим» Функции изменения контекста Под контекстом вычисления меры понимаются слайсеры, фильтры, метки по строкам и столбцам Функции работы со временем Требуют колонки типа «дата»
Возможности для разработчиков Power. Pivot был разработан для «самостоятельного анализа» (self-service BI), так что в версии 2010 возможности разработки ограничены Надстройка SQL Server Power. Pivot для Excel не может быть расширена или автоматизирована Создавайте представления (views) в корпоративных базах для подготовки и содействия загрузке данных Создавайте сервисы данных для передачи данных XML в листы Power. Pivot через потоки данных Управляйте библиотеками потоков данных в Share. Point 2010 Разрабатывайте приложения с целью доказательства концепций
Power. Pivot - выводы Большие объемы данных: Храние со сжатием Быстрые запросы и вычисления Данные из большого количества источников Усиливает знакомые функции Excel Использует Data Analysis Expressions (DAX) для сложных преобразований данных Поддерживает публикацию отчетов Power. Pivot в Share. Point
Power. Pivot для Excel Power. Pivot для Share. Point
Reporting Services: новое в визуализации Поворот текста на 270 градусов http: //blogs. technet. com/isv_team/archive/2010/03/27/3321575. aspx Data bars Специальный вид графика, отображающий единичную data point как horizontal bar или vertical column Длина столбца позволяет визуально оценить значение Sparklines Отображает несколько data points во времени в виде, удобном для оценки тренда Позволяет оценить общий тренд (рост или падение) и флуктуации http: //blogs. technet. com/isv_team/archive/2010/04/04/3322989. aspx http: //blogs. technet. com/isv_team/archive/2010/04/06/3323367. aspx Indicators Иконки индикаторов могут выбираться из преднастроенных наборов с возможностью изменения цвета / размера или задаваться свои собственные Карты
Компоненты общего доступа Наборы данных общего доступа (Shared datasets) Позволяют один раз определить запрос к данным и затем повторно его использовать в различных отчетах Можно также настроить обновление кэша для набора данных (вместо задания расписания для подписки с неопределенным провайдером доставки) Кэши можно задавать для различных комбинаций параметров Части отчетов (Report parts) Позволяют публиковать выбранные области данных как отдельные компоненты Другие разработчики отчетов могут их использовать для быстрой разработки отчетов и обеспечения единого внешнего вида Хранятся в Report Part Gallery, которая является новой функцией программы Report Builder 3. 0. Потоки данных ATOM (ATOM data feeds) R 2 поддерживает новое расширение рендеринга для поддержки экспорта данных отчета в документ сервиса ATOM Этот документ может быть использован любым приложением, которое потребляет потоки данных (например, Microsoft Power. Pivot).
Новое для разработчиков Улучшенное разбиение по страницам Появились специальные свойства для tablix data regions, groups и rectangles, чтобы управлять разбиением на страницы и задавать им имена/нумерацию Именование листов при экспорте в Excel http: //blogs. technet. com/isv_team/archive/2010/03/28/3321598. aspx AJAX Report. Viewer control Настройка с помощью Java. Script API Внутреннее обновление контента с помощью ASP. NET AJAX Поддержка AJAX Update. Panel Улучшена поддержка броузеров – IE 6, IE 7, IE 8, Firefox 3. 5 и Safari 4. 0 Report. Service 2010 - новая конечная точка управления для использования административной функциональности RS в приложениях Объединяет функциональность Reporting. Service 2005, 2006 и может использоваться как в native, так и Sharepoint-integrated режимах Относительные ссылки для доступа к отчетам и изображениям Должен быть опубликован на сервере Поддержка маркера пользователя Share. Point Маркер пользователя Share. Point содержит идентификацию пользователя и информацию о его членстве в группах Маркер позволяет приложениям выполнять операции в контексте данного пользователя
Язык выражений Три новые lookup-функции (Lookup, Multi. Lookup и Lookup. Set) позволяют сочетать данные из двух различных источников Lookup: отношение 1: 1 между источниками, на входе 1 значение из первого датасета, на выходе тоже 1 Multi. Lookup : отношение 1: 1 между источниками, на входе можно задавать несколько значений, для каждого из которых будет найдено соответствие. Соответствия вернутся в виде массива. Lookup. Set: отношение 1 -ко-многим между источниками, на входе 1 значение, на выходе - массив Агрегирование агрегатов Возможность использования результатов функции агрегирования в качестве входных данных для следующей функции агрегирования По агрегированным значениям также можно осуществлять сортировку Глобальная переменная Render. Format http: //blogs. technet. com/isv_team/archive/2010/03/29/3321661. aspx
Язык выражений Lookup-функции =Lookup(
Microsoft Chart Controls Приобретены у Dundas в прошлой версии Поддерживают стандартные диаграммы, статистические формулы и продвинутые свойства макета Связывают данные из множества внешних источников Манипулируют данными (копирование, разделение, слияние, выравнивание, группировка, сортировка, поиск, фильтрация и так далее) Позволяют настроить диаграммы с помощью событий и поддерживают AJAX Microsoft Chart Controls для Microsoft. NET Framework 3. 5 Инсталлируются все сборки, необходимые для chart controls Поддерживают Windows Forms и приложения ASP. NET Microsoft Chart Controls Add-on for Microsoft Visual Studio 2008 Предоставляют интеграцию панели инструментов Chart Controls и Intellisense (автозаполнение в интегрированной среде Visual Studio) Ставятся отсюда
RDL sandboxing
Снижение стоимости администрирования и развертывания
SQL 02 SQL 04 SQL 05 SQL 03 Интегрированная с SSMS среда получения отчетов по производительности SQL Server Еще в 2005 -м в SSMS были интегрированы отчеты Reporting Services по DMV, дающие основные показатели по расходу диска, памяти, нагрузке процессоров с точки зрения объектов SQL Server и выполнения запросов DBA Эти возможности были усилены с выпуском SQL Server 2005 Performance Dashboard, которая SQL Server Management Studio уже вела свою базу, куда аккумулировала собранную статистику SQL Performance Studio является следующим этапом развития на этом пути SQL Server Utility SQL 01 Продолжение Performance Studio в составе SQL Server 2008 Control Point Managed Instances
Также в 2008 -м появилась Declarative Management Framework на основе политик Ограничение рабочей среды (Surface Area) XPCmd. Shell == False SQLCLR == True DBMail == False Remote. DAC == False Имена таблиц должны заканчиваться на “%_tbl” На рабочих станциях разработчиков допускаются только Express и Developer Editions Соединяем вместе PDW и DMF. .
Создание UCP
Создание UCP
Хранилище и джобы
Добавление управляемого экземпляра
Задание политик и параметров хранилища The following configuration settings are not configurable in this release of SQL Server: UMDW name: Sysutility_mdw_
Отчеты и скоркарды
Data-tier Application в VS 2010 Разработка Новый тип проекта Data-tier Application, генерация тестовых данных, сравнение схем и данных Создание объектов в оффлайне, Intelli. Sense, рефакторинг, конфигурация правил анализа, анализ статического кода Автоматизированное построение проекта, DACPAC Назначение политик (Server Facet), автоматическое развертывание на сервер БД в соответствии с политиками Новый редактор T-SQL, онлайновая отладка Управление Data Tier Application через UCP Unit testing, . . . Внедрение Новый модуль развертывания DACPAC сочетает как само приложение, так и намерения по его внедрению Администрирование SQL Server Utility Control Point
Data Tier Application Project
Проекты: приложения баз данных и уровня данных Проект баз данных (Mission or business critical) Проект приложения уровня данных (Departmental apps in V 1) Visual Studio Build . dacpac . sql Generate scripts . dbschema Deploy SQL Server 2005, 2008 R 2 SQL Server 2008 R 2
Stream. Insight
Что такое CEP? Complex Event Processing (CEP) это непрерывная и инкрементальная обработка потоков событий из множественных источников в соответствии декларативным запросом с близкой к нулю задержкой СУБД CEP Парадигма запросов Запросы выполнятся по требованию Запросы обрабатываются непрерывно Задержка Милисекунды, часы, . . . Милисекунды или меньше Пропускная способность Тысячи, десятки тысяч записей/сек Десятки тысяч записей/сек или больше Персистентнос ть Записи сохраняются в таблице Записи важны в момент потребления запрос ответ входной поток выходной поток
Что такое CEP? Обычно мы получаем данные из какого-либо источника, кладем их в базу и затем запрашиваем оттуда В случае CEP мы запрашиваем данные, прежде чем они достигнут базы А они могут в нее и не попасть, они могут просто сгинуть, если потребляются сиюминутно И производим из них информацию, помогающую принимать правильные бизнес-решения, в первую очередь, автоматизированными средствами Очень хорошую метафору привел Sharon Bjeletich It's about throwing the data at the query, rather than throwing the query at the data Действительно, имеется стоящий (standing) LINQ-запрос, через который непрерывным потоком идут данные со входного адаптера
Область применения Задержка Дни Реляционные СУБД Часы Минуты CEP сценарии Анализ реляционных данных Секунды Аналитика Web Аналитика 100 мс Мониторинг Производство Трейдинг < 1 мс 0 10 100000 Скорость поступления данных (событий/сек) ~10^6
Примеры CEP-cценариeв Производство: • Сенсоры на заводе • Аппаратные контроллеры • 10, 000 соб. /сек Веб аналитка: • Анализ потока кликов • Анализ онлайн поведения • 100, 000 соб. /сек Финансы: • Трейдинговые системы • Паттерн • Очень низкие задержки • 100, 000 соб. /сек Электросистемы: • Потребление • Аварии • Умная электрофикация • 100, 000 соб. /сек Хранение и архивация Графическое отображение трендов Управление производством Определение аномалий Мгновенная сегментация потребителей Алгоритмический трейдинг Превентивное техобслуживание Данные о системе Потоки данных Потребление входных данных. Подписка на источники данных Обработка событий Lookup • Top запросы • Корреляция событий из разных источ. • Паттерны
Обзор CEP-платформы Microsoft Разработка CEP приложений IDE Источники событий CEP Engine C_ID C_NAME C_ZIP Внешние данные Output Adapters Input Adapters Стоячие запросы СУБД и другие хранилища Финансовые потоки Event targets Работа CEP приложения Устройства, сенсосы Веб сервера . NET C# LINQ Пейджеры и устройства мониторинга Панели упр, Share. Point Трейлинговые консоли Хранение исторических данных
Цели и задачи Мониторинг данных из различных источников на предмет выявления значимых шаблонов, трендов, исключений и возможностей Инкрементные анализ и корреляция данных на лету (без первоначального сохранения) с минимальной задержкой Агрегирование событий из различных источников и проведение комплексного анализа во времени Управление бизнесом на основе аналитики масштаба времени, близкого к реальному, и включение ответных действий, определенных на ключевых показателях производительности (KPI) Незамедлительный отклик на открывшиеся возможности или угрозы за счет включения KPI в логику СЕР-приложения; улучшение операционной эффективности Интеллектуальный анализ и поиск закономерностей среди потока событий для нахождения новых KPI Использование предсказательных бизнес-моделей на исторических данных для непрерывной очистки и улучшения характеристик имеющихся KPI
Наблюдай, управляй, извлекай знания Тренды индустрии Почему CEP? • Цена приобретения данных стремится к 0 • Обработка данных на лету • Цена хранения данных мала и уменьшается • Цена обработки данных существенна Наблюдай за метриками Записывай сырые данные (история) Управляй бизнесом на основании метрик Извлекай знания из исторических данных. Создавай новые метрики • Не нужно загружать/со хранять в памями • Предоставля ет систему выполнения запросов для
Stream. Insight и другие технологии обработки событий от Microsoft Многие помнят возникшую во времена 2000 -го технологию SQL Server Notification Services, которая благополучно перешла в 2005 -й и не перешла в 2008 -й Stream. Insight не является ее заменой, поскольку В NS события сохранялись в базе, затем сравнивались и сопоставлялись подпискам, которые также хранились в базе В SI входящие данные запрашиваются и отрабатываются в реальном времени, прежде чем они поступят в базу Разумеется, такая возможность присутствует (использовать БД для хранения), но непременной зависимости от нее нет Rx (Reactive Framework) Rx позиционируется как среда обработки событий общего назначения. NET 4 включает IObserver / IObservable в составе Base Class Library (BCL). Rx предлагает новый язык (DSL внутри C#, F#, . . . ) для естественного описания асинхронных вычислений Также поддерживает LINQ-based streaming API Чтобы не устраивать внутренней конкуренции, подразделение Connected System Division было слито с Data and Storage Platforms Division в апреле 2009 г. Пока проще не стало Since Stream. Insight is committed to ship with SQL Server 2008 R 2, it targets the 3. 5 version of the. NET Framework which does not contain Reactive LINQ. To bridge this time gap, Stream. Insight decided to ship its own copy of the observable interfaces.
Основные понятия Событие Заголовок Содержит метаданные о событии и временн. Ые отметки, задающие его интервал Поск. Stream. Insight построен на. NET, все временн. Ые отметки используют тип данных. NET Datetime Метаданные заполняются движком Stream. Insight Полезная нагрузка Структура или класс. NET, представляющий ассоциированные с событиями данные Поля - скалярные и элементарные сериализуемые типы (напр. , byte[]) числом <= 32 Порядок важен, т. к. для нетипизированного адаптера доступ по ordinal Поля заполняются из входного адаптера Timestamps Long /Metadata pump. ID … … String Type Location … … Double flow pressure … …
Основные понятия Модели событий Модель задает форму события, т. е. тип длительности Может иметь одно из трех значений Точка (напр. , событие в Event Log’e) Отрезок (напр. , транзакция от момента начала до завершения) Луч (напр. , пользовательская сессия)
Основные понятия Поток событий Данные от источника, непрерывно меняющиеся во времени Входной адаптер Ответственен за то, чтобы забрать события из потока источника (Event Log, Message Queue, сетевой или СОМпорт, . . . ) и представить их в форме, понятной серверу СЕР Адаптеры производятся от базовых классов Adapter Factory используется, чтобы разделить конфигурацию адаптера от его реализации Adapter Type Input Adapter Base Class ITyped. Input. Adapter. Factory
Основные понятия Выходной адаптер Ответственен за то, чтобы забрать события, обработанные сервером СЕР, перегнать их в формат потребителя (текстовый файл, Win-форма, . . . ) и записать в приемник Выходной адаптер может писать в приемник напрямую, либо опубликовать callback-метод (событие) Также производится от базовых классов Также конфигурация отделена от реализации при помощи фабрики класса Input Adapter Base Class Adapter Type ITyped. Output. Adapter. Factory
Основные понятия Модели разработки Implicit Server Model Скрывает большую часть работы, связанной с созданием и регистрацией объектов Stream. Insight Необходимо сконфигурить запрос и входной и выходной адаптеры Не требуется явно задавать привязку между запросом и адаптерами Не требуется создавать и управлять сервером, шаблоном запроса и другими объектами, это делают за нас Ограничения Приложение CEP может хостить только один запрос Хост in-process Запрос крутится только в памяти и не может быть сохранен на диск или в другое стабильное место
Основные понятия Explicit Server Model Полностью открывает возможности среды выполнения СЕР Разработчик должен: Понимать API и объектную модель (server, application, query template, query, event type, adapter, metadata) Создавать сервер СЕР и соединяться с ним Создавать самостоятельно все объекты и регистрировать их на сервере Допускается персистить метаданные из памяти во внешний формат хранения Можно выполняться out-of-process CEP-сервер может находиться локально или удаленно (доступ как к веб-сервису) // Connect to a remote CEP server. Server server = Server. Connect(new System. Service. Model. Endpoint. Address(@"http: //localhost: 12345 /CEP"));
Основные понятия IObservable/IObserver Альтернатива входному и выходному адаптеру как производителю и потребителю потока событий IObserver - любой объект, который желает быть оповещенным, когда меняется состояние другого объекта (IObservable) IObservable - любой объект, чье состояние может для когото представлять интерес и в котором этот кто-то (IObserver) зарегистрировал свой интерес Необходимо реализовать производителя событий как IObservable и потребителя как IObserver Простейшая из моделей разработки в Stream. Insight и вместе с тем самая ограничительная
Event Flow Debugger Позволяет визуализировать записанный в файл поток событий (и проигрывать его протекание) ToolsEvent. Flow. Debugger. exe Запись событий в файл происходит на основе ETW Toolstrace. cmd
Сценарии развертывания In-process с СЕР-сервером СЕР-приложение хостит binMicrosoft. Complex. Event. Processing. Engine. dll Возможны модели Implicit Server и IObservable Standalone СЕР-сервер Работает hostStream. Insight. Host. exe, возможно, на удаленном сервере Либо может быть завернут в сервис К нему обращаются различные СЕР-приложения, которые используют централизованные event types, adapter types, query templates Источник данных зарегистрирован на СЕР-сервере и поставляет поток событий для существующего приложения
Примеры в комплекте установки C: Program FilesMicrosoft Stream. Insight November CTPSamplesStream. Insight. Samples. zip Debugger Observable Explicit. Server Output. Adapters Implicit. Server Sql. Output. Adapter Input Data Text. File. Output. Adapter Sample. Edge. Input Trace. Output. Adapter Sample. Point. Input Pattern. Detector Traffic. Sensors SQLApp Input. Adapters Data. Simulator Sql. Input. Adapter Text. File. Input. Adapter Object. Model User. Aggregate. Query User. Extensions User. Functions
Призыв к действию Ознакомьтесь с новыми возможностями SQL Server 2008 R 2 Microsoft® SQL Server® 2008 R 2 November CTP SQL Server® 2008 R 2 Evaluation Edition: X 86, X 64, IA 64 Master Data Services: X 64 Stream. Insight: X 86, X 64 Обновленная документация на Вебе Microsoft® SQL Server® 2008 R 2 November CTP Feature Pack SQL Server 2008 R 2 Report Builder 3. 0 SQL Server 2008 R 2 Reporting Services November CTP Add-in for Microsoft Share. Point Technologies 2010, 2007 Также входят: SQL Server 2008 R 2 Upgrade Advisor SQL Server 2008 Native Client, JDBC Driver 2. 0, OLEDB Provider for DB 2, SQL Server Driver for PHP 1. 1 CLR Types, Powershell Extensions, SMO, AMO, BOL, . . .
Вопросы? isvrus@microsoft. com
© 2007 Microsoft Corporation. All rights reserved. Microsoft, 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.


