Your SlideShare is downloading. ×
Data In Cloud
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

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

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

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 ?
  • Transcript

    • 1. Saranya Sriram Developer Evangelist Microsoft Corporation India
    • 2. Microsoft’s Cloud – ReCap Azure Services Platform ™
    • 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. Today’s discussion – next 60 minutes Windows Azure Storage SQL Data Services
    • 5. HTTP Blobs Tables Queues Windows Azure Storage Application Service Compute Storage Fabric …
    • 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. 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. 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. Slide Share for Tech Ed India 2009 - Basic
    • 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. Windows Azure Storage A closer look at tables Table Table Table ... Entity Entity Entity ... Storage Property Property Property Accounts Name Type Value
    • 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. 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. Slide Share for Tech Ed India 2009 - Revisited
    • 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. 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. 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. Slide Share for Tech Ed India 2009 - Revisited
    • 19. Windows Azure Data Storage Concepts Container Blobs http://<account><container> Account Table Entities http://<account><table> Queue Messages http://<account><queue>
    • 20. Slide Share for Tech Ed India 2009 - Upload onto the Azure Storage & take REST
    • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. © 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.