Brent Stineman – Technical Evangelist and code monkey brestin@microsoft.com The Thing Data Connectivity Management Producers Collection Massively Parallel Azure Systems w/ Jason Young Tuesday@10:30am, Aralia Your are here HDInsight and Internet of Things w/ Tony Guidici Tuesday, 2:30pm, Tamarind - Guaranteed FIFO, with push-style API, up to 80GB maximum size, 10,000 queues per namespace, 2,000 messages per second, 256KB per message. Express Decreases latency by storing the messages in memory Partitions Managed scale out (at max 16x) A higher level abstraction from queues, enables pub/sub models with similar scale out capabilities and consistent pricing Filters Allows subscribers to selectively receive messages Rules Aid in filtering and authorization Volatile Subscribers Can delete on idle, allowing for transient consumers Storage & Analytics Custom Code & 3rd Party Services Event Hub Event Sources - Hyper Scale - Fully Managed - Interoperable - Secure - Cost Effective - Web/Mobile User Interfaces Integration Services Cloud Services Event Hub Publisher concept Every Event Hub has pre-defined number of partitions Every event has a partition key => mapped to one of the partitions Event 1 PartitionKey=A Event 1 PartitionKey=B Partition 1 Partition 2 Partition “n” Critical to scaling http://aka.ms/thatconfEH <protocol>://<namespace>.servicebus.windows.net/<eventhubname>/publisher/<partitionkey>/messages SharedAccessSignature sr=https%3a%2f%2fthatconferencens.servicebus.windows.net%2fthatconference%2fpublishers%2fbstineman%2fmessages&sig=a3MkKnkh MZpTMz%2fnFcsCS%2fcT9rT7Wn%2fZO%2b7eztBRMkk%3d&se=64948904112&skn=Publish Direct Receiver Receiver connects to a partition and pull messages Limited(5) receivers for each partition Worker 1 Event 1 Pkey = A Event 2 Pkey = B Partition 1 Partition 2 Receiver 1 Receiver “n” Worker “n” Partition “n” Receiver 6 Receiver 2 http://www.nuget.org/packages/Microsoft.Azure.ServiceBus.EventProcessorHost/0.3.0 Register a class that implements an EventProcessor interface Client SDK will manage balancing receivers across workers Worker 1 Partition 1 Partition 2 Callback for prtn. 1 Callback “n” Worker “n” Partition “n” Callback for prtn. 6 Callback for prtn. 2 http://www.nuget.org/packages/Microsoft.Azure.ServiceBus.EventProcessorHost/0.3.0 Worker 4 Callback for prtn. 1 Worker 2 Callback for prtn. “n” Pub-Sub with Event Hub Consumer groups allow multiple, parallel sets of subscribers to receive the same events Partition 1 Partition 2 Partition “n” Consumer Group C Consumer Group B Consumer GroupWorker A 1 Worker 1 Worker 1Callback for prtn. 1 Callback for prtn. 1 Callback for prtn. 1 Callback “n” Callback “n” Callback “n” Worker “n” Worker “n” Worker “n” Callback for prtn. 6 Callback for prtn. 6 Callback for prtn. 6 Callback for prtn. 2 Callback for prtn. 2 Callback for prtn. 2 Orientation to IoT Organization Characteristics Azure Services Buy • Building software is not a core competency • Focus on time-to-value Intelligent Systems Service (ISS) Solution Buy Some, Build Some • Custom protocols and security models • Custom analytics and data processing • Compose higher level services ISS Platform Services • Core competency in building software/services • Focus on flexibility & control, cost minimization • Strategic investment in custom service platform Core/App Platform Services Build Get started Visit azure.microsoft.com Azure Event Hub – IOT at Scale w/ Brent Stineman Monday@1:00pm, Guava Massively Parallel Azure Systems w/ Jason Young Tuesday@10:30am, Aralia HDInsight and Internet of Things w/ Tony Guidici Tuesday, 2:30pm, Tamarind