Windows Azure storage(WAS)

Slides:



Advertisements
Similar presentations
Data Management in the Cloud Paul Szerlip. The rise of data Think about this o For the past two decades, the largest generator of data was humans -- now.
Advertisements

File Systems Examples.
Cloud Scale Storage Systems Sean Ogden October 30, 2013.
Lecture 6 – Google File System (GFS) CSE 490h – Introduction to Distributed Computing, Winter 2008 Except as otherwise noted, the content of this presentation.
Distributed Systems Tutorial 9 – Windows Azure Storage written by Alex Libov Based on SOSP 2011 presentation winter semester,
Google Bigtable A Distributed Storage System for Structured Data Hadi Salimi, Distributed Systems Laboratory, School of Computer Engineering, Iran University.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 7 Configuring File Services in Windows Server 2008.
Case Study - GFS.
Inexpensive Scalable Information Access Many Internet applications need to access data for millions of concurrent users Relational DBMS technology cannot.
Take An Internal Look at Hadoop Hairong Kuang Grid Team, Yahoo! Inc
Manage & Configure SQL Database on the Cloud Haishi Bai Technical Evangelist Microsoft.
Windows Azure Storage Services Saranya Sriram, Technology Evangelist, Microsoft, India.
Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google∗
WINDOWS AZURE STORAGE 11 de Mayo, 2011 Gisela Torres – Windows Azure MVP Aventia-Renacimiento Twitter:
Inside Windows Azure Storage Name Title Microsoft Corporation.
Windows Azure SQL Database and Storage Name Title Organization.
1 The Google File System Reporter: You-Wei Zhang.
CSC 456 Operating Systems Seminar Presentation (11/13/2012) Leon Weingard, Liang Xin The Google File System.
Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,
Windows Azure featureISO 27001SSAE 16 SOC 1 Type 2 EU Model Clauses HIPAA BAA Web Sites Virtual Machines Cloud Services Storage (Tables,
Larisa kocsis priya ragupathy
Austin code camp 2010 asp.net apps with azure table storage PRESENTED BY CHANDER SHEKHAR DHALL
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
1 Moshe Shadmon ScaleDB Scaling MySQL in the Cloud.
WINDOWS AZURE STORAGE SERVICES A brief comparison and overview of storage services offered by Microsoft.
Windows Azure Conference 2014 Designing Applications for Scalability.
Data in the Cloud – I Parallel Databases The Google File System Parallel File Systems.
MapReduce and GFS. Introduction r To understand Google’s file system let us look at the sort of processing that needs to be done r We will look at MapReduce.
Virtual techdays INDIA │ august 2010 Building & Migrating Web applications using Windows Azure storage Ramaprasanna Chellamuthu │ Developer Evangelist;
GFS. Google r Servers are a mix of commodity machines and machines specifically designed for Google m Not necessarily the fastest m Purchases are based.
Windows Azure. Azure Application platform for the public cloud. Windows Azure is an operating system You can: – build a web application that runs.
North America Europe Asia Pacific Data centers.
Martin Cairney Hybrid data platform – making the most of Azure plus your on- prem kit DAT341 B.
Introduction to Active Directory
Technology Drill Down: Windows Azure Platform Eric Nelson | ISV Application Architect | Microsoft UK |
Building Cloud Solutions Presenter Name Position or role Microsoft Azure.
Hands-On Microsoft Windows Server 2008 Chapter 7 Configuring and Managing Data Storage.
The Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Presenter: Chao-Han Tsai (Some slides adapted from the Google’s series lectures)
Amazon Web Services. Amazon Web Services (AWS) - robust, scalable and affordable infrastructure for cloud computing. This session is about:
Course: Cluster, grid and cloud computing systems Course author: Prof
Sanjay Ghemawat, Howard Gobioff, Shun-Tak Leung
CS 540 Database Management Systems
Business Continuity & Disaster Recovery
Amazon Storage- S3 and Glacier
CSE-291 (Cloud Computing) Fall 2016
Maximum Availability Architecture Enterprise Technology Centre.
Feiping Li Jingjing Yang CSS534
Google Filesystem Some slides taken from Alan Sussman.
Google File System CSE 454 From paper by Ghemawat, Gobioff & Leung.
Design and Implement Cloud Data Platform Solutions
Business Continuity & Disaster Recovery
Azure and SQL Server: Getting the best out of the cloud
The Google File System Sanjay Ghemawat, Howard Gobioff and Shun-Tak Leung Google Presented by Jiamin Huang EECS 582 – W16.
03 | Data Storage Bruno Terkaly | Technical Evangelist
CloudSimplified.IO.
Inside Windows Azure Storage: what's new and under the hood deep dive
آزمايشگاه سيستمهای هوشمند علی کمالی زمستان 95
Outline Virtualization Cloud Computing Microsoft Azure Platform
EECS 498 Introduction to Distributed Systems Fall 2017
Windows Azure Cloud.
Saranya Sriram Developer Evangelist | Microsoft
MS AZURE By Sauras Pandey.
THE GOOGLE FILE SYSTEM.
Building global and highly-available services using Windows Azure
Lecture 4: File-System Interface
COMPANY PROFILE: REELWAY
The Database World of Azure
Windows Azure Storage Andrew Edwards | Principal SDE
Presentation transcript:

Windows Azure storage(WAS) A HIGHLY AVAILABLE CLOUD STORAGE SERVICE WITH STRONG CONSISTENCY

Introduction It is a scalable cloud storage system Used inside Microsoft for apps such as  social networking search, Xbox, Skype Storage is provided in the form of blobs, tables and queues

Key design features Strong consistency Global and scalable Namespace/Storage Disaster recovery Multi tenancy and Cost of Storage

High level architecture 1. Storage stamp Cluster of N racks of storage nodes Append-only distributed file system holds up to 30PB Each storage stamp consists of 3 layers 2. Location Service Tracks resource usage  Disaster recovery and load balancing Ability to easily add new region, location and storage stamp  User account setting up

Storage Stamp Architecture Incoming Write Request Ack Front End Layer FE FE FE FE FE Partition Master Lock Service Partition Layer Partition Server Partition Server Partition Server Partition Server M M Paxos Stream Layer M Extent Nodes (EN)

Stream Layer Stream Layer (Distributed File System) An extent is replicated 3 times across different fault and upgrade domains With random selection for where to place replicas for fast MTTR Checksum all stored data Verified on every client read Scrubbed every few days Re-replicate on disk/node/rack failure or checksum mismatch M Stream Layer (Distributed File System) M Paxos M Extent Nodes (EN)

Stream //foo/myfile.data Stream Layer Concepts Block Min unit of write/read Checksum Up to N bytes (e.g. 4MB) Extent Unit of replication Sequence of blocks Size limit (e.g. 1GB) Sealed/unsealed Stream Hierarchical namespace Ordered list of pointers to extents Append/Concatenate Stream //foo/myfile.data Ptr E1 Ptr E2 Ptr E3 Ptr E4 Extent E1 Extent E2 Extent E3 Extent E4 Block Block Block Block Block Block Block Block Block Block Block Block Block Block Block sealed sealed sealed unsealed

Creating an Extent Paxos Create Stream/Extent SM Stream Master Paxos Create Stream/Extent Partition Layer EN1 Primary EN2, EN3 Secondary Allocate Extent replica set EN 1 EN 2 EN 3 EN Primary Secondary A Secondary B

Replication Flow (intra stamp replication) SM Paxos Partition Layer EN1 Primary EN2, EN3 Secondary Ack Append EN 1 EN 2 EN 3 EN Primary Secondary A Secondary B

Partition Layer Provides data model for objects stored Master Provides data model for objects stored Logic and semantics to process objects Massively scalable namespace for the objects Load balancing to access objects across PS Transaction ordering and strong consistency for Blobs, Tables and Queues Inter-stamp (geo) replication by shipping logs to other stamps Stores and reads the objects to/from extents in the Stream layer Lock Service Partition Server Partition Server Partition Server

Partition Layer – Index Range Partitioning Blob Index  Account Name Container Name Blob Name aaaa aaaaa ……… harry pictures sunrise Account Name Container Name Blob Name aaaa aaaaa …….. zzzz zzzzz Split index into RangePartitions  Split at PartitionKey boundaries PartitionMap tracks Index RangePartition  Front-End caches the PartitionMap to route user requests Each part of the index is assigned to only one Partition Server at a time Storage Stamp Partition Master A-H: PS1 H’-R: PS2 R’-Z: PS3 Partition Server Account Name Container Name Blob Name harry pictures sunset ……… richard videos soccer Front-End Server PS 1 A-H Partition Map A-H: PS1 H’-R: PS2 R’-Z: PS3 Partition Server Partition Server Account Name Container Name Blob Name richard videos tennis ……… zzzz zzzzz PS 3 PS 2 H’-R R’-Z Partition Map

Front-End layer and VIP Authenticates and authorize requests. Routes the requests to Partition Layer Partition Map tracks of the partitions for the service being accessed ( Blobs, Queues, Tables) VIP - Virtual IP IP address exposed to the outside world New account request -> Location Service chooses a storage stamp -> Store account metadata LS then updates the DNS to allow requests from the user account to that storage stamp's virtual IP. 

blob "Binary Large OBject" - collection of binary data as a single entity Stores unstructured object data  Also known as Object storage Blob Data -  data which does not conform to an established data type as defined by the database eg: image files Used:  Social data such as photos, videos, music, and blogs Backups of files, documents, computers, databases, and devices Images and text for web applications Providing online storage of media files

BLOB - Containers Blobs are stored in a directory-like structure called  “container”  Blob Service Concepts:  Access to Storage done through storage account An account can have unlimited number of containers Container can store unlimited number of blobs Each blob is of the type page, block or append Containers  provide a useful way to assign security policies to groups of objects (images) (Pic01.jpg) Page/Block/Append (movies) Page/Block/Append (Mov01.AVI)

Types of blobs – BLOCK , page, Append Ideal for  streaming workload operations         Made of blocks each having unique blockID.  Max size 200GB     Multiple blocks can be modified and  Commit Operation commits the modifications in a single go      Eg: Video files accessed in sequence, documents,  back ups , jpg's PAGE:   Ideal for  random read/write operations       “page” is defined as a range of data. Max size 1TB          Write operations happens in place and  Commit Operation commits the modification then and there       Eg: VHD files, Azure VMs to store OS and data disks                                                                                        APPEND:    Consists of blocks Optimized for append operations - only by adding a new block to the end Multiple clients can write to same blob   - no synchronization needed Eg: Logging 

Table Structured or Semi-structured non-relational data NoSQL key/attribute store – it has a schemaless design (free flow – no fixed columns for rows) Used: Flexible datasets  user data for web applications address books, device information

Table - ENTity Table is a collection of entities ​ Table Service Concepts:​  Access to Storage done through storage account An account can have unlimited number of tables Table can store unlimited number of entities Each entity is a collection of properties  Property is a name-value pair  Entity also has 3 system properties    a partition key   a row key  a timestamp  Each entity can be up to 1MB in size   Each entity can include up to 252 properties to store data Property

queue Cloud messaging solution for asynchronous communication between application components Provides reliable messaging for workflow processing  Handle traffic bursts  Build flexible applications : more scalable and less sensitive Used: Creating a backlog of work to process asynchronously Passing messages from an Azure web role to an Azure worker role

QUEUE - messages Queue is a set of messages Queue Service Concepts:    Queue Service Concepts:   Access to Storage done through storage account An account can have unlimited number of queues  Queue can store unlimited number of messages  Each message can be in any format up to 64KB Sender sends the message and the client receives and process and deletes them – guarantee success Maximum time a message can be is 7 days

Applications that run on azure Xbox                                                      OneDrive Bing  Skype

advantages AND DRAWBACKS Diverse OS Supports many different programming languages, tools and frameworks Upgrades can be easily added Cost saving Flexibility / Scalability  Only windows centric applications are supported by Microsoft for technical assistance Just started with Linux – limited support

Improvement points Compared with AS3 Can add the change notification feature   Can remove the limitation of storage ( 500TB / account ) Extend technical support beyond windows What is best compared to AS3?               Append, Page with web interface

Summary Architecture – Geo-replication, Availability with Consistency, Durability Blob – Unstructured data. Container. Types : Block, Page and Append Table – Structured data, NoSQL schema less. Entity – Property Queue – Messaging solution for asynchronous communication. Messages

reference Windows Azure Storage: A Highly Available Cloud Storage Service with Strong Consistency : Brad Calder, Ju Wang, Aaron Ogus, Niranjan Nilakantan, Arild Skjolsvold, Sam McKelvie, Yikang Xu, Shashwat Srivastav, Jiesheng Wu, Huseyin Simitci, Jaidev Haridas, Chakravarthy Uddaraju, Hemal Khatri, Andrew Edwards, Vaman Bedekar, Shane Mainali, Rafay Abbasi, Arpit Agarwal, Mian Fahim ul Haq, Muhammad Ikram ul Haq, Deepali Bhardwaj, Sowmya Dayanand, Anitha Adusumilli, Marvin McNett, Sriram Sankaran, Kavitha Manivannan, Leonidas Rigas http://sigops.org/sosp/sosp11/current/2011-Cascais/printable/11-calder.pdf http://sigops.org/sosp/sosp11/current/2011-Cascais/11-calder.pptx  https://docs.microsoft.com/en-us/azure/storage/storage-introduction

Questions???