Introduction to Windows Azure and Windows Azure SQL Database
Windows Azure Tour
description
Transcript of Windows Azure Tour
![Page 1: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/1.jpg)
Windows Azure TourBenjamin DayBenjamin Day Consulting, Inc.
http://www.benday.comhttp://blog.benday.com
![Page 2: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/2.jpg)
About the speaker
• Owner, Benjamin Day Consulting, Inc.– Email: [email protected]– Web: http://www.benday.com– Blog: http://blog.benday.com
• Trainer– Visual Studio Team System, Team Foundation Server
• Microsoft MVP for VSTS• Microsoft VSTS/TFS Customer Advisory Council• Microsoft Cloud Services Advisory Group• Leader of Beantown.NET INETA User Group
![Page 3: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/3.jpg)
Agenda• Big thanks to
– Steve Marx @ Microsoft– Manuvir Das @ Microsoft– David Aiken @ Microsoft
• What is Windows Azure?• Develop Your Application• Deploy To Staging and Production • Some Stuff To Think About
![Page 4: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/4.jpg)
The Azure Platform
![Page 5: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/5.jpg)
The Azure Platform
![Page 6: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/6.jpg)
The “cloud” in Cloud Services?• Think data-center somewhere on the internet• Allows you to run your app• Allows you to read and write data
![Page 7: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/7.jpg)
Ok. So what’s Windows Azure?• Microsoft’s “cloud”
– Every cloud has an Azure lining?• Custom version of Windows
– Optimized for utility computing applications– Always runs virtualized on the Azure Fabric
• Azure Fabric– Runs instances of your apps– Handles “everything”
• Azure Storage• Azure SDK for Visual Studio
![Page 8: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/8.jpg)
Why Azure? • “I’ve got my awesome data-center so…”• No more worrying about…
– Buying, configuring, maintaining hardware– Buying, configuring, maintaining the operating system – Network infrastructure
• Routers, Switches, Load Balancers– Your data-center’s power and internet connections– Failovers
• Worry less about…– App deployment– Capacity planning
• Focus on writing your app
![Page 9: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/9.jpg)
Simple Scale Out• Changes in traffic• Need more servers?• Need fewer servers?
![Page 10: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/10.jpg)
I want everything…• …and it should be easy.• Azure let’s you worry about writing your app• Don’t have to learn a whole bunch of new stuff• Leverage your existing dev skills
![Page 11: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/11.jpg)
Azure: The Developer View• Write it in Visual Studio
– New project types– Debug your code
• .NET, ASP.NET, WCF, IIS7, LINQ• Azure Storage
– Database in the cloud– (with a few caveats)
• Desktop development versions of– Azure Fabric– Azure Storage
![Page 12: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/12.jpg)
Demo 1: Hello, World
![Page 13: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/13.jpg)
Hello, World: Discuss.• Doesn’t look like much but…
– that’s “internet scale”-able– Highly available
• Mostly stuff you already know
![Page 14: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/14.jpg)
Debugging In The Cloud• We can debug a service in Visual Studio• How do you debug a service that has been deployed?
– Answer: you don’t• Logging is the answer• RoleManager.WriteToLog(eventLogName, message)
– Event log name values: Error, Information, Warning, Debug, Critical
![Page 15: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/15.jpg)
Demo 1.1: Hello World + Logging
![Page 16: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/16.jpg)
AZURE STORAGE
![Page 17: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/17.jpg)
Azure Storage• Simple database in the cloud
– Tables• “structured storage”
– Blobs– Queues
• You don’t worry about replication• Scales like nobody’s business• Development version
– DevelopmentStorage.exe– Uses SQL Server Express
![Page 18: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/18.jpg)
Table Storage• Every row has RowKey & Partition Key• RowKey = primary key• PartitionKey
– Helps you tell Azure how to scale your data– You have to think about how you’ll be querying– By State? By Hour? Other?
RowKey PartitionKey FirstName LastName1 MA Ben Day
2 MA John Malkovich
3 WA Bill Gates
4 CA Steve Jobs
![Page 19: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/19.jpg)
PartitionKey• Your partitions could be on different servers• Best practice: If you know your PartitionKey, add it to
the WHERE clause• No PartitionKey in the WHERE insane table scans• Recommendation: More partitions is (probably) better
• Think hard about your partition key in the beginning– Else, roll your own re-partitioning
![Page 20: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/20.jpg)
Column Data Types• Partition key and Row key
– String (up to 64KB)• Other properties
– String (up to 64KB)– Binary (up to 64KB)– Bool– DateTime – GUID– Int– Int64– Double
![Page 21: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/21.jpg)
Demo 2: Azure Table Storage
![Page 22: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/22.jpg)
MORE THAN JUST ASPX
![Page 23: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/23.jpg)
Utility Compute without a UI• Azure uses the concept of “Roles”• Hello, World used a “Web Role”• The other role is a “Worker Role”
– Think windows service in the cloud
![Page 24: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/24.jpg)
Web & Worker
![Page 25: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/25.jpg)
Demo 3: Worker Role and a Queue• In a web role, create an ASP.NET page
– Creates a queue– Writes to a queue– Gets queue depth
• Worker Role– Reads the queue– “Processes” the message
![Page 26: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/26.jpg)
DEPLOYMENT
![Page 27: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/27.jpg)
Demo 4: Deploy To The Cloud• Change the storage config to use production servers
![Page 28: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/28.jpg)
MISCELLANEOUS
![Page 29: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/29.jpg)
Things to think about• No foreign keys• No triggers• No stored procedures• In Table storage, strings can only be 64k
– You’ll need to use a mix of Blob and Tables• Think hard about what config values you put in
web.config/app.config vs ServiceConfiguration.cscfg
![Page 30: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/30.jpg)
The Big Questions• When?
– Sometime in 2009• An actual Service Level Agreement (SLA)• More data-centers
– Now in US only– Global at go-live
• What will it cost?– It will depend on what you use
![Page 31: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/31.jpg)
More resources• My Blog
– http://blog.benday.com– Sample code– More Azure content to come…
• Steve Marx’s blog– http://blog.smarx.com/ – Evangelist for the Azure team
• Azure.com
![Page 32: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/32.jpg)
Final questions?
![Page 33: Windows Azure Tour](https://reader035.fdocuments.us/reader035/viewer/2022062410/568163a1550346895dd49f5d/html5/thumbnails/33.jpg)
About the speaker
• Owner, Benjamin Day Consulting, Inc.– Email: [email protected]– Web: http://www.benday.com– Blog: http://blog.benday.com
• Trainer– Visual Studio Team System, Team Foundation Server
• Microsoft MVP for VSTS• Microsoft VSTS/TFS Customer Advisory Council• Microsoft Cloud Services Advisory Group• Leader of Beantown.NET INETA User Group