SlideShare una empresa de Scribd logo
1 de 42
K.MohamedFaizal Lead Consultant @ NCS (P) Ltd. kmdfaizal@gmail.com http://faizal-comeacross.blogspot.com AzureUG.SG 26th Jan 2011. Exploring Windows Azure Cloud Storage
About Me 14
Agenda Cloud Storage Account Overview Tables Blobs Queues Storage Viewer / Explorer Tools
Cloud Storage Blobs Queues Tables The types of Azure Storage ,[object Object]
Tables – Hierarchical Data Tables
Queues – Asynchronous Messaging
Drives – NTFS file systems (Blob)Each item in storage is stored in triplicate.
Make a guess! What is the maximum size of data, a storage account can hold? 1 GB 100 GB 1 TB 100 TB Answer: d) 100 TB http://blogs.msdn.com/b/windowsazurestorage/archive/2010/05/10/windows-azure-storage-abstractions-and-their-scalability-targets.aspx
Windows Azure and SQL Azure
Creating a Storage Account
With client library Automatically referenced in a cloud project Supplies a nice .NET API on top of the REST API You will need the following: Account Name - movieconversion Account Shared Key – NOcqFlqUwJPLlm… Endpoint - blob.core.windows.net -or- UseDevelopmentStorage=true
Table Storage
Windows Azure Tables Provides Structured Storage Massively Scalable Tables Billions of entities (rows) and TBs of data Can use thousands of servers as traffic grows Highly Available & Durable Data is replicated several times Familiar and Easy to use API ADO.NET Data Services – .NET 3.5 SP1 .NET classes and LINQ REST – with any platform or language 10
Tables Is not relational Can Not- Create foreign key relationships between tables. Perform server side joins between tables. Create custom indexes on the tables. No server side Count(), for example. ADO.NET Data Service Creates and consumes data via REST-based API's The Table Service REST API implements the WCF Data Services API.
Table Structure Account Table Account: MovieData Table Name: Movies Table Name: Customers Entity Star Wars Star Trek Fan Boys Brian H. Prince Jason Argonaut Bill Gates ,[object Object],[object Object]
Table Data Model Table A storage account can create many tables Table name is scoped by account Set of entities (i.e. rows) Entity Set of properties (columns) Required properties PartitionKey, RowKey and Timestamp 14
Required Entity Properties PartitionKey & RowKey Uniquely identifies an entity Defines the sort order Use them to scale your application Timestamp  Read only Optimistic Concurrency 15
PartitionKey And Partitions PartitionKey Used to group entities in the table into partitions A table partition  All entities with same partition key value Unit of scale Control entity locality Row key provides uniqueness within a partition 16
Required Properties All entities must have the following properties: Timestamp PartitionKey RowKey PartitionKey + RowKey = “primary key”
Partitions and Partition Ranges Server A Table = Movies [Action - Comedy) Server A Table = Movies Server B Table = Movies [Comedy-  Western) 18
Table Operations Table Create Query Delete Entities Insert Update  Merge – Partial Update Replace – Update entire entity Delete Query Entity Group Transaction (new)
Creating a Table Tables can be created and destroyed in code. Wire up your storage in the on_start method. Use a CloudTableClient to access the table.
Entity: Inherit the Required Fields By inheriting from TableServiceEntity we can easily store our entity in an Azure Table.
Create a Context Class WCF Data Services needs a context class.  This represents your connection to the table.
Adding an Entity Other operations are just like normal ADO.NET Data Services, such as delete, update, etc.
Deleting an Entity
Key Selection: Things to Consider Scalability Distribute load as much as possible PartitionKey is critical for scalability Hot partitions can be load balanced Query Efficiency & Speed Avoid frequent large scans Parallelize queries 25
Movie Listing – Solution 1 Why do I need multiple PartitionKeys? Account name as Partition Key   Movie title  as RowKey since movie names need to be sorted Category as a separate property Does this scale? 26
Movie Listing – Solution 1 Single partition - Entire table served by one server All requests served by that single server Does not scale Client Client Request Request Request Request Server A 27
Movie Listing – Solution 2 All movies partitioned by category Allows system to load balance hot partitions Load distributed Better than single partition Server A Client Client Request Request Request Request Request Request Request Request Server B 28
Key Selection: Case Study 2 Log every transaction into a table for diagnostics Scale Write Intensive Scenario Logs can be retrieved for a given time range 29
Logging - Solution 1 Timestamp as Partition Key  Looks like an obvious choice It is not a single partition as time moves forward  Append only Requests to single partition range Load balancingdoesnot help Server may throttle Server A Applications Client Server B Request Request Request Request 30
Logging Solution 2 - Distribute "Append Only” Prefix timestamp such that load is distributed Id of the node logging Hash into N buckets Write load is now distributed  Better throughput To query logs in time range Parallelize it across prefix values Server A Applications Client Server B Request Request Request Request 31
Table Storage Demo demo
Overview Blob Storage
What is a BLOB Binary Large OBject
BLOBs in Azure & Size Each BLOB can be up to 1TB in size 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 ,[object Object]
Job2.mpg
Header.png
Job 9.mpg
Index.docx
Job8.pdf,[object Object]

Más contenido relacionado

Similar a Exploring Windows Azure Cloud Storage

Tablas y almacenamiento en windows azure
Tablas y almacenamiento en windows azureTablas y almacenamiento en windows azure
Tablas y almacenamiento en windows azureEduardo Castro
 
Building services using windows azure
Building services using windows azureBuilding services using windows azure
Building services using windows azureSuliman AlBattat
 
Azure, Cloud Computing & Services
Azure, Cloud Computing & ServicesAzure, Cloud Computing & Services
Azure, Cloud Computing & ServicesAlan Dean
 
Windows azure camp - Kolkata
Windows azure camp - KolkataWindows azure camp - Kolkata
Windows azure camp - KolkataAbhijit Jana
 
Windows azure camp
Windows azure campWindows azure camp
Windows azure campAbhishek Sur
 
Microsoft Database Options
Microsoft Database OptionsMicrosoft Database Options
Microsoft Database OptionsDavid Chou
 
Microsoft and PHP at CakeFest 2010
Microsoft and PHP at CakeFest 2010Microsoft and PHP at CakeFest 2010
Microsoft and PHP at CakeFest 2010Josh Holmes
 
Building Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows AzureBuilding Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows AzureBill Wilder
 
Creation of cloud application using microsoft azure by vaishali sahare [katkar]
Creation of cloud application using microsoft azure by vaishali sahare [katkar]Creation of cloud application using microsoft azure by vaishali sahare [katkar]
Creation of cloud application using microsoft azure by vaishali sahare [katkar]vaishalisahare123
 
MS Cloud Day - Building web applications with Azure storage
MS Cloud Day - Building web applications with Azure storageMS Cloud Day - Building web applications with Azure storage
MS Cloud Day - Building web applications with Azure storageSpiffy
 
10135 a 02
10135 a 0210135 a 02
10135 a 02Bố Su
 
Ms sql server architecture
Ms sql server architectureMs sql server architecture
Ms sql server architectureAjeet Singh
 
Microsoft Azure, door Rob Brommer op de 4DotNet Developers Day
Microsoft Azure, door Rob Brommer op de 4DotNet Developers DayMicrosoft Azure, door Rob Brommer op de 4DotNet Developers Day
Microsoft Azure, door Rob Brommer op de 4DotNet Developers DayHanneke Dotnet
 
NZSPC 2013 - Ultimate SharePoint Infrastructure Best Practices Session
NZSPC 2013 - Ultimate SharePoint Infrastructure Best Practices SessionNZSPC 2013 - Ultimate SharePoint Infrastructure Best Practices Session
NZSPC 2013 - Ultimate SharePoint Infrastructure Best Practices SessionMichael Noel
 
ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudMicrosoft ArcReady
 

Similar a Exploring Windows Azure Cloud Storage (20)

Tablas y almacenamiento en windows azure
Tablas y almacenamiento en windows azureTablas y almacenamiento en windows azure
Tablas y almacenamiento en windows azure
 
Building services using windows azure
Building services using windows azureBuilding services using windows azure
Building services using windows azure
 
Azure, Cloud Computing & Services
Azure, Cloud Computing & ServicesAzure, Cloud Computing & Services
Azure, Cloud Computing & Services
 
Windows azure camp - Kolkata
Windows azure camp - KolkataWindows azure camp - Kolkata
Windows azure camp - Kolkata
 
Windows azure camp
Windows azure campWindows azure camp
Windows azure camp
 
Microsoft Database Options
Microsoft Database OptionsMicrosoft Database Options
Microsoft Database Options
 
Microsoft and PHP at CakeFest 2010
Microsoft and PHP at CakeFest 2010Microsoft and PHP at CakeFest 2010
Microsoft and PHP at CakeFest 2010
 
Building Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows AzureBuilding Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows Azure
 
Creation of cloud application using microsoft azure by vaishali sahare [katkar]
Creation of cloud application using microsoft azure by vaishali sahare [katkar]Creation of cloud application using microsoft azure by vaishali sahare [katkar]
Creation of cloud application using microsoft azure by vaishali sahare [katkar]
 
MS Cloud Day - Building web applications with Azure storage
MS Cloud Day - Building web applications with Azure storageMS Cloud Day - Building web applications with Azure storage
MS Cloud Day - Building web applications with Azure storage
 
Sky High With Azure
Sky High With AzureSky High With Azure
Sky High With Azure
 
Microsoft cloud 101
Microsoft cloud 101Microsoft cloud 101
Microsoft cloud 101
 
10135 a 02
10135 a 0210135 a 02
10135 a 02
 
Mini training - Introduction to Microsoft Azure Storage
Mini training - Introduction to Microsoft Azure StorageMini training - Introduction to Microsoft Azure Storage
Mini training - Introduction to Microsoft Azure Storage
 
Ms sql server architecture
Ms sql server architectureMs sql server architecture
Ms sql server architecture
 
Microsoft Azure, door Rob Brommer op de 4DotNet Developers Day
Microsoft Azure, door Rob Brommer op de 4DotNet Developers DayMicrosoft Azure, door Rob Brommer op de 4DotNet Developers Day
Microsoft Azure, door Rob Brommer op de 4DotNet Developers Day
 
NZSPC 2013 - Ultimate SharePoint Infrastructure Best Practices Session
NZSPC 2013 - Ultimate SharePoint Infrastructure Best Practices SessionNZSPC 2013 - Ultimate SharePoint Infrastructure Best Practices Session
NZSPC 2013 - Ultimate SharePoint Infrastructure Best Practices Session
 
ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The Cloud
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
 
Data In Cloud
Data In CloudData In Cloud
Data In Cloud
 

Más de K.Mohamed Faizal

Azure VNET Peering | விநெட் பியரிங் என்றால் என்ன? Azure in Tamil
Azure VNET Peering | விநெட் பியரிங் என்றால் என்ன? Azure in TamilAzure VNET Peering | விநெட் பியரிங் என்றால் என்ன? Azure in Tamil
Azure VNET Peering | விநெட் பியரிங் என்றால் என்ன? Azure in TamilK.Mohamed Faizal
 
So you want to be a pre sales architect or consultant
So you want to be a pre sales architect or consultantSo you want to be a pre sales architect or consultant
So you want to be a pre sales architect or consultantK.Mohamed Faizal
 
Building infrastructure with Azure Resource Manager using PowerShell
Building infrastructure with Azure Resource Manager using PowerShell Building infrastructure with Azure Resource Manager using PowerShell
Building infrastructure with Azure Resource Manager using PowerShell K.Mohamed Faizal
 
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World ProjectImplementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World ProjectK.Mohamed Faizal
 
Connect your datacenter to Microsoft Azure
Connect your datacenter to Microsoft AzureConnect your datacenter to Microsoft Azure
Connect your datacenter to Microsoft AzureK.Mohamed Faizal
 
SharePoint on Microsoft Azure
SharePoint on Microsoft AzureSharePoint on Microsoft Azure
SharePoint on Microsoft AzureK.Mohamed Faizal
 
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013K.Mohamed Faizal
 
SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)K.Mohamed Faizal
 
Share point 2013 the way to go...
Share point 2013 the way to go...Share point 2013 the way to go...
Share point 2013 the way to go...K.Mohamed Faizal
 
SharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekSharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekK.Mohamed Faizal
 
SharePoint 2010 Online for Developer
SharePoint 2010 Online for DeveloperSharePoint 2010 Online for Developer
SharePoint 2010 Online for DeveloperK.Mohamed Faizal
 
Build and Deploy LightSwitch Application on Windows Azure
Build and Deploy LightSwitch Application on Windows AzureBuild and Deploy LightSwitch Application on Windows Azure
Build and Deploy LightSwitch Application on Windows AzureK.Mohamed Faizal
 
Windows azure traffic manager
Windows azure traffic managerWindows azure traffic manager
Windows azure traffic managerK.Mohamed Faizal
 
Must have tools for windows azure
Must have tools for windows azureMust have tools for windows azure
Must have tools for windows azureK.Mohamed Faizal
 
Building & Managing Windows Azure
Building & Managing Windows AzureBuilding & Managing Windows Azure
Building & Managing Windows AzureK.Mohamed Faizal
 
Using Social Computing on Corporate world
Using Social Computing on Corporate world Using Social Computing on Corporate world
Using Social Computing on Corporate world K.Mohamed Faizal
 

Más de K.Mohamed Faizal (20)

Azure VNET Peering | விநெட் பியரிங் என்றால் என்ன? Azure in Tamil
Azure VNET Peering | விநெட் பியரிங் என்றால் என்ன? Azure in TamilAzure VNET Peering | விநெட் பியரிங் என்றால் என்ன? Azure in Tamil
Azure VNET Peering | விநெட் பியரிங் என்றால் என்ன? Azure in Tamil
 
So you want to be a pre sales architect or consultant
So you want to be a pre sales architect or consultantSo you want to be a pre sales architect or consultant
So you want to be a pre sales architect or consultant
 
Building infrastructure with Azure Resource Manager using PowerShell
Building infrastructure with Azure Resource Manager using PowerShell Building infrastructure with Azure Resource Manager using PowerShell
Building infrastructure with Azure Resource Manager using PowerShell
 
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World ProjectImplementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
 
Internet of things
Internet of thingsInternet of things
Internet of things
 
Connect your datacenter to Microsoft Azure
Connect your datacenter to Microsoft AzureConnect your datacenter to Microsoft Azure
Connect your datacenter to Microsoft Azure
 
SharePoint on Microsoft Azure
SharePoint on Microsoft AzureSharePoint on Microsoft Azure
SharePoint on Microsoft Azure
 
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
 
Windows Azure Website
Windows Azure WebsiteWindows Azure Website
Windows Azure Website
 
SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)
 
Share point 2013 the way to go...
Share point 2013 the way to go...Share point 2013 the way to go...
Share point 2013 the way to go...
 
SharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekSharePoint 2013 Sneak Peek
SharePoint 2013 Sneak Peek
 
Share point 2013 cop v4
Share point 2013 cop v4Share point 2013 cop v4
Share point 2013 cop v4
 
SharePoint 2010 Online for Developer
SharePoint 2010 Online for DeveloperSharePoint 2010 Online for Developer
SharePoint 2010 Online for Developer
 
Build and Deploy LightSwitch Application on Windows Azure
Build and Deploy LightSwitch Application on Windows AzureBuild and Deploy LightSwitch Application on Windows Azure
Build and Deploy LightSwitch Application on Windows Azure
 
Windows azure traffic manager
Windows azure traffic managerWindows azure traffic manager
Windows azure traffic manager
 
Must have tools for windows azure
Must have tools for windows azureMust have tools for windows azure
Must have tools for windows azure
 
Building & Managing Windows Azure
Building & Managing Windows AzureBuilding & Managing Windows Azure
Building & Managing Windows Azure
 
Word automation services
Word automation servicesWord automation services
Word automation services
 
Using Social Computing on Corporate world
Using Social Computing on Corporate world Using Social Computing on Corporate world
Using Social Computing on Corporate world
 

Último

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
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 CVKhem
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 

Último (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
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
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 

Exploring Windows Azure Cloud Storage

  • 1. K.MohamedFaizal Lead Consultant @ NCS (P) Ltd. kmdfaizal@gmail.com http://faizal-comeacross.blogspot.com AzureUG.SG 26th Jan 2011. Exploring Windows Azure Cloud Storage
  • 3. Agenda Cloud Storage Account Overview Tables Blobs Queues Storage Viewer / Explorer Tools
  • 4.
  • 7. Drives – NTFS file systems (Blob)Each item in storage is stored in triplicate.
  • 8. Make a guess! What is the maximum size of data, a storage account can hold? 1 GB 100 GB 1 TB 100 TB Answer: d) 100 TB http://blogs.msdn.com/b/windowsazurestorage/archive/2010/05/10/windows-azure-storage-abstractions-and-their-scalability-targets.aspx
  • 9. Windows Azure and SQL Azure
  • 11. With client library Automatically referenced in a cloud project Supplies a nice .NET API on top of the REST API You will need the following: Account Name - movieconversion Account Shared Key – NOcqFlqUwJPLlm… Endpoint - blob.core.windows.net -or- UseDevelopmentStorage=true
  • 13. Windows Azure Tables Provides Structured Storage Massively Scalable Tables Billions of entities (rows) and TBs of data Can use thousands of servers as traffic grows Highly Available & Durable Data is replicated several times Familiar and Easy to use API ADO.NET Data Services – .NET 3.5 SP1 .NET classes and LINQ REST – with any platform or language 10
  • 14. Tables Is not relational Can Not- Create foreign key relationships between tables. Perform server side joins between tables. Create custom indexes on the tables. No server side Count(), for example. ADO.NET Data Service Creates and consumes data via REST-based API's The Table Service REST API implements the WCF Data Services API.
  • 15.
  • 16. Table Data Model Table A storage account can create many tables Table name is scoped by account Set of entities (i.e. rows) Entity Set of properties (columns) Required properties PartitionKey, RowKey and Timestamp 14
  • 17. Required Entity Properties PartitionKey & RowKey Uniquely identifies an entity Defines the sort order Use them to scale your application Timestamp Read only Optimistic Concurrency 15
  • 18. PartitionKey And Partitions PartitionKey Used to group entities in the table into partitions A table partition All entities with same partition key value Unit of scale Control entity locality Row key provides uniqueness within a partition 16
  • 19. Required Properties All entities must have the following properties: Timestamp PartitionKey RowKey PartitionKey + RowKey = “primary key”
  • 20. Partitions and Partition Ranges Server A Table = Movies [Action - Comedy) Server A Table = Movies Server B Table = Movies [Comedy- Western) 18
  • 21. Table Operations Table Create Query Delete Entities Insert Update Merge – Partial Update Replace – Update entire entity Delete Query Entity Group Transaction (new)
  • 22. Creating a Table Tables can be created and destroyed in code. Wire up your storage in the on_start method. Use a CloudTableClient to access the table.
  • 23. Entity: Inherit the Required Fields By inheriting from TableServiceEntity we can easily store our entity in an Azure Table.
  • 24. Create a Context Class WCF Data Services needs a context class. This represents your connection to the table.
  • 25. Adding an Entity Other operations are just like normal ADO.NET Data Services, such as delete, update, etc.
  • 27. Key Selection: Things to Consider Scalability Distribute load as much as possible PartitionKey is critical for scalability Hot partitions can be load balanced Query Efficiency & Speed Avoid frequent large scans Parallelize queries 25
  • 28. Movie Listing – Solution 1 Why do I need multiple PartitionKeys? Account name as Partition Key Movie title as RowKey since movie names need to be sorted Category as a separate property Does this scale? 26
  • 29. Movie Listing – Solution 1 Single partition - Entire table served by one server All requests served by that single server Does not scale Client Client Request Request Request Request Server A 27
  • 30. Movie Listing – Solution 2 All movies partitioned by category Allows system to load balance hot partitions Load distributed Better than single partition Server A Client Client Request Request Request Request Request Request Request Request Server B 28
  • 31. Key Selection: Case Study 2 Log every transaction into a table for diagnostics Scale Write Intensive Scenario Logs can be retrieved for a given time range 29
  • 32. Logging - Solution 1 Timestamp as Partition Key Looks like an obvious choice It is not a single partition as time moves forward Append only Requests to single partition range Load balancingdoesnot help Server may throttle Server A Applications Client Server B Request Request Request Request 30
  • 33. Logging Solution 2 - Distribute "Append Only” Prefix timestamp such that load is distributed Id of the node logging Hash into N buckets Write load is now distributed Better throughput To query logs in time range Parallelize it across prefix values Server A Applications Client Server B Request Request Request Request 31
  • 36. What is a BLOB Binary Large OBject
  • 37.
  • 42.
  • 43. Windows Azure Storage Services New Features Blobs – Provide a simple interface for storing named files along with metadata for the file New Type of Blob Page Blob New Blob Operations Update Blob Copy Blob Snapshot Blob Lease Blob New Ways of Accessing and Serving Blob Content Custom Domain Names Root Blob Container Content Delivery Network access Shared Access Signatures Drives – Provides durable NTFS volumes for Windows Azure applications to use (Feb 2010)
  • 45. What is a queue? Queues are used to store messages They are FIFO, and one way A queue name must be lower case name, and URL friendly Message Queue Account customer ID order ID http://… order processing cohowinery customer ID order ID http://…
  • 46. Account, Queues and Messages 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 Set a limit for message expiration Messages Message size <= 8 KB To store larger data, store data in blob/entity storage, and the blob/entity name in the message Message now has dequeue count 40
  • 47.
  • 48. What Next Our next UG Meeting on 30th March 2011 Microsoft Office Level 21, Singapore
  • 49. Storage Viewer / Explorer Tools Azure Storage Explorer http://azurestorageexplorer.codeplex.com/ Myazurestorage.com https://myazurestorage.com/ Cloud Xplorer http://clumsyleaf.com/products/cloudxplorer Cerebrata Cloud Storage Studio http://www.cerebrata.com/products/cloudstoragestudio/

Notas del editor

  1. Why we need?Illustrate with traditional way, file server approach
  2. C:\\WindowsAzurePlatformKit\\Demos\\WindowsAzureGuestBookUsingBlobs