Mick Badran (Azure MVP, Insider, Advisor) Breeze [email protected] (@mickba) [email protected].

52

Transcript of Mick Badran (Azure MVP, Insider, Advisor) Breeze [email protected] (@mickba) [email protected].

Page 1: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.
Page 2: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

What’s New in Azure

DPP201

Mick Badran (Azure MVP, Insider, Advisor)[email protected] (@mickba)

Page 3: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

SQL, SharePoint, BizTalk Images

Distributed Cache

Queue Geo ReplicationRead-Only Secondary Storage

Delete Disks

Large Memory SKU

Tag Expressions

Per Minute Billing

Stop without Billing

MSDN Dev/Test Integration

Offline Operations

VIP ACLs

Site to Site Virtual Network

New VM Gallery

Point to Site Software VPN

Android SupportHTML 5/CORS

Windows Phone Support

Custom Mobile API

iOS Notification Support

Git Source Control Windows 8 Notification Support

Mercurial Deployment

Log Streaming

IP and SNI SSL

IP/DDOS Protection

http Logs to Storage

WebSockets

Cloud Data Manager

Remote Debug

VOD Streaming + Encoding

AD Management Portal

AD Directory Sync

Manage Azure in AD

B2B/EDI and EAI Adapters AutoScale/Monitoring

Windows Server Backup

Hyper-V Disaster Recovery Support

http Logs to Storage

Import/Export Hard Drives

CORS/JSON Storage Support

Storage Analytics

Message Pump Programming Model

AMQP Support

Partitioned Queues/Topics

Cloud Services SDK 2.0

Dynamic Remote Desktop

Dynamic Remote Desktop201

3

Xamarin integration

HDInsight

AutoScale IaaS

Multi-Factor Auth

Active Directory

BizTalk Services

Traffic Manager

PowerBI

Web Sites

Notification HubsMobile Services

Media Services

Scheduler

VS Online

Hyper-V Recovery

Page 4: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Announcements/Releases so far in 2014Price Reductions across the board

Static Internal IP for VM

New Tooling from VS

Agent Injection in VM’s

Support for Chef and Puppet

Snapshot VM

Traffic Manager Support for Web Sites

Supporting Java backend for Web Sites

Web Site Backup

Staging Slot for Web Sites

AutoScale GA

VM Remote Debugging

Web Site IP/SNI SSL for FreeMobile Services .NET supportMobile Offline Data SyncMobile AD integrationSQLDB 500 GB increaseSQLDB SLA to 99.95%SQLDB Active Geo-FailoverSQLDB backup/restoreNew Azure Portal PreviewAzure Resource GroupsWebJobs in WebSitesAzure in China Open for BusinessHD Insights Hadoop 2.2 Support

GA of Oracle Software in Windows AzureAzure in Japan DC’s Open for BusinessWindows Azure ExpressRoute previewPCI/DSS Compliance and Expanded ISO certRead Access GEO Redundant StorageAzure Region in Brazil announcedGA Biztalk ServicesAzure AD Premium Preview

Page 5: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.
Page 6: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Azure footprint

16 regions worldwide in 2014

Page 7: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Fortune 500 using Azure

>57%

>250kActive websites

Greater than

1,000,000

SQL Databases in Azure>20 TRILLION

storageobjects

>300

MILLIONAD users

>13BILLIONauthentication/wk

>2 MILLION

requests/sec

>1 MILLION

Developers registered with Visual Studio Online

Page 8: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Titanfall

Page 9: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Agenda – What’s New Agenda

• VMs/Templates• Virtual Networks• Traffic ManagerIaas

• AutoScale• Service Bus Event Hubs• Application Insights• Document DB• Machine Learning• Azure Search

Paas

Page 10: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Microsoft Azure

Programming languages + tools.NET, Visual Studio, TFS + Git, Java, NodeJS, PHP, Python, Ruby, C++

Microsoft cloud infrastructure

PaaSWebMobileGamingCloud services

DataAnalyticsMachine LearnIdentity

IaaSWindows VMsLinux VMsStorageNetworking

Page 11: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

IaaS announcements

Virtual Machines Capture/deploy images Puppet support Chef support Autoscale

Visual Studio Tooling Create/manage VMs Integrated remote debugging

Virtual Networking Point-to-site VPN Dynamic routing Subnet migration Static internal IP

Page 12: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Visual Studio integration

Create VMs

Manage VMs

Remote debug VMs

Virtual Machines

Page 13: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Virtual Networks

Page 14: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Demo: Creating a cross site VNET with Powershell

Page 15: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Intelligent customer routing with Traffic Manager

www.yourapp.com

Page 16: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Intelligent customer routing with Traffic Manager

www.yourapp.com

Page 17: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Microsoft Azure

Programming languages + tools.NET, Visual Studio, TFS + Git, Java, NodeJS, PHP, Python, Ruby, C++

Microsoft cloud infrastructure

WebMobileGamingCloud services

DataAnalyticsMachine LearnIdentity

IaaSWindows VMsLinux VMsStorageNetworking

PaaS

Page 18: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Web announcements

Web Sites Autoscale Traffic manager Webjobs Backup Java support

.NET updates ASP.NET MVC 5.1 ASP.NET Web API 2.1 ASP.NET Identity 2.0 ASP.NET Webpages 3.1

Visual Studio Tooling “New project” integration Powershell automation Node.js project support

CDN Generally available

Page 19: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

.NETPython

Develop apps with…Node.j

sJava

PHP

Page 20: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

AutoScale

Page 21: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

AutoScale

Page 22: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

AutoScale

Page 23: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

The Demo Site Walk through – Swim Site

Page 24: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Application Insights

Page 25: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Know before your customers know

Get 360 degree view to application’s health with relevant metrics to help you detect issues in production.

Set up a view of your

application health with metrics that

you care

Identify issues and patterns

with your application in

production

Check the pulse of your application

Page 26: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

How to start getting insights into your applications?

Basic Availability

Embrace the advantages of the cloud for your enterprise at your paceEmbrace the advantages of the cloud at your own pace

Basic Performance

Application Usage

Custom Telemetry

Non-invasive

Code change

Page 27: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Application Insights in action

Page 28: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Azure Document DB

Reliable & Predictable Performance

Fast, predictable performance

Tunable consistency

Elastic scale

Query schema-free data with no

secondary indices

Native JavaScript transactional processing

Familiar SQL-based query language

Build with familiar tools – REST, JSON,

JavaScript

Easy to start and fully-managed

Enterprise-grade Azure platform

Rich Query and Transactions over Schema-free Data

Rapid Development

A NoSQL document database-as-a-service, fully managed by Microsoft Azure.

For cloud-designed apps when query over schema-free data; reliable and predictable performance; and rapid development are key. First of its kind database service to offer native support for JavaScript, SQL query and transactions over schema-free JSON documents.

Page 29: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

fully managed, scalable, queryable, schemafree

JSON document database service for modern

applications

fully featured RDBMS

transactional processing

rich query

managed as a service

elastic scale

internet accessible http/rest

schema-free data model

arbitrary data formats

Data Services in Azure - vTomorrow

Page 30: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Document DB

URL based JSON-Database as a Servicehttps://<docdb-servicename>.documents.azure.com:443/e.g. https://micksdb.documents.azure.com:443/

.NET & JS SDK librariesMicrosoft.Azure.Document.Client

Example Connection from .NET SDK…_client = new DocumentClient(new Uri(Globals.DocDBUri), Globals.DocDBKey);

Query and Create a Databasevar db = _client.CreateDatabaseQuery().Where(d => d.Id == this.DatabaseName).AsEnumerable().FirstOrDefault();if (db == null) { db = await _client.CreateDatabaseAsync(

new Database{ Id = this.DatabaseName }); Console.WriteLine("Created Database"); }

Page 31: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Document DBStore a Documentpublic async Task StoreDocument(DocumentCollection coll,dynamic doc) { await _client.CreateDocumentAsync(coll.DocumentsLink, doc); }

Sample Document Class – My Sample.public class DocDBDocument { [JsonProperty("id")] public string Id { get; set; } public string DocumentType { get; set; } public string Version { get; set; }

public dynamic DocContent { get; set; }}

Page 32: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Document DBGet a Document Collectioncoll = await _client.CreateDocumentCollectionAsync(db.CollectionsLink, new DocumentCollection { Id = this.CollectionName });

Query a Document Collectionpublic async Task<List<DocDBDocument>> GetDocuments(DocumentCollection coll,string docType) { var docs = _client.CreateDocumentQuery<DocDBDocument>(coll.DocumentsLink, "SELECT * FROM SwimDocuments sDocs WHERE sDocs.DocumentType='" + docType + "'"); foreach (var doc in docs) { Console.WriteLine(doc.Id); } return (docs.ToList()); }

Page 33: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Document DB in Action

Page 34: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Service BusEvent Hubs

Page 35: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Event Hubs

Page 36: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Event Hubs

Consumers

Publishers

Page 37: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Event Hub Sample CodeReference – Microsoft.ServiceBus 2.2+ - this has EventHub classes.

Getting Started.

Trace.WriteLine("Connecting to ServiceBus EventHub");

//We can create alot of other things here - such as AMQP messages etc._recvClient = EventHubClient.CreateFromConnectionString(Globals.SB_EH_ConnString,"mickdemo");_sendClient = EventHubClient.CreateFromConnectionString(Globals.SB_EH_Sender_ConnString,"mickdemo");_sender = _sendClient.CreatePartitionedSender(this._partitionKey);

_grp = _recvClient.GetDefaultConsumerGroup();//_receiver = _grp.CreateReceiver(_partitionKey,0); //receives ALL messages on the queue_receiver = _grp.CreateReceiver(_partitionKey,DateTime.UtcNow.AddHours(-2)); //receives RECENT messages on the queue

Trace.WriteLine("Connected");

Page 38: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Event Hubs in Action

Enter – THE LIGHTHOUSE…….

Page 39: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Machine Learning

Page 40: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

One solution for Machine Learning - from data to results

Azure Portal

Azure Ops Team

ML Studio

Data Scientist

HDInsight

Azure Storage

Desktop Data

Azure Portal & ML API service

Azure Ops Team

PowerBI/Dashboards

Mobile AppsWeb Apps

ML API service Developer

Page 41: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Machine Learning

Data I/O

Taking Data & preparing for AnalysisDimensionality reduction. E.g. Kinect measures 1000 points, 6 are relevantFitting Model selection; calibration; assessment

R – free scripts/graphics, many packages based on Vector Data.

Metrics to allow us to describe the data. E.g. Mean, Correlation…

Tools used for Text Input. E.g. ‘What is the theme of this essay?’

Page 42: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Machine Learning in action

Page 43: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Azure Search•Azure Search is a new managed search service

It serves a different set of use cases than SharePoint SearchHighly scalable with guaranteed throughput and storage.API-based controls makes it simple to managePowerful search features with highly differentiated features on the roadmap

• Initial FunctionalitySimple HTTP/JSON API for creating indexes, pushing documents, searchingKeyword search with user-friendly operators (+, -, *, “”, etc.)Hit highlightingFaceting (histograms over ranges, typically used in catalog browsing)Suggestions (auto-complete)Rich structured queries (filter, select, sort) that combines with searchScoring profiles to model search result relevanceGeo-spatial support integrated in filtering, sorting and ranking

Page 44: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Azure Search REST API

http://msdn.microsoft.com/library/azure/dn798935.aspx

Create Index (Azure Search API)

POST https://[servicename].search.windows.net/indexes?api-version=2014-07-31-Preview

Add or Update Documents (Azure Search API)

POST https://[service name].search.windows.net/indexes/[index name]/docs/index?api-version=2014-07-31-Preview

Search Documents (Azure Search API)

GET https://[service name].search.windows.net/indexes/[index name]/docs?api-version=2014-07-31-Preview& [query parameters]

search=[string]$filter=[string]$orderby=[string]$top=#

Page 45: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

POST https://micksearch.search.windows.net/indexes?api-version=2014-07-31-PreviewContent-Type: application/json api-key: CA52E9EFAF506EF0C8DD521DDA5A1C87

{ "name": "micksearchindex", "fields": [ {"name": "beach", "type": "Edm.String", "key": true, "searchable": true}, {"name": "location", "type": "Edm.GeographyPoint"}, {"name": "tags", "type": "Collection(Edm.String)"} ]}

Create Index (Azure Search API)

Page 46: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

POST https://micksearch.search.windows.net/indexes/micksearchindex/docs/index?api-version=2014-07-31-PreviewContent-Type: application/json api-key: CA52E9EFAF506EF0C8DD521DDA5A1C87

{ "value": [ { "@search.action": "upload", "beach": "Pambula Beach", "tags": [ "beach", "NSW" ], "location": { "type": "Point", "coordinates": [ -36.57, 149.54 ] } }, …]}

Add or Update Documents (Search API)

Page 47: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

GET https://micksearch.search.windows.net/indexes/micksearchindex/docs?api-version=2014-07-31-Preview&search=bondi Accept: application/json api-key: CA52E9EFAF506EF0C8DD521DDA5A1C87

{ "@odata.context": "https://micksearch.search.windows.net/indexes('micksearchindex')/$metadata#docs(beach,location,tags)", "value": [ { "@search.score": 2.4077828, "beach": "Bondi Beach", "location": { "type": "Point", "coordinates": [-33.53, 151.17 ], "crs": { "type": "name", "properties": { "name": "EPSG:4326"} } }, "tags": [ "beach", "NSW" ] },... ]}

Search Documents (Azure Search API)

Page 48: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

GET https://micksearch.search.windows.net/indexes/micksearchindex/docs?api-version=2014-07-31-Preview&search=*&$filter=geo.distance(location,geography'POINT(151.17 -33.53)') le 10 Accept: application/json api-key: CA52E9EFAF506EF0C8DD521DDA5A1C87

{ "@odata.context": "https://micksearch.search.windows.net/indexes('micksearchindex')/$metadata#docs(beach,location,tags)", "value": [ { "@search.score": 2.4077828, "beach": "Bondi Beach", "location": { "type": "Point", "coordinates": [-33.53, 151.17 ], "crs": { "type": "name", "properties": { "name": "EPSG:4326"} } }, "tags": [ "beach", "NSW" ] },... ]}

Search Documents (Azure Search API)

Page 49: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Azure Search In Action

Page 50: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Conclusion• Azure has produced many new ‘toys’ to play with.• Wrapping up we saw:

Application Insights

Service Bus - Event Hubs

Machine Learning

Document DB

Azure Search

Page 51: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.

Q&AThank you - & let’s get [email protected]

Page 52: Mick Badran (Azure MVP, Insider, Advisor) Breeze mickb@breeze.net (@mickba) mickb@breeze.net.