SlideShare una empresa de Scribd logo
1 de 30
WINDOWS AZURE
BLOB STORAGE
DEEP DIVE




   Wely Lau (wely@ncs.com.sg)
   Microsoft MVP, Windows Azure
   Solutions Architect, NCS Pte Ltd
   Blog : http://wely-lau.net
AGENDA

 • Windows Azure Storage Overview (10 mins)

 • Blob Storage Basic (15 mins)
    •   Understanding container and blob
    •   Main web service operations
    •   Metadata
    •   Snapshot

 • Deep Dive (20 mins)
    • Block blob &page blob
    • Shared Access Signature
    • Content Delivery Network

 • Tip of the day (10 mins)

 • Q & A (5 mins)
WINDOWS AZURE STORAGE
      OVERVIEW
WINDOWS AZURE STORAGE

•   Storage in the Cloud
     •   Highly available with 99.9% monthly SLA
     •   Anywhere at anytime access
     •   Data Redundancy
           • Data is replicated for resilience and protection with 3 copies within the same data center.
           • Another 3 copies geo-replicated in another data center
     •   Cost effective
          • Storage capacity: $ 0.14 per GB per month
          • Storage transaction: $ 0.01 per 10,000 transaction

•   User specified globally unique account name
     •   Can choose geo-location to host storage account
           •   US – “North Central” and “South Central”
           •   Europe – “North” and “West”
           •   Asia – “East” and “Southeast”
     •   Can co-locate storage account with compute account
           •   Explicitly or using affinity groups


•   Some Facts
     •   70 Petabytes raw storage today
     •   Grows to >200 Petabytes by start of 2012
WINDOWS AZURE STORAGE ABSTRACTION
STORAGE EMULATOR
•   Provides a local “Mock” storage
•   Emulates storage in cloud
•   Allows offline development
•   Requires SQL Express 2005/2008 or above




    There are some differences between Cloud and Dev Storage.
               http://msdn.microsoft.com/dd320275
ACCESSING WINDOWS AZURE STORAGE
VIA API
• REST-based Web Service
   •   Platform independent                                Developers…
   •   Use when a library isn‟t available
   •   Lacks Intellisense
   •   Results in opaque code
                                                .NET    Java    PHP      etc...

• Storage Client Libraries                                REST-based API

   • .NET, Java, Python, Ruby, PHP, Perl, Jav          Windows Azure Storage
     aScript (Node), Objective-C, etc.
   • More at http://tinyurl.com/was-library
   • These provide an abstraction layer on
     top of the REST API and is the most
     common way to access storage.
ACCESSING WINDOWS AZURE STORAGE VIA
TOOLS
 •   Cloud Storage Studio by Cerebrata
 •   Azure Storage Explorer by Neudistic
 •   CloudXplorer by ClumsyLeaf
 •   CloudBerry Explorer by CloudBerry Lab
 •   More at http://tinyurl.com/was-explorers
demo
WINDOWS AZURE STORAGE
BLOB STORAGE BASIC
WINDOWS AZURE BLOB STORAGE
  • You can have as many containers and BLOBs as
    you want.
  • Containers can be created/destroyed on the fly
        http://<account>.blob.core.windows.net/<container>/<blobname>
        http://cohowinery.blob.core.windows.net/images/pic01.jpg

                     Account: MovieConversion
blobs          Container: Originals        Container: Completed

              - Job1.mpg                   - Job 9.mpg
              - Job2.mpg                   - Index.docx
              - Header.png                 - Job8.pdf
CONTAINERS

• Similar to a top level folder
• Special $root container
                    http://cohowinery.blob.core.windows.net/pic01.jpg
                 http://cohowinery.blob.core.windows.net/$root/pic01.jpg

• Has an unlimited capacity
• Can only contain BLOBs
• Associate Metadata with Container

Each container has an access level:
- Private
    -   Default, will require the account key to access
- Public read access for blobs only
    -   Blob data within this container can be read via anonymous request, but container data is
        not available
- Full public read
    -   Container and blob data can be read via anonymous request
BLOB

• Main Web Service Operations
   •   PutBlob
   •   GetBlob
   •   DeleteBlob
   •   CopyBlob
   •   SnapshotBlob
   •   LeaseBlob


• Associate Metadata with Blob
   • Metadata is <name, value> pairs, up to 8KB per blob


• Blob always accessed by name
   • Can include „/„ or other delimeter in name
   • e.g. /<container>/myblobs/blob.jpg
demo
BLOB STORAGE BASIC
BLOB STORAGE DEEP DIVE
TWO TYPES OF BLOBS UNDER THE HOOD
UPLOADING A BLOCK BLOB


• Uploading a large blob with
  Put Block List
PAGE BLOB – RANDOM READ/WRITE
demo
BLOCK BLOB / PAGE BLOB
SHARED ACCESS SIGNATURE

• Fine grain access rights to blobs and containers
• Sign URL with storage key – permit elevated
  rights
• Revocation
  • Use short time periods and re-issue
  • Use container level policy that can be deleted
• Two broad approaches
  • Ad-hoc
  • Policy based
AD HOC SIGNATURES

 • Create Short Dated Shared Access Signature
    • Signedresource Blob or Container
    • AccessPolicy Start, Expiry and Permissions
    • Signature HMAC-SHA256 of above fields


 • Use case
    • Single use URLs
    • E.g. Provide URL to Silverlight client to upload to container
POLICY BASED SIGNATURES

 • Create Container Level Policy
    • Specify StartTime, ExpiryTime, Permissions


 • Create Shared Access Signature URL
    • Signedresource Blob or Container
    • Signedidentifier Optional pointer to container policy
    • Signature HMAC-SHA256 of above fields


 • Use case
    • Providing revocable permissions to certain users/groups
    • To revoke: Delete or update container policy
demo
SHARED ACCESS SIGNATURE
CONTENT DELIVERY NETWORK

 • High-bandwidth global blob content delivery
   • 24 locations globally (US, Europe, Asia, Australia and South
     America), and growing
   • Same experience for users no matter how far they are from the
     geo-location where the storage account is hosted


 • Blob service URL vs. CDN URL:
   • Windows Azure Blob URL: http://images.blob.core.windows.net/

   • Windows Azure CDN URL: http://<id>.vo.msecnd.net/

   • Custom Domain Name for CDN: http://cdn.contoso.com/
CONTENT DELIVERY NETWORK




                          North Europe

       North Central US                  East Asia


                          West Europe

     South Central US
                                         South East Asia
CONTENT DELIVERY NETWORK




To Enable CDN:
• Register for CDN via
  Dev Portal
• Set container images
  to public
demo
  CONTENT DELIVERY NETWORK
                     URL                           Time     No CDN          AVG
http://welyncus.blob.core.windows.net/mseinstall   11:23   58 seconds
.exe                                                                     50 seconds
                                                   11:24   49 seconds
                                                   11:27   43 seconds
http://az145199.vo.msecnd.net/mseinstall.exe       11:28   40 seconds
                                                                         39 seconds
                                                   11:29   37 seconds
                                                   11:30   40 seconds
http://welydemostorage.blob.core.windows.net/      11:32   38 seconds
mseinstall.exe                                                          37.67 seconds
                                                   11:32   34 seconds
                                                   11:33   41 seconds
http://az28746.vo.msecnd.net/mseinstall.exe        11:35   36 seconds
                                                                         31 seconds
                                                   11:36   29 seconds
                                                   11:37   28 seconds
TIP OF THE DAY
LIVE PERFORMANCE COUNTER

 • Checkout: http://tinyurl.com/wely-live-perf

 • Hosting web content in Blob Storage




 • Query Blob Storage from the browser




                                                 Idea courtesy to
                                                      Steve Marx
THANK YOU!


Wely Lau (wely@ncs.com.sg)
Microsoft MVP, Windows Azure
Solutions Architect, NCS Pte Ltd
Blog : http://wely-lau.net

Más contenido relacionado

La actualidad más candente

10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
Amazon Web Services Korea
 
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
Simplilearn
 

La actualidad más candente (20)

Windows Azure Storage – Architecture View
Windows Azure Storage – Architecture ViewWindows Azure Storage – Architecture View
Windows Azure Storage – Architecture View
 
Building-a-Data-Lake-on-AWS
Building-a-Data-Lake-on-AWSBuilding-a-Data-Lake-on-AWS
Building-a-Data-Lake-on-AWS
 
Building Data Lakes for Analytics on AWS
Building Data Lakes for Analytics on AWSBuilding Data Lakes for Analytics on AWS
Building Data Lakes for Analytics on AWS
 
Azure Virtual Desktop Overview.pptx
Azure Virtual Desktop Overview.pptxAzure Virtual Desktop Overview.pptx
Azure Virtual Desktop Overview.pptx
 
Disaster Recovery using Azure Services
Disaster Recovery using Azure ServicesDisaster Recovery using Azure Services
Disaster Recovery using Azure Services
 
[AWS Builders 온라인 시리즈] AWS 서비스를 활용하여 파일 스토리지 빠르게 마이그레이션 하기 - 서지혜, AWS 솔루션즈 아키텍트
[AWS Builders 온라인 시리즈]  AWS 서비스를 활용하여 파일 스토리지 빠르게 마이그레이션 하기 - 서지혜, AWS 솔루션즈 아키텍트[AWS Builders 온라인 시리즈]  AWS 서비스를 활용하여 파일 스토리지 빠르게 마이그레이션 하기 - 서지혜, AWS 솔루션즈 아키텍트
[AWS Builders 온라인 시리즈] AWS 서비스를 활용하여 파일 스토리지 빠르게 마이그레이션 하기 - 서지혜, AWS 솔루션즈 아키텍트
 
AWS Storage - S3 Fundamentals
AWS Storage - S3 FundamentalsAWS Storage - S3 Fundamentals
AWS Storage - S3 Fundamentals
 
Introduction to Amazon Aurora
Introduction to Amazon AuroraIntroduction to Amazon Aurora
Introduction to Amazon Aurora
 
48. Azure Active Directory - Part 1
48. Azure Active Directory - Part 148. Azure Active Directory - Part 1
48. Azure Active Directory - Part 1
 
Introduction to Amazon S3
Introduction to Amazon S3Introduction to Amazon S3
Introduction to Amazon S3
 
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
 
Get started With Microsoft Azure Virtual Machine
Get started With Microsoft Azure Virtual MachineGet started With Microsoft Azure Virtual Machine
Get started With Microsoft Azure Virtual Machine
 
AWS Route53
AWS Route53AWS Route53
AWS Route53
 
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
 
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
 
AWS for Backup and Recovery
AWS for Backup and RecoveryAWS for Backup and Recovery
AWS for Backup and Recovery
 
Cloudwatch: Monitoring your AWS services with Metrics and Alarms
Cloudwatch: Monitoring your AWS services with Metrics and AlarmsCloudwatch: Monitoring your AWS services with Metrics and Alarms
Cloudwatch: Monitoring your AWS services with Metrics and Alarms
 
Understanding Azure Disaster Recovery
Understanding Azure Disaster RecoveryUnderstanding Azure Disaster Recovery
Understanding Azure Disaster Recovery
 
AWS S3 Tutorial For Beginners | Edureka
AWS S3 Tutorial For Beginners | EdurekaAWS S3 Tutorial For Beginners | Edureka
AWS S3 Tutorial For Beginners | Edureka
 
AWS Data Transfer Services: Data Ingest Strategies Into the AWS Cloud
AWS Data Transfer Services: Data Ingest Strategies Into the AWS CloudAWS Data Transfer Services: Data Ingest Strategies Into the AWS Cloud
AWS Data Transfer Services: Data Ingest Strategies Into the AWS Cloud
 

Destacado

Destacado (7)

Azure Storage Performance
Azure Storage PerformanceAzure Storage Performance
Azure Storage Performance
 
Cloud Storage in Azure, AWS and Google Cloud
Cloud  Storage in Azure, AWS and Google CloudCloud  Storage in Azure, AWS and Google Cloud
Cloud Storage in Azure, AWS and Google Cloud
 
Windows Azure Storage: Overview, Internals, and Best Practices
Windows Azure Storage: Overview, Internals, and Best PracticesWindows Azure Storage: Overview, Internals, and Best Practices
Windows Azure Storage: Overview, Internals, and Best Practices
 
Amazon S3 Overview
Amazon S3 OverviewAmazon S3 Overview
Amazon S3 Overview
 
Amazon's Simple Storage Service (S3)
Amazon's Simple Storage Service (S3)Amazon's Simple Storage Service (S3)
Amazon's Simple Storage Service (S3)
 
Amazon S3 Masterclass
Amazon S3 MasterclassAmazon S3 Masterclass
Amazon S3 Masterclass
 
Getting started with microsoft azure in 30 mins
Getting started with microsoft azure in 30 minsGetting started with microsoft azure in 30 mins
Getting started with microsoft azure in 30 mins
 

Similar a Windows Azure Blob Storage

Cloud and Windows Azure
Cloud and Windows AzureCloud and Windows Azure
Cloud and Windows Azure
Radu Vunvulea
 
ABS 2014 - Android Kit Kat Internals
ABS 2014 - Android Kit Kat InternalsABS 2014 - Android Kit Kat Internals
ABS 2014 - Android Kit Kat Internals
Benjamin Zores
 

Similar a Windows Azure Blob Storage (20)

Power of Azure Devops
Power of Azure DevopsPower of Azure Devops
Power of Azure Devops
 
Cloud and Windows Azure
Cloud and Windows AzureCloud and Windows Azure
Cloud and Windows Azure
 
Preparing your dockerised application for production deployment
Preparing your dockerised application for production deploymentPreparing your dockerised application for production deployment
Preparing your dockerised application for production deployment
 
vBrownBag - Scripting and Versioning with PowerShell ISE and Git Shell
vBrownBag - Scripting and Versioning with PowerShell ISE and Git ShellvBrownBag - Scripting and Versioning with PowerShell ISE and Git Shell
vBrownBag - Scripting and Versioning with PowerShell ISE and Git Shell
 
Do you lose sleep at night?
Do you lose sleep at night?Do you lose sleep at night?
Do you lose sleep at night?
 
Reactive summit 2020 microsoft orleans the easy way
Reactive summit 2020   microsoft orleans the easy wayReactive summit 2020   microsoft orleans the easy way
Reactive summit 2020 microsoft orleans the easy way
 
Windows Azure platform
Windows Azure platformWindows Azure platform
Windows Azure platform
 
More Cache for Less Cash
More Cache for Less CashMore Cache for Less Cash
More Cache for Less Cash
 
Ruby and Distributed Storage Systems
Ruby and Distributed Storage SystemsRuby and Distributed Storage Systems
Ruby and Distributed Storage Systems
 
Dev Ops Geek Fest: Automating the ForgeRock Platform
Dev Ops Geek Fest: Automating the ForgeRock PlatformDev Ops Geek Fest: Automating the ForgeRock Platform
Dev Ops Geek Fest: Automating the ForgeRock Platform
 
Understanding Docker and IBM Bluemix Container Service
Understanding Docker and IBM Bluemix Container ServiceUnderstanding Docker and IBM Bluemix Container Service
Understanding Docker and IBM Bluemix Container Service
 
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
 
ABS 2014 - Android Kit Kat Internals
ABS 2014 - Android Kit Kat InternalsABS 2014 - Android Kit Kat Internals
ABS 2014 - Android Kit Kat Internals
 
Oracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attackOracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attack
 
More Cache for Less Cash (DevLink 2014)
More Cache for Less Cash (DevLink 2014)More Cache for Less Cash (DevLink 2014)
More Cache for Less Cash (DevLink 2014)
 
Containers 101
Containers 101Containers 101
Containers 101
 
Untangling - fall2017 - week 9
Untangling - fall2017 - week 9Untangling - fall2017 - week 9
Untangling - fall2017 - week 9
 
Overcoming 5 Common Docker Challenges: How We Do It at RightScale
Overcoming 5 Common Docker Challenges: How We Do It at RightScaleOvercoming 5 Common Docker Challenges: How We Do It at RightScale
Overcoming 5 Common Docker Challenges: How We Do It at RightScale
 
Lions, Tigers and Deers: What building zoos can teach us about securing micro...
Lions, Tigers and Deers: What building zoos can teach us about securing micro...Lions, Tigers and Deers: What building zoos can teach us about securing micro...
Lions, Tigers and Deers: What building zoos can teach us about securing micro...
 
Docker and Microservice
Docker and MicroserviceDocker and Microservice
Docker and Microservice
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 

Windows Azure Blob Storage

  • 1. WINDOWS AZURE BLOB STORAGE DEEP DIVE Wely Lau (wely@ncs.com.sg) Microsoft MVP, Windows Azure Solutions Architect, NCS Pte Ltd Blog : http://wely-lau.net
  • 2. AGENDA • Windows Azure Storage Overview (10 mins) • Blob Storage Basic (15 mins) • Understanding container and blob • Main web service operations • Metadata • Snapshot • Deep Dive (20 mins) • Block blob &page blob • Shared Access Signature • Content Delivery Network • Tip of the day (10 mins) • Q & A (5 mins)
  • 4. WINDOWS AZURE STORAGE • Storage in the Cloud • Highly available with 99.9% monthly SLA • Anywhere at anytime access • Data Redundancy • Data is replicated for resilience and protection with 3 copies within the same data center. • Another 3 copies geo-replicated in another data center • Cost effective • Storage capacity: $ 0.14 per GB per month • Storage transaction: $ 0.01 per 10,000 transaction • User specified globally unique account name • Can choose geo-location to host storage account • US – “North Central” and “South Central” • Europe – “North” and “West” • Asia – “East” and “Southeast” • Can co-locate storage account with compute account • Explicitly or using affinity groups • Some Facts • 70 Petabytes raw storage today • Grows to >200 Petabytes by start of 2012
  • 5. WINDOWS AZURE STORAGE ABSTRACTION
  • 6. STORAGE EMULATOR • Provides a local “Mock” storage • Emulates storage in cloud • Allows offline development • Requires SQL Express 2005/2008 or above There are some differences between Cloud and Dev Storage. http://msdn.microsoft.com/dd320275
  • 7. ACCESSING WINDOWS AZURE STORAGE VIA API • REST-based Web Service • Platform independent Developers… • Use when a library isn‟t available • Lacks Intellisense • Results in opaque code .NET Java PHP etc... • Storage Client Libraries REST-based API • .NET, Java, Python, Ruby, PHP, Perl, Jav Windows Azure Storage aScript (Node), Objective-C, etc. • More at http://tinyurl.com/was-library • These provide an abstraction layer on top of the REST API and is the most common way to access storage.
  • 8. ACCESSING WINDOWS AZURE STORAGE VIA TOOLS • Cloud Storage Studio by Cerebrata • Azure Storage Explorer by Neudistic • CloudXplorer by ClumsyLeaf • CloudBerry Explorer by CloudBerry Lab • More at http://tinyurl.com/was-explorers
  • 11. WINDOWS AZURE BLOB STORAGE • You can have as many containers and BLOBs as you want. • Containers can be created/destroyed on the fly http://<account>.blob.core.windows.net/<container>/<blobname> http://cohowinery.blob.core.windows.net/images/pic01.jpg Account: MovieConversion blobs Container: Originals Container: Completed - Job1.mpg - Job 9.mpg - Job2.mpg - Index.docx - Header.png - Job8.pdf
  • 12. CONTAINERS • Similar to a top level folder • Special $root container http://cohowinery.blob.core.windows.net/pic01.jpg http://cohowinery.blob.core.windows.net/$root/pic01.jpg • Has an unlimited capacity • Can only contain BLOBs • Associate Metadata with Container Each container has an access level: - Private - Default, will require the account key to access - Public read access for blobs only - Blob data within this container can be read via anonymous request, but container data is not available - Full public read - Container and blob data can be read via anonymous request
  • 13. BLOB • Main Web Service Operations • PutBlob • GetBlob • DeleteBlob • CopyBlob • SnapshotBlob • LeaseBlob • Associate Metadata with Blob • Metadata is <name, value> pairs, up to 8KB per blob • Blob always accessed by name • Can include „/„ or other delimeter in name • e.g. /<container>/myblobs/blob.jpg
  • 16. TWO TYPES OF BLOBS UNDER THE HOOD
  • 17. UPLOADING A BLOCK BLOB • Uploading a large blob with Put Block List
  • 18. PAGE BLOB – RANDOM READ/WRITE
  • 19. demo BLOCK BLOB / PAGE BLOB
  • 20. SHARED ACCESS SIGNATURE • Fine grain access rights to blobs and containers • Sign URL with storage key – permit elevated rights • Revocation • Use short time periods and re-issue • Use container level policy that can be deleted • Two broad approaches • Ad-hoc • Policy based
  • 21. AD HOC SIGNATURES • Create Short Dated Shared Access Signature • Signedresource Blob or Container • AccessPolicy Start, Expiry and Permissions • Signature HMAC-SHA256 of above fields • Use case • Single use URLs • E.g. Provide URL to Silverlight client to upload to container
  • 22. POLICY BASED SIGNATURES • Create Container Level Policy • Specify StartTime, ExpiryTime, Permissions • Create Shared Access Signature URL • Signedresource Blob or Container • Signedidentifier Optional pointer to container policy • Signature HMAC-SHA256 of above fields • Use case • Providing revocable permissions to certain users/groups • To revoke: Delete or update container policy
  • 24. CONTENT DELIVERY NETWORK • High-bandwidth global blob content delivery • 24 locations globally (US, Europe, Asia, Australia and South America), and growing • Same experience for users no matter how far they are from the geo-location where the storage account is hosted • Blob service URL vs. CDN URL: • Windows Azure Blob URL: http://images.blob.core.windows.net/ • Windows Azure CDN URL: http://<id>.vo.msecnd.net/ • Custom Domain Name for CDN: http://cdn.contoso.com/
  • 25. CONTENT DELIVERY NETWORK North Europe North Central US East Asia West Europe South Central US South East Asia
  • 26. CONTENT DELIVERY NETWORK To Enable CDN: • Register for CDN via Dev Portal • Set container images to public
  • 27. demo CONTENT DELIVERY NETWORK URL Time No CDN AVG http://welyncus.blob.core.windows.net/mseinstall 11:23 58 seconds .exe 50 seconds 11:24 49 seconds 11:27 43 seconds http://az145199.vo.msecnd.net/mseinstall.exe 11:28 40 seconds 39 seconds 11:29 37 seconds 11:30 40 seconds http://welydemostorage.blob.core.windows.net/ 11:32 38 seconds mseinstall.exe 37.67 seconds 11:32 34 seconds 11:33 41 seconds http://az28746.vo.msecnd.net/mseinstall.exe 11:35 36 seconds 31 seconds 11:36 29 seconds 11:37 28 seconds
  • 28. TIP OF THE DAY
  • 29. LIVE PERFORMANCE COUNTER • Checkout: http://tinyurl.com/wely-live-perf • Hosting web content in Blob Storage • Query Blob Storage from the browser Idea courtesy to Steve Marx
  • 30. THANK YOU! Wely Lau (wely@ncs.com.sg) Microsoft MVP, Windows Azure Solutions Architect, NCS Pte Ltd Blog : http://wely-lau.net

Notas del editor

  1. This session discusses your data and the Windows Azure platform.
  2. Slide ObjectiveUnderstand the Development Storage ServiceSpeaking notesClient side simulator of storage in the cloud. Allows completely disconnected (e.g. while travelling on a plane) development of Windows Azure appsCan consume just like Cloud storage- from Development Fabric, from another application running locallyIs locked down so that it cannot be called from off the boxIf you need this capability run a reverse proxy on the dev machineCan use CSRun to start and stop serviceMore on this in Day 3Uses a single fixed account. The account name and key are always the sameAnyone memorized the Account key yet? Eby8vd…..Noteshttp://msdn.microsoft.com/en-us/library/dd179339.aspxThe Windows® Azure™ SDK development environment includes development storage, a utility that simulates the Blob, Queue, and Table services available in the cloud. If you are building a hosted service that employs storage services or writing any external application that calls storage services, you can test locally against development storage.The development storage utility provides a user interface to view the status of the local storage services and to start, stop, and reset them.This topic contains the following subtopics: