Data In Cloud


Published on

Published in: Technology, Business
  • 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
  • A very good afternoon Everyone,Its super cool to be here today amidst you & I’m indeed excited for this upcoming session.Well I hope this session, though on the last day of teched & post lunch, will keep you all on your toes and be excited on this as it does for me. Today in the morning, we saw some really interesting sessions – we saw basically an introduction to cloud computing, what is cloud, what is microsoft’s offering in this space. So moving on, on the cloud track, as the title reads we will look at the Data in the cloud
  • So with this, lets start with the very basic and standard slide of Microsoft’s cloud computing stack – Azure Service Platform!As you may recall, (well how many of you attended the previous session? )That we got introduced to this layer cake of services offered in the cloud. We were also able to map the fact that the bottommost layer, Windows Azure, provide operating system capabilities as services (u give foo.exe for it to execute, it figures out how , where to get this job done). Well we saw in detail about the compute capabilities of this operating system designed to run on many many servers(pulling out, pulling down Virtual machines, load balancing, resource allocating, etc). At this same layer, for an Operating system, just as Compute is a key task, storage is another fundamental need!So we have data storage as a service as a part of Windows AzureMoving up, the next layer is the Azure Services Platform layer, this layer we were told provided building block services to take away all the extra plumping, reinventing the wheel during scale etc etc… basically analogy to the Software frameworks that sit over your desktop OS, like SQL Server (manegement studio, Database), like .net framework (providing lot od libraries for identity services), like Sharepoint, CRM etc… these provide developer tools and ease of use!Here, we see a brightly painted “SQL Services” which by now you would have guess it as “Database on the cloud”
  • Importance of data: data is king. Someone once told me that data is like Air, its under covers, can go unnoticed by the numberof cool apps and technology, but it’s the heartbeat and fundamental and existent for all , each and every enterprise, ISV, vendor etc etc…2. What is this session about ? It’s a focus on persistent storage in the cloud! The cloud offering or the logical cloud computing stack can never be complete without addressing data issues. a) What do I mean by that ? Just as for every single enterprise, ISV, an developer, rather every application – a data store is mandatory and usually they have enrich capabilities bundled in the Data management studio like SQL server and its fairly a breeze to query, write sp, triggers and work on the data layer directly with the Database!So I guess, we have enough metaphors and similis! to highlight, re-emphasize the power , need importance of Data3.So net net this session will talk about storing your Data on the cloud! What are formats available – by this I mean (we are so used to RDBMS – relational data storage in rows and columns, or like in an operating system we have C:\\, D:\\ flat data storage, how else do u think data can be stored ? How about keep a bag of 100 boxes, each box has x, y , z number of items! I call this an entity store… how can I represent this data? Well we have all done number of theoretical data structures courses, which give to n, n+1 , user definied data structure or ADT (what we call abstract data types in terms of stacks, queues, hashes etc etc)… will we need this kind of storage on the cloud ?4. Highlighting the essence of Today’s talk : Offloading data outside your premise. Today, it’s a norm to have a gmail, hotmail personal id with all ur photos, emails, digital footprints on the web, and frankly we don’t feel like it a privacy breech, its kind of become the norm. Extending this, eventually in the best interest in distributed computation , access across the globe with least latency, costs involved, technology world is moving towards hardware consolidation, this will directly translates into having capabilities to have your data offloaded to a trusted datastore, have SLA, backup hazzle free, upgrades, and finally tools and developer framework for accessing, and working with the data.
  • Hence, in the next 60 mins, we will go through these two data storage concepts, see how different they are and what is the variety they have to offer.
  • If you would like to host your demo on the Virtual Server, please use the myVPC demo slide, not this slide.
  • If you would like to host your demo on the Virtual Server, please use the myVPC demo slide, not this slide.
  • If you would like to host your demo on the Virtual Server, please use the myVPC demo slide, not this slide.
  • If you would like to host your demo on the Virtual Server, please use the myVPC demo slide, not this slide.
  • Why sds,When,Scenario? Value propOn prem – sds advantagesSecurity of data ?How secure at store, on wire?Sds compromised (sla)Can I connect ipsec, ssl, (live id)Access restrictions – Ease of migration from on premise to cloud ?
  • Data In Cloud

    1. 1. Saranya Sriram Developer Evangelist Microsoft Corporation India
    2. 2. Microsoft’s Cloud – ReCap Azure Services Platform ™
    3. 3. Agenda Data is King Motivation ? Why data outside your premise? Microsoft’s Data Storage offerings Windows Azure SQL Services Programming & Coding for data on cloud OS What we will not learn? Deep Dive into SQL Services Any SQL Services 2008 specifics Architectural considerations to model data in real life
    4. 4. Today’s discussion – next 60 minutes Windows Azure Storage SQL Data Services
    5. 5. HTTP Blobs Tables Queues Windows Azure Storage Application Service Compute Storage Fabric …
    6. 6. Windows Azure Storage Storage that is Durable Scalable (capacity and throughput) Highly Available Security Performance Efficient Pay for what you use Rich Data Abstractions Service communication: queues, locks, … Large user data items: blobs, blocks, … Service state: tables, caches, … Simple and Familiar Programming Interfaces REST Accessible and ADO.NET
    7. 7. Windows Azure Storage Account User creates a globally unique storage account Received a 256 bit secret key when creating account Geo-location & Co-location coming soon Provides security for accessing the store Use secret key to create HMACSHA256 signature for each request Use signature to authenticate request at server Account Blob Table Queue
    8. 8. Blobs Storage • Storage Account • An account can have many Containers • Container • A container is a set of blobs • Sharing policies are set at the container level • Public READ or Private • Associate Metadata with Container • Metadata is <name, value> pairs Account Container Blob • Up to 8KB per container IMG001.JPG • List the blobs in a container pictures IMG002.JPG sally movies MOV1.AVI
    9. 9. Slide Share for Tech Ed India 2009 - Basic
    10. 10. Table Storage Table A storage account can create many tables Table name is scoped by account Data is stored in tables A table is a set of entities (rows) An entity is a set of properties (columns) Entity Two “key” properties that together Account Table Entity are the unique ID of the entity in the table users PartitionKey – enables scalability RowKey – uniquely identifies the sally entity within the partition photo index
    11. 11. Windows Azure Storage A closer look at tables Table Table Table ... Entity Entity Entity ... Storage Property Property Property Accounts Name Type Value
    12. 12. Tables - Capabilities What tables don’t do What tables can do  Not relational  Cheap  No Referential Integrity  Very Scalable  If these No Joins are important  Flexible  to you, use:Queries Limited  Durable  No Group by What tables contain  No Aggregations Partition key & Row key  No Transactions Timestamp 255 properties for your data & data  No Transactions of size 1MB
    13. 13. Query a Table LINQ DataServiceContext context = new DataServiceContext(‚‛); var customers = from o in context.CreateQuery<Customer>(‚Customer‛) where o.PartitionKey == ‚Lee‛ select o; foreach (Customer customer in customers) { } GET $filter= PartitionKey eq ‘Lee’
    14. 14. Slide Share for Tech Ed India 2009 - Revisited
    15. 15. Queue Storage An account can create many queues Queue Name is scoped by the account A Queue contains messages No limit on number of messages stored in a queue A message is stored for at most a week in a queue http://<Account><QueueName> Messages Message size <= 8 KB To store larger data, store data in blob/entity storage, and the blob/entity name in the message
    16. 16. Dequeue and Delete Messages Producers Consumers P2 C1 1. Dequeue(Q, 30 sec)  msg 1 4 3 2 1 C2 P1 2. Dequeue(Q, 30 sec)  msg 2
    17. 17. Dequeue and Delete Messages Producers Consumers P2 1 C1 1. Dequeue(Q, 30 sec)  msg 1 5. C1 crashed 6. msg1 visible 30 seconds after Dequeue 4 3 2 1 2 C2 P1 2. Dequeue(Q, 30 sec)  msg 2 3. C2 consumed msg 2 4. Delete(Q, msg 2) 7. Dequeue(Q, 30 sec)  msg 1
    18. 18. Slide Share for Tech Ed India 2009 - Revisited
    19. 19. Windows Azure Data Storage Concepts Container Blobs http://<account><container> Account Table Entities http://<account><table> Queue Messages http://<account><queue>
    20. 20. Slide Share for Tech Ed India 2009 - Upload onto the Azure Storage & take REST
    21. 21. Takeaways Enables developers to access storage Massively scalable, durable, and available Anywhere at anytime access Automatically scale to meet peek traffic demands Only pay for what the service uses Easy to use REST and .NET Interfaces Blobs, tables, and queues
    22. 22. SQL Data Services Others (Future) .NET Services Applications SQL Services Live Services SQL Services Windows Azure Applications Windows Windows Windows Others Server Vista/XP Mobile
    23. 23. Data Platform: Device to Cloud RDBMS Protection Mining Sync Reporting Caching Load Service Analysis Query Integration Search Backup Model & policy based development and management Type In Multi Relational XML File Memory Dim BLOB Place
    24. 24. Extending SQL Data Platform to Cloud Business Reference Reporting Intelligence Data Symmetric Programming Model Data Hub Aggregation Initial services – core RDBMS capabilities as a service (SDS), Data Sync and Data Hub Future Offerings Additional data platform capabilities as a service: BI/DSS, DW New services: Reference Data, Secure Data Hub Enable new uses of data to deliver differentiated business value
    25. 25. The New SQL Data Services Familiar SQL Server relational model Uses existing APIs & tools Built for the Cloud with availability and scale Accessible to all from PHP, Ruby, and Java Focus on combining the best features of SQL Server running at scale with low friction
    26. 26. Accessing SDS User Database connStringBuilder.InitialCatalog = quot;mydatabasequot;; // Specify your user database to connect Master/Server Database connStringBuilder.DataSource = quot;“; // Specify the DNS name of my SDS server master db) connStringBuilder.UserID = quot;jeff@myserverquot;; // Specify my user id
    27. 27. SQL Client ( code snippet Just change the connection string values: static void Main(string[] args) { SqlConnectionStringBuilder connStringBuilder = new SqlConnectionStringBuilder(); connStringBuilder.DataSource = quot; connStringBuilder.InitialCatalog = quot;mydatabasequot;; connStringBuilder.Encrypt = true; connStringBuilder.TrustServerCertificate = true; connStringBuilder.UserID = quot;jeff@myserverquot;; connStringBuilder.Password = quot;****quot;; string createTableSql = @quot;CREATE TABLE [dbo].[tbl_Person] ( [FirstName] NVARCHAR(64) NOT NULL, [LastName] NVARCHAR(64) NOT NULL CONSTRAINT [personName_PK] PRIMARY KEY CLUSTERED ( [FirstName] ASC, [LastName] ASC ) )quot;; using (SqlConnection conn = new SqlConnection(connStringBuilder.ToString())) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = createTableSql; cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); conn.Close(); } } }
    28. 28. Example of SQL Compatibility In Scope for v1 (likely) Out of Scope for v1 (likely) Tables, indexes and views Distributed Transactions Stored Procedures Distributed Query Triggers CLR Constraints Service Broker Table variables, Spatial session temp tables (#t) Physical server or catalog … DDL and views
    29. 29. Takeaways Foundation of the SDS relational platform Built using core SQL Server product codebase Delivery of rich relational database service – PDC ’09 Key capability of the Azure platform Supports broad spectrum of scenarios
    30. 30. Azure Services Platform Roadmap First CTP Updated CTPs Pricing and SLA Commercial Developer CTP for Enable Full trust & Fast CGI confirmation Availability Services SDKs, and Tools Geo-location support SDS Public CTP Windows Azure .NET Services Open CTP .NET Services Live Framework Open CTP SQL Services SDS Invitation-only CTP Fall 2008 Spring 2009 Summer 2009 Fall 2009
    31. 31. Getting Started & Resources 1. Download the SDKs and tools from 2. Get invitation for Windows Azure and start coding 3. Review the hands-on labs and videos available on the site 3. SSDS blog: 4. Azure Services Training Kit Downloadable hands-on labs, demos, and presentations 5. Check Mix09 and PDC 08 sessions
    32. 32. Related Content Breakout Sessions (session codes and titles) 1. Cloud Track – Introduction to cloud computing and Windows Azure 2. Cloud Track – .NET services 3. Cloud Track - Code Camp
    33. 33. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.