Christophe Codourey Consultant BI Urs Meier Principal Consultant
Technology competence Oracle, Microsoft, IBM, Open Source Business Intelligence Business Communication Application Development Managed Services Existing IT customer infrastructure Training
Currently 13 locations with over 540 employees Baden, Basel, Bern, Brugg, Lausanne, Zurich Düsseldorf, Frankfurt, Freiburg, Hamburg, Munich, Stuttgart Vienna Since January 2008, the Trivadis Group has a qualified majority of shares in MIK AG, based in Brugg Financially independent and sustainably profitable Key figures in 2008 Consolidated income CHF 108 million / EUR 68 million Services for more than 650 clients in over 1‘600 projects Over 150 Service Level Agreements More than 5'000 training participants per year Research budget: CHF 6.0 million / EUR 3.6 million
Azure Overview SQL Data Services (SDS) SQL Server ↔ SDS Compatibility SDS Client Applications
Designed to be: “File System in the cloud” lowest cost efficient solution for simple data storage and retrieval in the cloud can store Queues Blobs ISAM style, simple Tables (non-relational) Designed to be: “File System in the cloud” lowest cost efficient solution for simple data storage and retrieval in the cloud can store Queues Blobs ISAM style, simple Tables (non-relational)
Designed to be: “File System in the cloud” lowest cost efficient solution for simple data storage and retrieval in the cloud can store Queues Blobs ISAM style, simple Tables (non-relational) Designed to be: “File System in the cloud” lowest cost efficient solution for simple data storage and retrieval in the cloud can store Queues Blobs ISAM style, simple Tables (non-relational)
DatabaseDatabase Data Sync Reference Data ETLETL Data Mining ReportingReporting
SQL, Tables and Rows T/SQL via TDS A uthority, C ontainer, E ntity SOAP/REST Simple Tables, Blobs, Queues SOAP/REST Massive Architecural Change Key-Value DB Existing KnowHow and Applications New Web 2.0 and Silverlight Applications Other Vendors like Amazon New Web 2.0 and Silverlight Applications Other Vendors like Amazon
Familiar SQL Server relational model Uses existing APIs & tools Built for the Cloud with availability and scale Accessible to all from PHP, Ruby, and Java Clear Feedback: “I want a database in the Cloud” Your Apps Tabular Data Stream(TDS) SQL Data Services TDS Endpoint ADO.NET Entity Framework SQL Server Drivers
A uthority, C ontainer, E ntity SOAP/REST SQL, Tables and Rows Simple Tables, Blobs, Queues SOAP/REST Existing KnowHow and Applications New Web 2.0 and Silverlight Applications Other Vendors like Amazon New Web 2.0 and Silverlight Applications Other Vendors like Amazon SOAP/REST Data Services T/SQL via TDS
Low-cost and zero friction addresses web/dept workloads Target is 3 to 10 GB Databases High compatibility with existing SQL Server offering Resources Dedicated Shared Low High “Friction”/Control SDS (RDBMS) Hosted On-premise
Each account has a billing relationship with Microsoft owns one or more virtual servers Each server has one or more databases including virtual master each database limited in size one or more logins Each database has one or more SQL users Server=server1.data.database.windows.net Database=testDB (maps to testuser)
Master AdventureWorks Northwind Pubs Master AdventureWorks Northwind Pubs Master Pubs Northwind Pubs Northwind Adventureworks SQL Server (on premises) Master AdventureWorks Northwind Pubs Master AdventureWorks Northwind Pubs SQL Data Services
One SQL Server instance per physical machine Multiple databases per instance Randomly distributed by infrastructure Ressource sharing Scalable HA technology Automatic replication and failover Provisioning, metering and billing infrastructure Machine 5 SQL Instance SQL DBs DB5 DB1 DB3 DB2 Provisioning (databases, accounts, roles…), Metering, and Billing Machine 6 SQL Instance SQL DBs DB1 DB6 DB2 DB3 Machine 4 SQL Instance SQL DBs DB1 DB2 DB3 DB4 Machine 7 SQL Instance SQL DB DB4 DB5 DB1 DB7 Scalability and Availability: Fabric, Failover, Replication, and Load Balancing
Select * from Customer Primary (for Customer) New Primary (for Customer)
Update Customer Set Priority = 1 Primary (for Customer)
TDS Gateway Front-end Node Protocol Parser Gateway Logic TDS Session 1 Front-end Node Protocol Parser Gateway Logic TDS Session 2 TDS Session 2 Master Cluster Master Node Data Node Components Partition Manager Master Node Data Node Components Partition Manager Utility Layer Account Database Billing/Usage Database Service Platform Monitoring Load Balancing Node Provisioning Roles 33 Machine 5 SQL Instance SQL DB DB5 DB1 DB3 DB2 Scalability and Availability: Fabric, Failover, Replication, and Load balancing Machine 6 SQL Instance SQL DB DB1 DB6 DB2 DB3 Machine 4 SQL Instance SQL DB DB1 DB2 DB3 DB4 Machine 7 SQL Instance SQL DB DB4 DB5 DB1 DB7 Scalability and Availability: Fabric, Failover, Replication, and Load balancing
A uthority, C ontainer, E ntity SOAP/REST SQL, Tables and Rows Simple Tables, Blobs, Queues SOAP/REST Existing KnowHow and Applications New Web 2.0 and Silverlight Applications Other Vendors like Amazon New Web 2.0 and Silverlight Applications Other Vendors like Amazon T/SQL via TDS identical?
In Scope for v1 (likely) Tables, indexes and views Stored Procedures Triggers Constraints Table variables, session temp tables (#t) … Out of Scope for v1 (likely) Distributed Trans/Query CLR Service Broker Spatial Physical server or catalog DDL and views Global tables(##t)? Traditional Backup / Restore
API for provisioning Web SQL Server Management Studio (SSMS) Basically available, but will have obviously some restrictions e.g. no sp_configure Standard Query Tools
Uses regular SQL security model Authenticate logins, map to users and roles Authorize users and roles to SQL objects Limited to standard SQL Auth logins Username + password Encryption TDS supports SSL No database encryption at all in V1 TDE Encryption Functions
Scalability comes at cost of consistency ACID (Atomicity, Consistency, Isolation, Durability) Write n nodes on Commit, read from max. n nodes BASE (Basically available, soft state, eventually consistent) Write n nodes on Commit synchronize more nodes later Read on more than n nodes SDS V1 Implements (a very) ACID model Write 3 nodes Read 1 node
Scale Performance Leader election SDS fabric can switch the primary node for a database to a less busy node SDS may throttle your session if it takes too much resources BYOP (bring your own partitioning) Scale Size of Database Current offering is targeted at departmental databases BYOP (bring your own partitioning)
Clients connect directly to a database Cannot hop across DBs Any database client library for SQL Server can be also used for SDS ODBC, OLE DB, ADO.NET Provider for SQL Server ADO.NET Entity Framework ADO.NET Data Services (Astoria) LINQ to SQL PHP native SQL Client …
Cloud SDS Database TDS + TSQL Model Windows Azure Compute REST (Astoria) ADO.Net* + EF Browser HTTP Application SQL Client * TDS * Client access enabled using TDS for ODBC, ADO.Net, OLEDB, PHP-SQL, Ruby, … Data Center Web Srv SQL Client * HTTP+REST Application REST Client * Web App SQL Client * HTTP+SOAP Application SOAP Client *
“Code far” scenario TDS is not designed for high latency networks Recommendation Batch SQL statements Use Functions/ Stored Procedures Table value in parameters are very handy
DatabaseDatabase Data Sync Reference Data ETLETL Data Mining ReportingReporting
Symmetric Programming ModelData Hub Aggregation Initial services – core RDBMS capabilities as a service (SDS), Data Sync and Data Hub Future Offerings Additional data platform capabilities as a service: BI/DSS, DW New services: Reference Data, Secure Data Hub
On Premises Assets and Data Mobile Users
Scalability Partitioned databases Geo-location and geo-redundancy Flexibility Distributed query Support for multiple levels of hardware and software isolation Security Future AD Federation WLID, etc as alternate authentication protocols Encryption
Invitation CTP – On-board invitation-only customers + some current Public CTP – On-board all early adopters Commercial Availability with Windows Azure in 2009 MIX ‘09TechEd Invitation CTP Public CTP Commercial Availability Migration Mar 09May 09Jul 09Nov 09Sep 09Apr 09Jun 09Aug 09Oct 09 PDC Internal Adoption
High Availability Including Data Hub Scenario Fast and easy Deployment Ideally “Code near” scenario with Web apps Well known programming model Low learning curve Reliability Confidence that data will not be lost Replication, back-up Defined SLA, at which Cost (?)
Team Blog MSDN Development Center us/sqlserver/dataservices the Azure start portal
14 – 15 avril 2010, CICG
Classic Sponsoring Partners Premium Sponsoring Partners