Soumitra Sengupta Software Architect Microsoft Corporation BB23.

40
SQL Data Services A lap around Soumitra Sengupta Software Architect Microsoft Corporation BB23

Transcript of Soumitra Sengupta Software Architect Microsoft Corporation BB23.

SQL Data ServicesA lap around

Soumitra SenguptaSoftware ArchitectMicrosoft Corporation

BB23

Azure Services Platform and SQL Services Value Proposition and Scenarios Architecture Building Applications using SQL Data Services Release Plans Conclusion and Takeaways

Talk Outline

Azure™ Services Platform

Azure Services Platform

SQL Services FuturesExtending the SQL Data Platform to the cloud

Data services tier of the Azure Services Platform Built on SQL Server foundation Broad data platform capabilities as a service

Friction-free provisioning, scaling Significant investments in scale, HA, lights-out

operation and TCO

Database

Reference Data

Reporting Data Sync

ETLData Mining

Scalable, Available Data ServicesStorage and Database Services

Windows Azure Storage “Essential storage service in

the cloud”

Provides a core set of non-relational storage and retrieval abstractions at massive scale

SQL Data Services “Premium database service in

the cloud”

Extends the rich capabilities of the SQL data platform to the cloud at scale Relational data processing over

structured and unstructured data Integrate with key data platform

capabilities – e.g. Data Analytics, Reporting, ETL

Azure Services Platform and SQL Services Value Proposition and Scenarios Architecture Building Applications using SQL Data Services Release Plans Conclusion and Takeaways

Talk Outline

Azure Services Platform and SQL Services Value Proposition and Scenarios Architecture Building Applications using SQL Data Services Release Plans Conclusion and Takeaways

SDS is built on three key pillars1. Storage for all data types from

birth to archival2. Rich data processing services3. Operational excellence

SQL Data Services (SDS)“Database as a Service”

Scale-free

High availability

Geo replication

On-demand service

Easy to use

Easy to manage

Data privacy

Competitive pricing

Line of Business Applications Delivered as a Service

Collaborative Web Applications Shared Data Hub Data Warehousing and

Business Intelligence

Key Scenarios

Trey Research Media Marketplace

Photos andMetadata

SearchAnalytics

Photos

Photographer

Photographer Trey Exec

Media BuyerPhotos

Search

Normalized relational data and unstructured data

Complex relational queries across all data

Query/processing on rich data types; e.g., spatial

Business Data Analytics on/off premise

Scale-free High availability Geo distribution Broad reach Agile development

Multi-master data synchronization

Occasionallyconnected clients

Photo ManagementWPF App

Corporate ManagementSharePoint App

PhotographerIn FieldMobile App

CustomerWeb App

Trey Research

Trey Research Media Marketplace Soumitra Sengupta

demo

K2http://www.k2.com

partner

(USE THIS SPACE FOR PRODUCT LOGOS WHEN WHITE BACKGROUND

IS REQUIRED)DELETE WHITE RECTANGLES IF NOT

BEING USED

Adriaan Van WykCEO

K2 Background

Founded in 2000 – Microsoft Global ISV Partner Over 1,700 customers across 45 countries Strategic relationship with Microsoft across

23 technologies K2 enables composition, implementation,

and management of Enterprise Workflow and Process Applications… That integrates people, processes and line of

business information… Visually designed and assembled from reusable entities… Maximizing developer productivity, improving application

lifecycle management, and maximizing agility in application change…

Business ScenarioOrder management

Business ChallengesCreate an order processing application that

integrates Salesforce.com customer data with order and product data

CriteriaMany orders are fulfilled by a 3rd party,

so needed separate data location Product catalog is maintained by a

different group Did not want to put all in SF.com

ApproachChose SDS for orders and products database

because of its enterprise class approach to Cloud database services and ease of integration with K2 into K2 SmartObject layer

BenefitsAchieved goals at lowest possible price point

and highest ROIQuick time to market with app orchestration

across multiple cloud servicesAchieved the best of a software + services model

create

delete

update

List

Customers(SF.com) Orders

SDS

ProductsSDS

Sales MgrsSharePoint list

K2 SMART Objects

New Sales Order Form Completed

Look up Sales Mgr and send for Approval

Delete Order and send e-mail

Approval View Sales Mgr

Approved

Create View

Record Order and update Order Status

to Approved

Rejected

REPORT

Process

K2

Adriaan Van Wyk

demo

Talk Outline

Azure Services Platform and SQL Services Value Proposition and Scenarios Architecture Building Applications using SQL

Data Services Release Plans Conclusion and Takeaways

Architecture

Data Access Lib

SDS Runtime

REST / SOAP

Data Access Lib

SDS Runtime

REST / SOAP

Data Access Lib

SDS Runtime

REST / SOAP

Data Access Lib

SDS Runtime

REST / SOAP

Data Access Lib

SDS Runtime

REST / SOAP

Data Access Lib

SDS Runtime

REST / SOAP

Data Access Lib

SDS Runtime

REST / SOAP

Mgmt. Services

Distributed Data Fabric

SQL Server

Mgmt. Services

Distributed Data Fabric

SQL Server

Mgmt. Services

Distributed Data Fabric

SQL Server

Mgmt. Services

Distributed Data Fabric

SQL Server

Mgmt. Services

Distributed Data Fabric

SQL Server

Mgmt. Services

Distributed Data Fabric

SQL Server

Mgmt. Services

Distributed Data Fabric

SQL Server

SQL Data Services Front End

SQL Data Services Back End Master ClusterData Cluster

SDS - Reliable Master Cluster Manager

SDS – Data Nodes

SDS - Back-end

SQL Server

Database

Data And Master Nodes

Data Node 105

Data Node 104

Data Node 103

Data Node 102

Data Node 101

P1

S1

P2S2

S1S2

P6 S6P5

S5S6

P3

S5

S3

P3

P4 S4S4

P1P2P3P4P5P6

Partition Manager

Global Partition

Map

SQL Server

Partition Placement

Advisor

Leader Elector

Distributed Data Fabric

Extreme scale is achieved through partitioning data into containers SDS apps are container-aware

Requests include a target container Implementation is opaque to users

Containers – unit of consistency Replicated for reliability and HA Reconfigured during failover Used for load balancing

Trade off app transparency and latency for scale, throughput and better TCO Rich SQL-like operations within

a container Some operations cross-containers Container size limitations

Data Partitioning

Container X

MasterClusterManager

Container look-up

SDS Back End

SDS Front End

Request forContainer X

Fetch container map

Connect to BEserver holdingContainer X

Talk Outline

Azure Services Platform and SQL Services Value Proposition and Scenarios Architecture Building Applications using SQL

Data Services Release Plans Conclusion and Takeaways

Data Model And ACE Concepts

Unit ofgeo-location and billing

Tied toDNS name

Collectionof Containers

Authority Container Entity

Unit of Consistency

Scope for Query and Update

Collectionof Entities

Unit of Storage Property Bag

of Name/Value pairs

No Schema Required

ConceptsEntity

Entity properties may differ in type and instanceProperty Type Value

Metadata ID EntityId VWGOLF-01

Kind EntityKind Car

FlexProps Description String Reliable, one owner, …

Price Numeric 12000.00

ListingDate Datetime 01-01-2008

LocationZip String 98052

Property Type Value

Metadata ID EntityId MINICOOPER-264

Kind EntityKind FunCar

FlexProps Description String Reliable, one owner, …

Price Numeric 12000.00

ListingDate String 1st January, 2008

LocationZip String 98052

EngineSize Numeric 1600

DifferentKinds

DifferentInstance

Types

Additional Property

Creating Authorities, Containers & Entities Soumitra Sengupta

demo

SDSQuery language

Textual query language through web-service head, passed in as literal text string

Language patterned after C# LINQ syntax

from e in container where e.Kind == “FunCar” &&

e[“Zip”] == 98053 && e[“Model”] == “Mini Cooper”

select e

Operator semantics handles lack of schema contract e[“Zip”] could be number in one entity and string in another e[“Tag”] == “CUSTOMER” means look for instances where

Tag is a string and has value “CUSTOMER”; i.e., type inference using literal syntax

Query supported over metadata and data properties

Finally, A Data Service With JOIN

All orders for customers in the stateof Washington, ordered by valuefrom c in entities.OfKind(“Customer”)

where c[“State”] == “WA”

from o in entities.OfKind(“Order”)

where o[“CustomerId”] == c.Id

orderby o[“Value”] descending

select o

Customer{ Id; Kind; Version; Name; Address; State;}

Order{ Id; Kind; Version; CustomerId; ItemId; Value;}

SDS Queries

Soumitra Sengupta

demo

Application Design Considerations

Designing for scale using multiple containers Entity and Containers limited in size

Number of properties/size of entity (MB) Number of entities within a container (GB)

Containers map to single replica in SDS BE Each container has limited IOPs and CPU capacity

Designing for latency Code (biz logic) has higher latency to

data service Batching to reduce service request latency Use of authorities to provide geo-location

Gomez Monitoring Results

• Time Period : 10 a.m., Sunday, 26th to 10:30 a.m. Monday, 27th

• Average Response Time : 0.099 s• Availability : 100 %

Metering

Soumitra Sengupta

demo

Authentication And Authorization

Basic authentication – username and password

Integrate with .NET Access Control Services for richer authentication models Basic Authentication Claims based access control

Role based authorization – Future

Talk Outline

Azure Services Platform and SQL Services Value Proposition and Scenarios Architecture Building Applications using SQL Data Services Release Plans Conclusion and Takeaways

Public CTP Of SQL Data Services

Mid November

announcing

Transition to Public CTP

When you register for Azure Services Platform at PDC You will be notified when we open Public CTP Your credentials will work on Public CTP

If you already have an account for private beta Your credential and data will be migrated You will be notified via email about the

new endpoints

Talk Outline

Azure Services Platform and SQL Services Value Proposition and Scenarios Architecture Building Applications using SQL Data Services Release Plans Conclusion and Takeaways

Conclusions And Key Takeaways

Cloud Computing is here . . . Play with the bits in the Hands on Labs Watch our partners at Bar Chat in the Lounge Get registration code to start using service

Azure Service Platform is a comprehensive services platform in the cloud

SQL Data Services is the data tier ofAzure Services Platform SQL Server is the foundation Rich data services over time

Public Community Technology Preview in mid November

Resources

Azure Services Platform Home http://www.microsoft.com/azure/default.mspx

SQL Services Homehttp://www.microsoft.com/azure/sql.mspx

SQL Data Services Dev Centerhttp://msdn.microsoft.com/en-us/sqlserver/dataservices/default.aspx

SQL Data Services Documentationhttp://msdn.microsoft.com/en-us/library/cc512417.aspx

SQL Services Team Blog http://blogs.msdn.com/ssds SQL Services Labs

http://www.microsoft.com/azure/sqllabs.mspx

Related SessionsCode Title Room Time

BB23 SQL Data Services : A Lap Around 502A 10/28/2008 3:30PM-4:45PM

BB03 SQL Data Services : Under the Hood 404A 10/30/2008 8:30AM-9:45AM

BB14 SQL Data Services: Futures 408B 10/29/2008 10:30AM-11:45AM

BB52 SQL Data Services: Tips and Tricks for High-Throughput Data-Driven Applications 411 10/28/2008 12:45PM-1:30PM

BB40 Sync Framework: Enterprise Data in the Cloud and on Devices 408A 10/28/2008 5:15PM-6:30PM

TL30 Microsoft Sync Framework Advances 515B 10/27/2008 1:45PM-3:00PM

BB16 SQL Server 2008: Beyond Relational 406A 10/28/2008 1:45PM-3:00PM

BB26 SQL Server 2008: Business Intelligence and Data Visualization 515A 10/28/2008 1:45PM-3:00PM

BB24 SQL Server 2008: Deep Dive into Spatial Data 404A 10/29/2008 3:00PM-4:15PM

BB07 SQL Server 2008: Developing Large Scale Web Applications and Services 411 10/28/2008 1:45PM-3:00PM

BB37 SQL Server 2008: Developing Secure Applications 515A 10/29/2008 12:00PM-12:45PM

BB25 SQL Server 2008: New and Future T-SQL Programmability 515A 10/29/2008 1:15PM-2:30PM

PC40 SQL Server Compact: Embedding in Desktop and Device Applications 402A 10/29/2008 3:00PM-4:15PM

TL42 Microsoft SQL Server 2008: Powering MSDN 411 10/29/2008 12:00PM-12:45PM

TL14 Project "Velocity": A First Look 403AB 10/28/2008 1:45PM-3:00PM

TL56 Project "Velocity": Under the Hood 403AB 10/28/2008 3:30PM-4:45PM

PC44 Windows 7: Programming Sync Providers That Work Great with Windows 408B 10/28/2008 12:45PM-1:30PM

Evals & Recordings

Please fill

out your

evaluation for

this session at:

This session will be available as a recording at:

www.microsoftpdc.com

Please use the microphones provided

Q&A

© 2008 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.