The document discusses Windows Azure training kits and SDKs from Microsoft. It also discusses the costs and pricing models of Windows Azure, including usage-based pricing calculators. Finally, it discusses availability and uptime percentages for cloud services, and provides service credit percentages for downtime.
Human Factors of XR: Using Human Factors to Design XR Systems
2012.04.03 - Introduzione a Windows Azure - Public
1. Windows Azure Training Kit - January Refresh
http://www.microsoft.com/download/en/details.aspx?id=8396
Windows Azure SDK for .NET - November 2011
http://www.microsoft.com/download/en/details.aspx?id=28045
74. http://configure.euro.dell.com/dellstore/config.aspx?oc=svt110ii&c=it&
l=it&s=bsd&cs=itbsdt1&model_id=poweredge-t110-2&
Base PowerEdge T110 II Tower Chassis, Up to 4x 3.5" Cabled HDDs
Memoria 2GB Memory, DDR3, 1333MHz (1x2GB Single Ranked LV UDIMM)
Monitor Display Not Included
Mouse No Factory Installed Mouse
Dispositivi ottici 16X DVD-ROM Drive with SATA Cable
T110II EMEA1 Ship Docs No Power Cord
Documenti di spedizione
(English/French/German/Spanish/Russian/Hebrew)
Garanzia di base 1Yr Basic Warranty - Next Business Day - Minimum Warranty
Servizi di supporto 1Yr Basic Warranty - NBD Included - No Upgrade Selected
PE T110II Electronic System Documentation and OpenManage
Gestione dei sistemi
DVD
Removable HD Cartridge for RD1000, 320GB SATA (320GB
Supporti di backup
native/640GB compressed)
Informazioni sull'ordine PowerEdge Order - Italy
Servizi di manutenzione proattiva Declined Proactive Maintenance
Processore Intel Core i3-2100, 2C/4T, 3.10GHz, 3M Cache, 65W TDP
Cavo di alimentazione Italian Spare Power Cord 220V
Windows Server 2008 R2 SP1, Foundation Edition, English, No
Sistema operativo preinstallato
Media
Dell Proactive Systems Management - Declined -
Service – Reporting & Remote Management
www.dell.com/Proactive
Partizionamento disco rigido Microsoft Windows Server 40GB Partition Option
C3 - RAID1 with On-board SATA Controller, Requires Exactly 2
Configurazione dei dischi rigidi
SATA HDDs
Primo disco rigido (2) 250GB, SATA, 3.5-in, 7.2K RPM Hard Drive (Cabled)
Schede di rete Intel Gigabit ET Dual Port Server Adapter, Cu, PCIe-4
No Installation Service Selected (Contact Sales rep for more
Dell Services: Installations
details)
Schede di gestione server Embedded Baseboard Management Controller
75. Availability % Downtime per year Downtime per month* Downtime per week
55.5555555% ("nine fives") 162.22 days 13.33 days 74.67 hours
90% ("one nine") 36.5 days 72 hours 16.8 hours
95% 18.25 days 36 hours 8.4 hours
97% 10.96 days 21.6 hours 5.04 hours
98% 7.30 days 14.4 hours 3.36 hours
99% ("two nines") 3.65 days 7.20 hours 1.68 hours
99.5% 1.83 days 3.60 hours 50.4 minutes
99.8% 17.52 hours 86.23 minutes 20.16 minutes
99.9% ("three nines") 8.76 hours 43.2 minutes 10.1 minutes
99.95% 4.38 hours 21.56 minutes 5.04 minutes
99.99% ("four nines") 52.56 minutes 4.32 minutes 1.01 minutes
99.999% ("five nines") 5.26 minutes 25.9 seconds 6.05 seconds
99.9999% ("six nines") 31.5 seconds 2.59 seconds 0.605 seconds
76. Percentuale di tempo di Credito di servizio*
attività mensile
< 99,95% 10%
< 99% 25%
Speaking Points:There is a lot of talk in the industry about different terms like Platform as a Service, Infrastructure as a Service, and Software as a Service.Since PDC08 when we first announced the Windows Azure our focus has been on delivering a platform as a service offering where you can build applications. Where the platform abstracts you from the complexities of building and running applications. We fundamentally believe that the future path forward for development is by providing a platform. In fact, as you’ll see in a few minutes, we believe that there are a number of new capabilities that should be delivered as services to the platform.Notes:There is a lot of confusion in the industry when it comes to the cloud. It’s important that you understand both what is happening in the industry and how we think about the cloud. This is the most commonly used taxonomy for differentiating between types of cloud services.The industry has defined three categories of services:IaaS – a set of infrastructure level capabilities such as an operating system, network connectivity, etc. that are delivered as pay for use services and can be used to host applications. PaaS – higher level sets of functionality that are delivered as consumable services for developers who are building applications. PaaS is about abstracting developers from the underlying infrastructure to enable applications to quickly be composed. SaaS – applications that are delivered using a service delivery model where organizations can simply consume and use the application. Typically an organization would pay for the use of the application or the application could be monetized through ad revenue. It is important to note that these 3 types of services may exist independently of one another or combined with one another. SaaS offerings needn’t be developed upon PaaS offerings although solutions built on PaaS offerings are often delivered as SaaS. PaaS offerings also needn’t expose IaaS and there’s more to PaaS than just running platforms on IaaS. ----Slide Objectives:Explain the three established terms in the industry for cloud servicesSpeaking Points:With this in mind, it’s important to understand how to talk about our Cloud Services offerings.There is a lot of confusion in the industry when it comes to the cloud. It’s important that you understand both what is happening in the industry and how we think about the cloud. This is the most commonly used taxonomy for differentiating between types of cloud services.The industry has defined three categories of services:IaaS – a set of infrastructure level capabilities such as an operating system, network connectivity, etc. that are delivered as pay for use services and can be used to host applications. PaaS – higher level sets of functionality that are delivered as consumable services for developers who are building applications. PaaS is about abstracting developers from the underlying infrastructure to enable applications to quickly be composed. SaaS – applications that are delivered using a service delivery model where organizations can simply consume and use the application. Typically an organization would pay for the use of the application or the application could be monetized through ad revenue. It is important to note that these 3 types of services may exist independently of one another or combined with one another. SaaS offerings needn’t be developed upon PaaS offerings although solutions built on PaaS offerings are often delivered as SaaS. PaaS offerings also needn’t expose IaaS and there’s more to PaaS than just running platforms on IaaS.
Slide Objectives:Explain the differences and relationship between IaaS, PaaS, and SaaS in more detail.Speaking Points:Here’s another way to look at the cloud services taxonomy and how this taxonomy maps to the components in an IT infrastructure. Packaged SoftwareWith packaged software a customer would be responsible for managing the entire stack – ranging from the network connectivity to the applications. IaaSWith Infrastructure as a Service, the lower levels of the stack are managed by a vendor. Some of these components can be provided by traditional hosters – in fact most of them have moved to having a virtualized offering. Very few actually provide an OSThe customer is still responsible for managing the OS through the Applications. For the developer, an obvious benefit with IaaS is that it frees the developer from many concerns when provisioning physical or virtual machines. This was one of the earliest and primary use cases for Amazon Web Services Elastic Cloud Compute (EC2). Developers were able to readily provision virtual machines (AMIs) on EC2, develop and test solutions and, often, run the results ‘in production’. The only requirement was a credit card to pay for the services.PaaSWith Platform as a Service, everything from the network connectivity through the runtime is provided and managed by the platform vendor. The Windows Azure best fits in this category today. In fact because we don’t provide access to the underlying virtualization or operating system today, we’re often referred to as not providing IaaS.PaaS offerings further reduce the developer burden by additionally supporting the platform runtime and related application services. With PaaS, the developer can, almost immediately, begin creating the business logic for an application. Potentially, the increases in productivity are considerable and, because the hardware and operational aspects of the cloud platform are also managed by the cloud platform provider, applications can quickly be taken from an idea to reality very quickly.SaaSFinally, with SaaS, a vendor provides the application and abstracts you from all of the underlying components.
Slide ObjectiveUnderstand that Microsoft has a long history in running data centres and online applications. Bing, Live, Hotmail etc….Understand the huge amount of innovation going on at the data center levelSpeaking Points:Microsoft is one of the largest operators of datacenters in the worldYears of ExperienceLarge scale trustworthy environmentsDriving for cost and environmental efficientlyWindows Azure runs in 3 regions and 6 datacenters todayData center innovation is driving improved reliability and efficiencyPUE = Power Usage Effectiveness = Total Facility power/IT Systems Power = Indication of efficiency of DCUnder 1.8 is very good, modern cloud DCs approaching 1.2Multi-billion dollar datacenter investment700,000+ square foot Chicago and the 300,000+ square foot Dublin, Ireland data centersMicrosoft cloud services provide the reliability and security you expect for your business: 99.9% uptime SLA, 24/7 support. Microsoft understands the needs of businesses with respect to security, data privacy, compliance and risk management, and identity and access control. Microsoft datacenters are ISO 27001:2005 accredited, with SAS 70 Type I and Type II attestations.Notes:http://www.globalfoundationservices.com/http://blogs.msdn.com/the_power_of_software/archive/2008/06/20/microsoft-s-pue-experience-years-of-experience-reams-of-data.aspxhttp://blogs.msdn.com/the_power_of_software/archive/2008/06/27/part-2-why-is-energy-efficiency-important.aspx
Speaking Points:3 core services: Compute, Storage, DatabaseLet’s take a look at the platform starting with the core services.Compute:Scalable environment for running codeEnables .NET, C++, PHP, Ruby, Python, …Automated service managementStorage:Scalable and highly available cloud storageBlobs, Tables, Queues, DrivesREST APIs and several client librariesDatabase:SQL Relational DatabaseFamiliar programming model & tools--Speaking Points:I suspect most if not all of you in this room are familiar with the Windows Azure today.Today the platform consists of a set of foundational services SQL Azure relational databaseWindows Azure provides services that can be used by any apps – hosted in Windows Azure, on-premises, or hosted in another environment. Questions:How many of you are building applications for Windows Azure?How many are using SQL Azure?How many are using the Access Control service today? The Service Bus?Notes:Windows Azure StoryWe are building an open platform to run your applications in the cloud. Your apps are .NET, Java, PHP, etc. We love everyone.We are going to help you migrate your existing apps to the cloud. The cloud platform is the future. Enables scale, self-service, lowers friction, etc. We provide the best cloud platform for building new apps. (aka n-tier, web services, etc.)
Speaking Points:Building Block Services for developing connected applicationsYou could write code and build any of these services yourself…but you wouldn’t want to…Slide Objectives: Define and enumerate the Windows Azure ServicesSpeaking Points: Much in the same way that SQL Services is about extending SQL Server to the cloud, we are also extending key .NET capabilities to the cloud as services.We call this the Windows Azure Services. These services are really key components you would need for building distributed, connected applications. When we talk about connecting to your existing on-premises applications and enabling the composition of hybrid (Cloud + on-premises) applications – that is where these services really comes in.There are currently three services: Caching, Service Bus & the Access Control ServiceService Bus:The Service Bus is designed to provide a general purpose application bus, available on the internet at internet scale. You can really thin of the Service Bus as being similar to an Enterprise Service Bus that many enterprise organizations have today. However, we believe that when providing a Service Bus as a programmable service on the internet, there are a wider range of scenarios for many more types of organizations.Fundamentally, the .NET Service Bus is about connecting applications across network and application boundaries and making key message exchange patterns such as publish and subscribe messaging very simple.Access Control:The Access Control service is designed to provide rules-driven, claims-based access control for applications. Essentially, this allows you to define authorization rules for your applications using the claims-based approach that we are adopting within many Microsoft products and technologies and that is becoming adopted in the industry.Notes: Windows Azure has the .NET Framework built into it so thatyou can use those services within your application.But just like your application must be designed to scale out, the services that we have built into Windows over time in .NET also need to be designed and built in a way that can scale out naturally. We want to create services for you, and that's the purpose of these services, creating a pool of resources available to you to take advantage of and do things within your application very simply. So we're including a built-in, scale-out implementation of a service bus. The service bus lets you connect your on-premises systems securely into the cloud, into the Azure environment, while allowing your data and your information to traverse firewalls, solving a problem that is a bane of many application developments.
Slide ObjectiveUnderstand the role programming model in overviewSpeaker NotesA role is similar to a windows service. It gets started once deployed, and will get stopped when required.It could get stopped because we are re-deploying you to a different serverYou actioned the stop from the web-portalIt’s up to you to keep running and NEVER return from Start() unless you have been told to stop. Note: you do not need to handle the stop – you can simply “fail”Noteshttp://msdn.microsoft.com/en-us/library/ee848065.aspxhttp://blogs.msdn.com/b/jnak/archive/2010/02/11/windows-azure-roleentrypoint-method-call-order.aspxes
Slide ObjectiveUnderstand the lifecycle of a Windows Azure roleUnderstand the methods that can be overridden in RoleEntryPointUnderstand the events that are raised by role instances when their status is changingSpeaker NotesRoles will typically extend RoleEntryPointThe fabric calls RoleEntryPoint methods as it starts and stops a roleWaWorkerHost process is started.Worker Role assembly is loaded and surfed for a class that derives from RoleEntryPoint. This class is instantiated. RoleEntryPoint.OnStart() is called. RoleEntryPoint.Run() is called. If the RoleEntryPoint.Run() method exits, the RoleEntryPoint.OnStop() method is called . WaWorkerHost process is stopped. The role will recycle and startup again.As a role changes state it will raise the StatusCheck event.A status of Busy will mean the load balancer will not route requests to the instance.Notehttp://blogs.msdn.com/b/jnak/archive/2010/02/11/windows-azure-roleentrypoint-method-call-order.aspxhttp://msdn.microsoft.com/en-us/library/ee848065.aspx
Slide ObjectiveUnderstand the 3 common patterns of worker rolesSpeaker NotesPattern 1 – Polling Worker role polls a Queue Pops message Performs work Polls queue againPattern 2 Worker listens for inbound TCP requestCan implement with Raw TcpListeners or use WCF or use Hosted Web CorePattern 3 Run a 3rd party processWhen the role starts up or runs use a Process.Start() call to run a standard windows executable E.g. Running a database serverNoteshttp://blog.smarx.com/posts/build-your-own-web-role-running-hosted-web-core-in-windows-azurehttp://blog.smarx.com/posts/making-songs-swing-with-windows-azure-python-and-the-echo-nest-api
Slide ObjectiveUnderstand how a Web Role extends the standard worker roleSpeaker NotesA web role takes all the capabilities and semantics of a worker role and adds the IIS Hostable Web CoreWeb Roles run ASP.NET websites- they do this by using the IIS hostage web core. pretty much anything that will work in a standard IIS ASP.NET Web Site should work in Windows Azure. At MIX09, we additionally added support for IIS7’s FastCGI capability. As a note, any files that are part of a asp.net project on windows azure are READ ONLY! If you need to be able to change the contents of files:User Blob StorageIf its configuration, use the service model files – which can be changed at runtime.Inbound protocols are http(s) – outbound protocols are any TCP connection but NOT UDP.Noteshttp://msdn.microsoft.com/en-us/library/dd179341.aspxhttp://blogs.msdn.com/b/carlosag/archive/2008/04/14/hostyourownwebserverusingiis7.aspxhttp://blogs.iis.net/ksingla/archive/2007/12/20/ins-amp-outs-of-hostable-web-core.aspx
Slide ObjectiveIntroduce users to the tooling available to work with Windows AzureSpeaker NotesDeveloper SDK is a Cloud in a box, allowing you to develop and debug locally without requiring a connection to the cloud. You can do this without Visual Studio as there are command line tools for executing the “cloud in a box” and publishing to the cloud.There is also a separate download for the Visual Studio 2008 tools, which provide the VS debugging and templates. This in turn includes the SDKDownload the VS tools if you use VS. Download the raw SDK if you use alternative platforms (PHP etc…)Requirements for Win 7 or Win 2008 are a dependency on IIS7 for the development fabricCan install the bits with the Microsoft Web Platform InstallerNotesWindows Azure Tools for Microsoft Visual Studio includes:C# and VB Project creation support for creating a Windows Azure Cloud Service solution with multiple roles.Tools to add and remove roles from the Cloud Service.Tools to configure each Role.Integrated local development via the Development Fabric and Development Storage services.Running and Debugging a Cloud Service in the Development Fabric.Browsing cloud storage through the Server ExplorerBuilding and packaging of Cloud Service Packages.Deploying to the Windows Azure.Monitoring the state of your services through the Server Explorer.Debugging in the cloud by retrieving IntelliTrace logs through the Server Explorer.
Slide ObjectiveIntroduce the simple ASP.NET templates for Windows AzureSpeaking NotesVisual Studio Tools for Windows Azure include templatesWeb Forms and MVC preconfigured web rolesBoth VB.Net and C# supportedBasic Asp.NET web role is equivalent to a new Web project- i.e. very simple and bare bonesASP.NET MVC template includes significant amount of existing code including Account modelAccount and Home ViewsError pages and error handlingAccount and Home controllersEquivalent to creating a new MVC 2 Web Application (rather than an empty MVC site)Notes
Slide ObjectiveTo introduce the concept of local storageSpeaker NotesA local storage resource is a reserved directory in the file system of the virtual machine (VM) in which an instance of a role is running. Code running in the instance can write to the local storage resource when it needs to write to or read from to a file. For example, a local storage resource can be used as a temporary folder when manipulating data or generating documents.Local storage is never guaranteed as persistent; CleanOnRoleRecyle = false is useful to minimise need to rebuild cache for exampleFor guaranteed long term drive based storage- e.g. to hold database files. Use Windows Azure Storage DrivesNoteshttp://msdn.microsoft.com/en-us/library/ee758708.aspx
Slide ObjectiveTo show how to implement local storageSpeaker NotesTo declare a local storage resource within the service definition fileadd the LocalResources element as a child of a WebRole or WorkerRole elementthen add a LocalStorage element to represent the resource. The LocalStorage element takes three attributes: name, sizeInMB, and cleanOnRoleRecycle. The sizeInMB attribute specifies the desired size for this local storage resource. The cleanOnRoleRecycle attribute specifies whether the local storage resource should be wiped clean when a role instance is recycled, or whether it should be persisted across the role lifecycle; the default value is true.The Windows Azure Managed Library provides classes for accessing the local storage resource from within code running in a role instance. The RoleEnvironment.GetLocalResource method returns a reference to a named LocalResource object.Because the LocalResource object represents a directory, you can read from it and write to it using the standard .NET file I/O classes. To determine the path to the local storage resource's directory, use the LocalResource.RootPath propertyNoteshttp://msdn.microsoft.com/en-us/library/ee758708.aspx
Slide ObjectiveRecap on statelessnessReinforces nature of stateless servers in the context of web requestsSpeaking NotesWindows Azure uses load balancers that round robin requests to each instanceWhen running in Windows Azure with multiple instances there is no guarantee that subsequent requests will hit the same instanceSome things to remember hereSubsequent requests may not always be obviouse.g. Think of an ASP.NET page that includes an image url that is served by an HTTP HandlerCan’t assume that the image will be loaded form the same instances that served the original ASP.NET pageWhich leads on to talking about AJAX…Notes
Slide ObjectiveReinforce the need to think about statelessness when working with AJAXSpeaking NotesAJAX requests (e.g. JQuery calls to the server) may not go back to the instance that originally served the pageCan’t leave ‘nuggets’ of state inside a web role with the intention of fetching it via APAX laterCan push the state back into storageEither store it up direct out of storage (e.g. grab an XML block using a Shared Access Signature)May be better to use a Data Island in the original document in this case thoughPush it into storage and re-fetch in web role when AJAX call arrivesASP.NET Ajax requires a common machine key in web farm environments. Windows Azure is pre-configured for this- all the instances in a role will have the exact same machine keyCan modify the machine key if you need to from codeThere is NO support for sticky sessions. Noteshttp://wiki.asp.net/page.aspx/1248/aspnet-and-load-balancing/ Changing machine key in codehttp://social.msdn.microsoft.com/Forums/en-US/windowsazure/thread/a6f00720-3aad-40c8-ac31-c585bc0c3b67
Slide ObjectiveExplains the operation of Session state in Windows Azure multi instance rolesSpeaking NotesMust move session state off the Web Role instances In this animationFirst request hits one instanceSubsequent request hits another instanceAt the end of the animation the value of Foo is hard to determine.Is it 1, 2 or null?Will depend on which server the LB routes our request toNotes
Slide ObjectiveExplains the implementation of Session state in Windows Azure multi instance rolesSpeaking NotesMust move session state off the Web Role instances Move it into storage of some sortWindows Azure caching is the obvious choiceDistributed, in-memory caching running in Windows AzureSQL Azure and Windows Azure storage are are additional examplesWhich is best will depend on the nature of the application load (due to the transaction charge for Windows Azure Storage)SQL Server.Will need to implement your own session cleanup code for SQL Azure which means you will probably need a custom session state providerThe Windows Azure Storage Provider is SAMPLE CODE ONLY. It should not be relied on for production apps without significant modificationAnother option is to push the state to the client.Could potentially write a custom session state provider that always persists the state to a cookieThis WILL have performance impactCould also use a custom or 3rd party distributed cache to store session state in a shared everything (fully replicated) configuration (e.g. memcached)Notes3rd party Sql Azure session state providerhttp://azuresqlsession.codeplex.com/wikipage?title=Home&ProjectName=azuresqlsessionCookie size performance impacthttp://www.yuiblog.com/blog/2007/03/01/performance-research-part-3/ http://blogs.msdn.com/b/eugeniop/archive/2010/06/05/windows-azure-architecture-guide-part-2-managing-sessions.aspx
Slide ObjectiveExplains the use of SQL Azure as a backing storeSpeaking NotesThe Out of the Box SQL ServerASP.NET Session State mechanism is not suitable for AzureRelies on SQL Server Agent which is not available in SQL AzureWill need to implement a custom session state providerStore and retrieve stateCleanupWill probably want to use some sort of partitioning mechanism. Partitioning is a feature in the ASP.NET provider interfaces… so just need to implement the mechanism to reolsve the partitionFor more on partitioning see the day 2 storage strategies sessionSQL Azure is cost competitiveParticularly in high and consistent load scenariosSQL Azure does not have the storage transaction charge SQL Session state generally only requires a small amount of storageScale out across 1GB SQL Azure databasesNotes3rd party Sql Azure session state providerhttp://azuresqlsession.codeplex.com/wikipage?title=Home&ProjectName=azuresqlsession
Slide ObjectiveProvides a pointer to and discussion of the Windows Azure Storage providersSpeaking NotesWindows Azure storage also makes an ideal location for session stateThe sample providers available on MSDN should be treated as a starting point onlyNotes
This should be a recap as this session will dig deeper into the services.
Slide ObjectiveUnderstand why we need to partitionUnderstand the cloud specific driversSpeaking notesPartitioning is hardly a new topicDBAs have been partitioning databases for a long long timeTwo main reasons to partition Data volume.There are just too many bytes to fit.For example SQL Azure has a maximum DB size of 50GB. If you have more data than that then you’ll need to partitionWork loadEach partition can only handle so many transactions per secondIn Windows Azure tables for example partitioning is used to spread the request load over nodes in the storage systemThere are some new cloud focussed reasons tooCostDifferent types of storage have different costsArguably we’ve been doing cost driven partitioning on premise for some time too- for example partitioning a table across both expensive 15k RPM drives and cheaper 7200 RPM drivesIn the cloud the cost difference can be far more pronouncedThe cloud also provides a concept of elastic partitioningWhereas on premise a partition is often a separate server or separate disks with the related capital cost and lead timeA partition in the cloud can be created and destroyed in a matter of secondsThis presents the opportunity to create partitions just for a short period of time- say a period of peak loadNotes
Slide ObjectiveGet a graphical overview of horizontal partitioningSpeaking notesHorizontal partitioning involves taking horizontal slices through a data setEach slice is placed onto a separate nodeThe schema on each node is the sameThis example is partitioning by the first letter of the last nameWorth asking attendees if this is a good approach… It should spark some discussion and allude to some topics to come in the deckNotes
Slide ObjectiveProvide more detail on partitioningSpeaking notesHorizontal partitioning involves taking horizontal slices through a data setEach slice is placed onto a separate nodeThe schema on each node is the sameHorizontal partitioning allows us to achieve massive scale outQueries within a partition are simpleQueries across partitions are hardIn most cases transactions cannot span partitionsIn big systems a cross partition query may have to touch 100’s or even 100’s of machinesDoes it do it in series? Parallel?Can you ever actually get an authoritative result? Think of count(*) across 1000 partitionsYou don’t want to hold locks across partitions as it’ll kill scalabilityNotesSQL Azure Horizontal partitioninghttp://blogs.msdn.com/b/sqlazure/archive/2010/06/24/10029719.aspx
Slide ObjectiveGet a graphical overview of vertical partitioningSpeaking notesVertical partitioning involves taking vertical slices through a data setEach slice is placed onto a separate nodeThe schema on each node is differentNodes will typically be quite different in character and costThis example is partitioning indexed data onto SQL Azure and the larger binary parts of the data set into cheaper Windows Azure storageNotes
Slide ObjectiveProvide more detail on vertical partitioningSpeaking notesVertical partitioning involves taking vertical slices through a data setEach slice is placed onto a separate nodeThe schema on each node is differentNodes will typically be quite different in character and costBecause we need to query more than one partition it will always take more than one query to return a single row.NotesSQL Azure Vertical Partitioninghttp://blogs.msdn.com/b/sqlazure/archive/2010/05/17/10014011.aspx
Slide ObjectiveGet a graphical overview of hybrid partitioningSpeaking notesHybrid partitioning combines both vertical and horizontally partitioningIN this example the large data is first partitioned off into Windows Azure StorageThen the data remaining in SQL Azure is horizontally partitionedNotes
Slide ObjectivesUnderstand each of the storage types at a high levelSpeaker NotesThe Windows Azure storage services provide storage for binary and text data, messages, and structured data in Windows Azure. The storage services include:The Blob service, for storing binary and text dataThe Queue service, for storing messages that may be accessed by a clientThe Table service, for structured storage for non-relational dataWindows Azure drives, for mounting an NTFS volume accessible to code running in your Windows Azure serviceProgrammatic access to the Blob, Queue, and Table services is available via the Windows Azure Managed Library and the Windows Azure storage services REST APINoteshttp://blogs.msdn.com/b/windowsazurestorage/archive/2010/03/28/windows-azure-storage-resources.aspx
Slide Objectives:Provide overview and detail on pricingDiscuss localization of pricingSpeaking Points:Windows Azure is charged per compute hour.Pricing is localized for global marketsDifferent VM sizes have a different number of CPUs and therefore are a multiple the single CPU rateCompute time, measured in service hours: Windows Azure compute hours are charged only for when your application is deployed.remove the compute instances that are not being used to minimize compute hour billing. Partial compute hours are billed as full hours.Storage, measured in GB: Storage is metered in units of average daily amount of data stored (in GB) over a monthly period. Data transfers measured in GB (transmissions to and from the Windows Azure datacenter).Data transfers within a sub region are free. Transactions, measured as application requests to the REST serviceSQL Azure is priced on a per database per month basisService Bus is based on a per connection modelAccess control is based on a per transaction modelService Bus connections can be provisioned individually on a “pay-as-you-go” basis or in a pack of 5, 25, 100 or 500 connections. For individually provisioned connections, you will be charged based on the maximum number of connections you use for each day. For connection packs, you will be charged daily for a pro rata amount of the connections in that pack (i.e., the number of connections in the pack divided by the number of days in the month). You can only update the connections you provision as a pack once every seven days. You can modify the number of connections you provision individually at any time.For Access Control transactions, customers will be charged the actual number of transactions utilized for the billing period (i.e., not in discrete blocks of 100,000 transactions), plus data transfers in or out.Notes:http://www.microsoft.com/windowsazure/pricing/
Slide Objectives:Explain that there are different VM instance sizes available within Windows AzureSpeaking Points:---Speaking Points:One of the key areas of feedback has been to reduce the cost and size of Windows Azure instances. At PDC we will announce..Notes:(*) 20GB with a limitation on VHD size if they are deploying VMRole on XSmall: the VHD can only be up to 15GB.each tenant can support 20 instances just like regular subscriptions with Small VM. We do not scale based on core counts.There is no SLA on the network bandwidth for each VM size as this resource is shared among all the VM. That said, we need to provide guidance for customer so they could design their applications correctly. From the engineering side, this is what we mean by Low, Moderate and High. • Low currently means 0-15Mbps with short burst up to 25-50Mbps (Megabit/s). These are sufficient for some web sites with low traffic. • Moderate means 0-100Mbps with short burst up to 200Mbps (100Mbps is the norm). This is what we currently reserve for the Small VM.• High means 200-800 Mbps. If you divide this into 3 spectrums for Medium, Large and XL. Then Medium is in the low end, Large hovers around the middle zone and of course XL takes the high-end spot.These rates should be used as guidance. Nothing can beat a test run to see what the application requires but using these bandwidth ranges, hopefully it reduces the guess work for the customers