austin code camp 2010 asp.net apps with azure table storage presented by chander shekhar dhall...
Post on 28-Dec-2015
218 Views
Preview:
TRANSCRIPT
Austin code camp 2010
asp.net apps with
azure table storage
PRESENTED BYCHANDER SHEKHAR DHALL
csdhall@ChanderDhall.comwww.welcometoyoga.comwww.ChanderDhall.com
Twitter @csdhall
wARNING
• THIS PRESENTATION IS ON A MAC
• Worked on Azure?
Counts
• Specifically Azure Table Storage?
Counts
• Planning to use Azure?
Counts
• Working for Start-Up?
Counts
• Attended PDC?
Counts
• Attending Tech-ED?
Counts
• Anyone Recording?
Counts
Why Azure?
azure
• Windows Azure is the foundation of Microsoft’s Cloud Platform
• It is an “Operating System in the Cloud” and provides Essential Services for the cloud Virtualized Computation Scalable Storage Automatic Management Developer SDK
azure
azure
Azure Roles
• An Azure application is implemented with a Web and/or a Worker role. Developer defines what the role does. Azure takes care of the rest. Each VM assigner to a role.
Azure Roles
Stateless
• Azure Web Roles must be designer to be stateless Request from the same user may reach different
web role instances. Store state in Azure storage or client side.
Stateless
Windows Azure data storage
• Azure allow data to be stored in: Blobs (large items of user data) Tables(simple tables, caches) Queues(service communicationz)
• Massive scale, availability and durability.
• Everything is accessible via RESTful services.
Fundamental data abstractions• Blobs – Provide a simple interface for storing
named files along with metadata for the file
• Tables – Provide structured storage; A Table is a set of entities, which contain a set of properties
• Queues – Provide reliable storage and delivery of messages for an application
Windows Azure data 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• Can always access your data
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
Agenda
• Data model
• Demo – creating Tables
• Demo – creating Blobs
• Demo – creating Queues
• Basic CRUD using .NET and REST
• Best Practices
• Demo – A better Approach
Data model
• TableA Storage Account can create many tablesTable name is scoped by Account
• Data is stored in TablesA Table is a set of Entities (rows)An Entity is a set of Properties (columns)
• EntityTwo “key” properties that together
are the unique ID of the entity• PartitionKey – enables scalability• RowKey – uniquely identifies
the entity within the partition
partition
Table Partition – all entities in table with same partition key value
Application controls granularity of partition
partition
Table Partition – all entities in table with same partition key value
Application controls granularity of partition
Partition KeyItem
Row KeyModelNo
Property 3Sold
Property 4
Laptop M1.0.0.0 10/1/2010
Laptop M1.0.0.1 23/1/2010
PC V1.0 5/2/2007
PC V1.0.1 7/6/2007
PC V1.0.2 8/1/2007
Partiton guidelines
• Performance Use a PartitionKey that is
common in your queries• Entities with same partition key value are
clustered
• Scalability We monitor partition traffic Automatically load balance partitions
• Each partition can potentially be served by a different storage node
• Scale to meet the traffic needs of your application More partitions – makes it easier
to balance load
DEMO
TALK IS CHEAP. SHOW ME THE CODE
- LINUS TORVALDS
entities and properties
• Each Entity can have up to 255 properties
• Every Entity has fixed key properties Partition key Row key
• No fixed schema for rest of properties 2 entities in the same table
can have different properties Properties stored as <Name, TypedValue> pairs
• Each entity has a system maintained version
Automated service management• Our responsibilities
Develop and model the service. Deploy the service to the cloud. Configure the settings and constraints.
• Azure’s responsibilities Run the service. Maintain the service’s health. Configure the settings and constraints.
Azure services
Azure services
Property types
• Partition key and Row key String (up to 64KB)
• Other properties String (up to 64KB) Binary (up to 64KB) Bool DateTime GUID Int Int64 Double
References (bing it out)
• Azure Team Blog.
• Channel 9 webcast/RSS.
• For beginners – Azure platform toolkits
• White papers on Azure Storage.
• Twitter @csdhall
Questions
top related