Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
Database as a Service - SQL Azure
장현춘, Architect Evangelist개발자 및 플랫폼 총괄, Microsoft Korea
클라우드 컴퓨팅이란 ?
• Definition– Providing IT resources, as a service, in a dynamic and scalable
manner over a network
• What does this mean?– Access from any device (PC, Phone, Multi-Function Devices, TV…)
– Hosted centrally managed software and data– Unlimited processing, CPU, storage, memory, data centers– IT on demand
• *Five essential characteristics of the Cloud: – On-demand self-service – Broad network access– Resource pooling– Rapid elasticity – Measured service
서비스 개발 플랫폼
일반 사용자 대상애플리케이션 서비스
----------------웹메일, 블로그, 위키,검색,
문서 공유, 저장소 공유
기업 사용자 대상애플리케이션 서비스
----------------CRM, ERP, SCM, KMS,
etc
운영체제 서비스
데이터베이스 확장및 연동지원
미들웨어서비스확장 및
연동 지원
일반소비자대상
서비스개발 지원
기업소비자대상
서비스개발 지원
소프트웨어서비스 모델
(SaaS Model)
애플리케이션소프트웨어
서비스 (AaaS,
Application as
a Service)
플랫폼 소프트웨어 서비스
(PaaS,
Platform as a
Service)
인프라스트럭처서비스 (IaaS,
Infrastructure
as a Service)
Windows Azure™ Platform
마이크로소프트 클라우드 플랫폼
SQL Azure
The Power of the SQL Data Platform in the cloud
Leverages existing skills and rich tooling ecosystem
Enables database applications with new, “cloud” capabilities
SQL Azure Database
Customer Value Props
Self-provisioning and capacity on demand
Symmetry w/ on-premises database platform
Automatic high-availability and fault-tolerance
Automated DB maintenance (infrastructure)
Simple, flexible pricing – “pay as you grow”- AD Federation (LiveId /AppFabric AC)
Relational database service
• SQL Server technology foundation
• Highly symmetrical
• Highly scaled
• Highly secure
Database “as a Service” – beyond hosting
Highly scaled out relational database as a service
Browser
MSDatacenter
SOAP/RESTHTTP/S
SQL Azure Database (Windows Azure Compute)
Windows Azure Compute
T-SQL (TDS)
App Code(ASP.NET)
SQL Server Reporting Server
(on-premises)
Astoria/REST - EDMHTTP/S
SQL AzureDatabase
T-SQL (TDS)
SQL Azure 접근 방법 변화
Evo
lves
SQL Azure
TDS + TSQL Model
Web App
SQL Client*
Windows Azure
BrowserApplication
Application
REST Client
REST (Astoria)
ADO.Net + EF
Application
SQL Client*
Cloud
HTTP
HTTP+
REST
TD
S
* Client access enabled using TDS for ODBC, ADO.Net, OLEDB, PHP-SQL, Ruby, …
Data
Cente
r
ODBC, OLEDB, ADO.Net PHP, Ruby, …
OLD SDS
REST/SOAP + ACE Model
Web App
REST Client
Windows Azure
BrowserApplication
Application
REST Client
HTTP
HTTP+
REST
Data
Cente
r
Cloud
가능한 시나리오들
• Departmental Applications– Simple application built by individual or department– Need simple deployment, self-management, IT: “Empowermen
t and Governance”
• Web Applications– Small business or startup that uses the cloud as their IT– Simple deployment, self-management, scale on demand
• ISV– ISV hosting software on behalf of customer– Multi-tenant support for billing and isolation
• Data Hub (Shortly After V1)– Sharing and aggregating of data across tiers and across enter
prises– Centralized place for data, high scale, sync with existing data
sources
Data Hub “An aggregation of Enterprise, Partner, Desktop, and Device data within SQL Azure”
DesktopClient App
Device
Enterprise
EnterpriseOn-premises
App
User Management
Device Management
Sync Gateway
Business Logic / Rules
SQL Azure
Windows Azure
Azure App
Sync Client
Client App
Sync Client
애플리케이션에서의 접근
MSDatacenter
SOAP/RESTHTTP/S
SQL Azure access from within MS Datacenter
(Azure compute – ADO.NET)
Windows Azure
T-SQL (TDS)
MSDatacenter
T-SQL (TDS)
App Code / Tools
SQL Azure access from outside MS Datacenter
(On-premises – ADO.NET)
App Code
(ASP.NET)
ADO.NET Data Svcs/REST - EFHTTP/S
Code Far
SQL Data Services
SQL Data Services
Application/ Browser
Code Near
SQL Azure Service Provisioning
• Each account has zero or more servers– Azure wide, provisioned in a common portal
– Billing instrument
• Each server has one or more databases– Contains metadata about the databases and u
sage
– Unit of authentication and Security
– Unit of Geo-location
– The server is a logical grouping of your DBs
• Each database has standard SQL objects– Unit of consistency
– Contains Users, Tables, Views, Indices, etc.
Account
Server
Database
SQL Azure Network Topology
Application
Load Balancer
TDS (tcp:1433)
TDS (tcp: 1433)
TDS (tcp: 1433)
Applications use standard SQL client libraries: ODBC, ADO.Net, …
Load balancer forwards „sticky‟ sessions to TDS protocol tier
Data Node Data Node Data Node Data Node Data NodeData Node
Gateway Gateway Gateway Gateway Gateway Gateway
Scalability and Availability: Fabric, Failover, Replication and Load balancing
Gateway: TDS protocol gateway, enforces AUTHN/AUTHZ policy; proxy to CloudDB
Security Boundary
Microsoft Codename “Dallas”
• Marketplace
• Standardized APIs
• Analytics and Reporting
All powered by the Windows Azure platform
Demo
SQL Azure - Deployment
Web Portal(API)
SQL AzureTDS
DB Script
SQL Azure - Accessing databases
Web Portal(API)
SQL AzureTDS
Your App
Change Connection String
Database Replicas
Replica 1
Replica 2
Replica 3
DB
Replica 4
!
SQL Azure - Database Monitoring & Recovery
Web Portal(API)
SQL AzureTDS
Your App
!
SQL Server & SQL Azure 호홖기능
In Scope for v1
• Tables, indexes and views
• Stored Procedures
• Triggers
• Constraints
• Table variables, session temp tables
• …
Out of Scope for v1
• Distributed Transactions
• Distributed Query
• CLR
• Service Broker
• Spatial
• Physical server or catalog DDL and views
가격 정책
Web Edition
• 1 GB Database
• $9.99 / month
• Bandwidth– $0.10 /GB inbound
– $0.15 /GB outbound
Business Edition
• 10GB Database
• $99.99 / month
• Bandwidth– $0.10 /GB inbound
– $0.15 /GB outbound
Specified by MAXSIZE on CREATE DATABASE command or portal
Can NOT switch betweenen Web and Business Editions
Monthly billing period
SQL Azure 사례 - EHA
• Exchange Hosted Archive (EHA) is high scale archival service
• Runs on SQL Azure infrastructure
– In production prior to SQL Azure v1
• Rebuilt to address cost and scale issueshttp://www.microsoft.com/casestudies/Case_Study_Detail.aspx?CaseStudyID=4000003098
Reduced COGS with increased customer and business benefit: Larger scale (e.g. larger customers ~20TB+ each)
More self-managing (e.g. fault-tolerance)
Better query performance for fan-out
Faster provisioning of new customers
SQL Azure
Castellan
Castellan Venue DB
Castellan Venue DB‟s
Venue 1Partition(s
)
Castellan Venue DB
Castellan Venue DB‟s
Venue 2 Partition(s
)
Castellan Venue DB
Castellan Venue DB‟s
Venue N Partition(s
)
One application DB, many venue DB‟s – each partitioned in to many parts (40+)
...
Azure Roles
http:// TicketDirect .* Dynamic Worker(tasks
uploaded as blobs)
PartitionerWorker
Azure StorageQueues for communication between clients and roles
-- ----- -
-- ----- -
Tables to record server & partition information
Blobs to store web and worker role resources
Client Applications
Castellan.old (VB6)
Castellan.Azure• Box Office sales• Ticket Printing • System Administration • Venue/Event Management• Partitioning
.Net Service Bus
WCF
On PremiseSQL Server
Castellan Venue
Distributed Cache Worker
MemCache
SQL Azure 사례 - TicketDirect
Demo
융합의 시대
On-Premises Applications
Offline-Capable Cached ModeApplications
Sync
Browser Clients
Business-to-
Business
Windows Azure Platform
© 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.