Windows azure camp


Published on

Presenting Windows Azure for the Community by the Community. An entire 1 day event in Kolkata to learn the basics of Windows Azure and cloud computing

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Windows azure camp

  1. 1. Kolkata – 10th April - 2011<br />Windows Azure Camp<br />
  2. 2. Agenda<br />Introducing Cloud<br />Introducing windows Azure <br />Different Components of Windows Azure<br />Using Azure in Development Environment<br />Hosting your Application to Cloud<br />Cloud Storage - Windows Azure storage Services<br />Introducing SQL Azure<br />Building Application Using SQL Azure<br />Introducing Windows Azure App Fabric<br />
  3. 3. Introducing Cloud<br />
  4. 4. Why Cloud Computing ?<br />A Quick Look Back<br />Buy Own Servers<br />Maintenance<br />Own Resource<br />
  5. 5. Why Cloud Computing ?<br />Why not take a Hosted Server ?<br />Using Service Provider <br />Reduced Maintenance Cost<br />Traffic Increased <br />Own Resource<br />
  6. 6. Why Cloud Computing ?<br />Let’s Move into Cloud<br />A set of connected servers which are managed in a data Centers<br />On which developers can:<br />Install Services<br />Run services<br />Store and retrieve data<br />What Does Cloud Provides ?<br />Infrastructure as a Service (IaaS)<br />Platform as a Service (PaaS)<br />Software as a Service (SaaS)<br />
  7. 7. Cloud Power<br />Applications<br />8<br />Available 24 x 7<br />7<br />Pay as Per Use<br />6<br />Automatic Upgrade H/W<br />Reliability<br />Availability<br />Scalability<br />5<br />Apply OS patches and Configuration<br />Diagnose service failures and recover<br />4<br />3<br />Automatic Storage Capacity Upgrade<br />2<br />Handle increase in traffic Automatically<br />1<br />Recover from hardware failures<br />Cloud Data Center<br />
  8. 8. Scalability<br />
  9. 9. Introducing Windows Azure<br />
  10. 10. Video<br />What is Windows Azure ?<br />
  11. 11. Cloud OS<br />An operating system that can controls a set of connected servers and Span over the internet <br />Self collaboration<br />Abstract execution environment<br />Hosting Environments<br />Shared file system<br />Resource and storage allocation<br />Programming environments<br />Providing security on demand<br />Utility computing<br />24/7 operation<br />Pay for what you use<br />Auto Upgradable<br />Simpler, transparent, configurable administration<br />
  12. 12. What Is Windows Azure ?<br />It is an operating system for the cloud<br />Mainly Focusing on utility computing<br />Main Components<br />Service management and Monitoring<br />Compute<br />Storage<br />Developer experience<br />
  13. 13. Relating Desktop With Azure<br />5<br />Local data stores<br />5<br />Cloud Storage<br />4<br />Library / Services<br />4<br />Web Role and Worker Role<br />3<br />Manifest<br />3<br />Service definition<br />2<br />Application Configuration<br />2<br />Service Configuration<br />1<br />EXE<br />1<br />Service package<br />Desktop<br />Windows Azure<br />
  14. 14. Windows Azure Continue...<br />Internet<br />
  15. 15. Windows Azure Platform<br />Azure™ Services Platform<br />
  16. 16. Using Windows Azure Service Platform<br />
  17. 17. Different Components Of Window Azure<br />
  18. 18. Components Of Windows Azure<br />Storage<br />Compute<br />Fabric<br />
  19. 19. Windows Azure Compute<br />
  20. 20. Compute<br />A Windows Azure compute service is built from one or more roles. <br />In Windows Azure, a service may run one or more instances of each role type. A service could also be composed of one of more instances of multiple role types. <br />Windows Azure supports the following three types of roles:<br />Web role is customized for web application programming and supported by IIS 7.<br />Worker role is used for generalized development, and may perform background processing for a web role.<br />Virtual Machine (VM) role runs an image (a VHD) of a Windows Server 2008 R2 virtual machine. This VHD is created using an on-premises Windows Server machine, then uploaded to Windows Azure. <br />
  21. 21. Web Role and Worker Role<br />Public Internet<br />Web farm that handles request from the internet<br />IIS7 hosted web core<br />Hosts ASP.NET<br />XML based configuration of IIS7 <br />Integrated managed pipeline<br />Supports SSL<br />Web Role<br />Web Role<br />Web Role<br />Load<br /> Balancer<br />Storage Services<br />
  22. 22. Worker Role<br />No inbound network connections<br />Can read requests from queue in storage <br />Public Internet<br />Worker Role<br />Worker Role<br />Worker Role<br />Worker Role<br />Storage Service<br />
  23. 23. Web Role and Worker Role<br />Public Internet<br />Web Role<br />Worker Role<br />Web Role<br />Worker Role<br />Load<br /> Balancer<br />Storage Services<br />
  24. 24. VM Role<br />
  25. 25. Demo<br />Cloud on Desktop<br />Getting Touch with Web and Worker Roles<br />
  26. 26. Demo<br />Hosting your first ASP.NET Application On Windows Azure<br />
  27. 27. Windows Azure Storage<br />
  28. 28. Azure Storage<br />Need persistent and durable storage in the cloud? <br />Windows Azure is a perfect fit. Windows Azure gives you four core storage services that are secure, scalable and easy to access.<br />Binary Large Object Service(Blobs) <br />Table Service ( Tables)<br />Queue Service ( Queues)<br />Windows Azure Drive<br />Queue<br />Tables<br />Blobs<br />
  29. 29. Azure Storage - BLOBS<br />Blobs are one of the most credible feature with Azure<br />Provide a simple interface for storing named files along with metadata for the file<br />It’s very much reliable with Large size of file<br />Main Concept : Account, Container, Blob , Block <br />
  30. 30. Azure Storage – BLOBS – Key Concepts<br />Blob<br />Container<br />Account<br />Block<br />IMG001.JPG<br />Pictures<br />IMG002.JPG<br />Account<br />Block A<br />Movies<br />MOV1.AVI<br />Block B<br />Block C<br />
  31. 31. Azure Storage – BLOBS – How it works ?<br />Movie.avi<br />Movie.avi<br />Movie.avi<br />Identify the file to be uploaded (Movie.avi).<br />Identify / split the blocks for the file.<br />Upload every block in any order you want to.<br />Commit the block to a blob.<br />Block 1<br />Block 2<br />Block 3<br />Block 4<br />Block 5<br />
  32. 32. Azure Storage – BLOBS – Must Know<br />Key Points <br />Files has to split to have blocks when it crosses 64 MB. <br />Every block can be a maximum of 4 MB size. <br />The maximum size of the blob / file can be 200 GB or 50,000 blocks. <br />The blocks uploaded is not committed unless the final API call "PutBlockList" is called. <br />Block blobs though offer a very good and effective way of working with bigger files, it lacks on certain places.<br />The maximum size of the file can be no larger than 200GB. <br />It needs at least two API calls to write a blob when uploaded as blocks. [PutBlockto upload a block with block id and PutBlockListto commit all the changes]. <br />Any uploading cannot be committed immediately unless the final call "PutBlockList" is made. <br />Reading a byte range other than the block split cannot be done. <br />
  33. 33. Azure Storage – Page BLOBS<br />The maximum size of a page blob file would be 1 TB. <br />The least page size is 512 bytes and can accommodate any data in multiples of 512 bytes up to 4 MB into a page. <br />As soon as a data is uploaded, it is written into the cloud / disk. <br />All the data / pages inside the page blobs are indexed to allow faster read / write. <br />Windows Azure Drive (TBD) is supported. <br />A page can be considered as a individual file and read / write operation can be performed on it. <br />
  34. 34. Azure Storage - Tables<br />provide structured storage. A table is a set of entities, which contain a set of properties<br />There is no limitation on the number of table / collection and rows. <br />Every entities can have up to 255 properties. <br />Every entity should have a property defining the row key "RowKey" and partition key "PartitionKey". Row key is the unique identifier of the row and partition key is generally any property which would be better for maintaining partition. (e.g., DepartmentId in an entity of Employee). <br />The limitation of not being an RDBMS is easily and effectively overcome by the support of LINQ on the tables. A LINQ query can therefore be written and executed against the tables. <br />Every table is mirrored thrice in Azure and the reliability and availability is maintained automatically. <br />Every table has a partition key<br />It is the first property (column) of your table<br />All entities in a table with the same partition key value live in the same partition <br />Need to choose partitioning scheme to make data access scalable <br />
  35. 35. Azure Storage – Tables – Key Concepts<br />Entity<br />Table<br />Account<br />Name=…hash=…<br />Users<br />Name=…hash=…<br />Account<br />Tag=…id=…<br />PhotoIndex<br />Tag=…,id=…<br />
  36. 36. Azure Storage - Queue<br />provide reliable storage and delivery of messages for an application<br />Key Concept : Account, Storage, Message<br />A message in queue has a limitation of 8 KB in size. <br />A Queue has no limitation on the number of messages it can contain.<br /> Messages cannot choose their destinations individually but they follow the path or receiver of the queue. <br />Message when consumed by acquiring token which expires by time i.e., once a message is got it will be locked / hidden from any other process unless the time expires or the message is deleted; if the time expires, the message will be marked as new and will be provided to the next consumer waiting.<br /> A detailed process is explained in the animation shown below. Messages can be even got without a time expiry and immediately marked as processed. <br />
  37. 37. Azure Storage – QUEUES– Key Concepts<br />Message<br />Queue<br />Account<br />http://…<br />Jobs 1<br />http://…<br />Account<br />http://…<br /> Jobs 2<br />http://…<br />
  38. 38. Azure Storage –QUEUS– How it works ?<br />Queue<br />Msg 1<br />Msg 3<br />Msg 2<br />Msg 1<br />Msg 2<br />Msg 3<br />Process 2<br />Process1<br />Source Application<br />Msg 1<br />Msg 2<br />Msg 3<br />
  39. 39. Azure Storage – TBD<br />
  40. 40. Demo<br />Azure Storage with Development Fabric<br />
  41. 41. Demo<br />Using Azure Storage on Cloud<br />
  42. 42. Windows Azure In a real Business Scenarios<br />
  43. 43. Parallel Processing<br />Web Role<br />Worker Role Instance<br />Queue<br />
  44. 44. Demo<br />Windows Azure In a real Business Scenarios<br />
  45. 45. Windows Azure Fabric<br />
  46. 46. Azure Fabric – Manage & Monitor<br />
  47. 47. Demo<br />Windows Azure Fabric <br />
  48. 48. Introducing SQL Azure<br />
  49. 49. Video<br />What is SQL Azure ?<br />
  50. 50. Introducing SQL Azure<br />Robust Relational Database on the Cloud Hosted on Microsoft Data Center.<br />Database as a Service ( DaaS)<br />Accessible via both Local and Cloud Based Application<br />Installed into different nodes of Microsoft Data Center. So There is no need of Install, manage<br />SQL Server on Cloud<br />High availability <br />Easy Data Sync and Local SQL Server Migration<br />Cloud Apps<br />Local Apps<br />
  51. 51. Demo<br />Using SQL Azure Portal<br />
  52. 52. Demo<br />SQL Azure and SQL Server Management Studio<br />
  53. 53. Demo<br />SQL Azure – WCF – Windows Phone 7<br />
  54. 54. Reference and Resource<br /><br />Introducing Windows Azure By David Chappell<br /><br /><br />
  55. 55. Q / A<br />
  56. 56. Thank You !!<br />Abhijit Jana<br /><br />@AbhijitJana<br /><br />Abhishek Sur<br /><br />@Abhi2434<br /><br />