sql server streamiinsight - data processing in real time

25
SQL Server StreamInsight data processing in real time Denis Reznik Head of Web Development Department, DCT Trainer, Microsoft Innovation Center MCT, MCITP, MCPD, MCTS, etc

Upload: -

Post on 20-Aug-2015

834 views

Category:

Technology


1 download

TRANSCRIPT

SQL Server StreamInsight data processing in real time

Denis ReznikHead of Web Development Department, DCT

Trainer, Microsoft Innovation CenterMCT, MCITP, MCPD, MCTS, etc

StreamInsight

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

StreamInsight vs RDBMS

Database Applications Event-Driven Applications

Запросы Запрос к уже сохранённым данных

Стоячие запросы

Задержка Секунды, Часы, Дни Миллисекунды и меньше

Частота событий

Сотни в секунду Сотни тысяч в секунду

request

response

Event output stream

input stream

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

Сферы применения

Трейдинг

СистемыБезопасности

Веб-Аналитика

Вооружённые силы

Системы связи

Логистика

Электрификация

Архитектура StreamInsight

Основные понятия

Потоки События Адаптеры Шаблоны запросов

Потоки

Все данные организованы в потоки Поток – возможно бесконечная последовательность

событий, содержащих данные Нет требования упорядочения по времени (но каждое

событие имеет временную метку) Потоки данных однонаправлены:

Источник -> Стоячий запрос (Standing Query) -> Приемник (Sink)

События

Данные потоков упакованы в события Основная единица данных, обрабатываемая

StreamInsight сервером Составные части:

Заголовок (Header) тип (Kind) события временные метки связанные с событием

Нагрузка (Payload) – структура данных .NET Поля и Свойства события – элементарные типы Не более 32 полей Нельзя использовать атрибуты

Адаптеры

Получают/принимают события из источника данных Размещают события в очереди для последующей

обработки сервером Входные адаптеры (Input adapters) Выходные адаптеры (Output adapters)

Шаблоны запросов

Обработка событий организована в виде запросов Шаблоны запросов (query templates) – структуры,

определяющие бизнес-логику обработки данных Экземпляр запроса (Query Instance = Query + Data

Sources) – зарегистрированная связка шаблона запроса с определенными входным и выходным адаптером

Разворачивание

Hosted DLL Интегрирован в StreamInsight приложение

Stand-alone Server Поддержка множества приложений Может выполняться как сервис

Демо

Tolling Station

Элементы запросов

Projection Filtering Joins Unions Aggregations Event Windows

Hopping Window Tumbling Window Snapshot Window Count Window

Projection

Filtering

Joins

Unions

Aggregations

Поддерживаемые функции Avg Sum Count Min Max User-defined

Tumbling Window

Time

Hopping Window

Time

Snapshot Window

Count Window

Time

Демо

Tolling Station 2

Полезные ссылки

Документация по StreamInsight http://msdn.microsoft.com/ru-ru/library/ee362541.aspx

A Hitchhiker's Guide to StreamInsight Queries http://blogs.msdn.com/b/streaminsight/archive/2010/06/08/hitchhiker-s-guide-to-streaminsight-queries.aspx

SQL Server 2008 R2 Update for Developers Training Kit http://www.microsoft.com/downloads/details.aspx?FamilyID=fffaad6a-0153-4d41-b289-a3ed1d637c0d&displaylang=en

Блог команды разработчиков http://blogs.msdn.com/b/streaminsight/ Форум StreamInsight http://social.msdn.microsoft.com/Forums/en-US/streaminsight

Вопросы

Denis ReznikHead of Web Development dpt. at DCTTrainer at MICMicrosoft MVP (SQL Server)Microsoft Certified [email protected]://twitter.com/DenisReznikhttp://dev.net.ua/blogs/denisreznik/MCPD - Web Developer 4MCITP – Database Developer 2008MCTS - .NET Framework 4, Web ApplicationsMCTS - SQL Server 2008, Database DevelopmentMCTS - .NET Framework 4, Data Access with ADO.NETMCTS - SQL Server 2008, Implementation and Maintenance