1. Windows Azure SQL Databases How-to Guide
Windows Azure
Microsoft Expert Student Partner jan.hentschel@studentpartners.de
Jan Hentschel Windows Azure Insider @Horizon_Net
2. Aufbau dieses How-tos
• Einführung und Möglichkeiten
• Erstellen einer Windows Azure SQL Database
• Entwicklung der Beispielanwendung
• Zusammenfassung und FAQ
• Videos unter
• http://bit.ly/RcdYK2
• http://janatdevelopment.com/
3. Agenda
• Einführung
• Vergleiche
• SQL Database vs. SQL Server on-premise
• SQL Database vs. SQL Server on IaaS
• SQL Reporting
• SQL Data Sync
• SQL Federation
5. Einführung
Wie es funktioniert
• Client Layer
• Für die direkte Kommunikation mit der SQL
Database
• Service Layer
• Gateway zwischen der Client und Platform
Layer
• Platform Layer
• Beinhaltet physikalische Dienste für die
Unterstützung der Service Layer
• Infrastructure Layer
• Administrationsschicht für die HW und das
OS
6. Einführung
Grundlagen
• SQL Server as a Service
• Kein Administrationsaufwand
• Entwickelt für Scale-out
• Sowohl für einfache als auch
für komplexe Applikationen
einsetzbar
7. Einführung
Datenbankeditionen
• Web Edition-Datenbank
• Geeignet für kleine Webanwendungen
• Maximale Größe von 1 GB oder 5 GB an Daten
• Business Edition-Datenbank
• Geeignet für unabhängige Softwareanbieter (ISVs), Branchen- und
Unternehmensanwendungen
• Bis zu 150 GB Daten
8. Einführung
Zugriffstechnologien
• Transact-SQL
• Programmiersprachen
• .NET Framework (C#, Visual Basic, F#) via ADO.NET
• C/C++ via ODBC
• Java via Microsoft JDBC Provider
• PHP via Microsoft PHP Provider
• Frameworks
• Odata, Entity Framework, WCF Data Services, NHibernate
• Tools
• SQL Server Management Studio (ab Version 2008 R2)
• SQL Server Kommandozeile (SQLCMD, BCP)
• Etc.
9. SQL Database vs. SQL Server on-premise
Nicht unterstützte SQL Server Features
• Use-Kommando, Linked Servers, verteilte Transaktionen,
verteilte Sichten, verteilte Anfragen
• Service Broker
• Common Language Runtime (CLR)
• SQL Agent
• Native Encryption
• Backup / Restore
10. Vergleiche
SQL Database vs. SQL Server on-premise
SQL Database On-premise
Zugriff TCP/IP Direkte Verbindung zum SQL
Server
Bereitstellung Jeder mit Zugriff auf die In der Regel über einen DBA
Subscription
Authentifizierung SQL Server Authentifizierung SQL Server Authentifizierung
Windows Authentifizierung
Entwicklung Teilmenge von T-SQL verfügbar Volles T-SQL-Spektrum
Verwaltung Logische Administration Logische und physikalische
Administration
Skalierbarkeit Scale-Up: Nicht unterstützt Scale-Up: Manuell
Scale-Out: SQL Database Scale-Out: Manuell
Federation
Hochverfügbarkeit Automatisches Failover Manuelles Failover
Editionen Web Edition Express
Business Edition Workgroup
Standard
11. Vergleiche
SQL Database vs. SQL Server on IaaS
SQL Database SQL Server on IaaS
Zeitaufwand Schneller bei der Erstellung neuer Schneller bei existierenden
Applikationen Applikationen
Administration Hardware: keine Hardware: keine
Software: keine Software: Manuell
Skalierung Scale-Up: Nicht unterstützt Scale-Up: X-Large VM
Scale-Out: SQL Database Scale-Out: Manuell
Federation
Kontrolle Keine Kontrolle über OS und VM Volle Kontrolle über OS und VM
SQL Server Kompatibilität Unterstützt eine große Teilmenge Volle Unterstützung von SQL
der SQL Server 2012-Features Server 2012 (inklusive SSIS, SSAS,
SSRS)
Stärken Keine Bereitstellung und Wartung Volle Kompatibilität mit
von VMs oder einer existierenden Applikationen und
Datenbanksoftware hybriden Anwendungen
12. SQL Reporting
• SQL Server Reporting Services as a
Service
• Automatischer Support für
Hochverfügbarkeit
• Entwickelt für elastisches Skalieren
• Schnelle Bereitstellung
14. SQL Reporting
SQL Reporting vs. SSRS
SQL Reporting SSRS
Werkzeuge BIDS, Report Builder BIDS, Report Builder
Datenquellen SQL Database Verschiedene Datenquellen
Reportverwaltung Windows Azure Developer Portal, Report Manager oder SharePoint
URL-Suche
Entwicklung Keine Erweiterbarkeit bis jetzt Angepasste Datenquellen,
Assemblies, etc.
Sicherheitsmodell SQL Database Authentifizierung Windows Authentifizierung
15. SQL Data Sync
• Sync Framework as a Service
• Ideal für die Synchronisation von
Datensätzen aus einer SQL Database
oder einem SQL Server
• Kein Code notwendig
16. SQL Data Sync
Hauptfeatures
• Komplette Möglichkeiten der Datensynchronisation
• Leichte Handhabung von Datenkonflikten
• Logging und Monitoring
• Skalierung
• Datenfilterung
• Kein Code nötig
17. SQL Federation
• Skaliert auf mehrere hundert Knoten via Sharing
• Online-Splitoperationen um die Verfügbarkeit zu erhöhen
• Automatische Datenwiederherstellung auch bei Änderungen
der Partitionierungsstrategie
18. SQL Federation
Skalierbarkeit von Datenbanken
• Scale-up
• Eine einzelne Datenbank mit allen Daten einer Anwendung
• Schwer handhabbar zu Spitzenzugriffszeiten
• Scale-out
• Mehrere Datenbanken mit verschiedenen unabhängigen Knoten
• Kosteneffektiv
• Sharding und horizontale Partitionierung
19. SQL Federation
Datenbankelastizität
• Erweitert die Skalierbarkeit in die Datenschicht
• Hinzufügen und Entfernen von Datenbankknoten anhand von
Datenbankpartitionierung (Federations)
• Skalierung nach Bedarf ohne Ausfallzeiten
20. Web Ressourcen
Unter folgenden Einstiegspunkten finden sich alle Ressourcen, die für einen Start in Windows Azure wichtig sind
• Windows Azure Homepage
http://www.azure.com
• Kostenloser Demo-Account
http://www.windowsazure.com/en-us/pricing/free-trial/?WT.mc_id=A2DCCE88E
• Windows Azure Development Center
http://www.windowsazure.com/en-us/develop/overview/
• Windows Azure SDKs
http://www.windowsazure.com/en-us/develop/downloads/
• Windows Azure Training Kit
http://www.windowsazure.com/en-us/develop/net/other-resources/training-kit/
• Kundenreferenzen
http://www.microsoft.com/de-de/business/kundenreferenzen/default.aspx?product=53
• Video-Serie zu Windows Azure (10-Minuten-Videos):
http://www.youtube.com/watch?v=kLfaa_19yB4&list=PLC71216BDE26EBE8C
- SQL Server on-premise läuft auf einer Maschine; ein SQL Database Server stellt lediglich einen Tabular Data Stream-Endpunkt dar
Die Web Edition-Datenbank eignet sich am besten für kleine Webanwendungen sowie für Arbeitsgruppen- oder Abteilungsanwendungen. Diese Edition unterstützt eine Datenbank mit einer maximalen Größe von 1 GB oder 5 GB an Daten.Die Business Edition-Datenbank eignet sich am besten für unabhängige Softwareanbieter (Independent Software Vendors, ISVs) sowie für Branchen- und Unternehmensanwendungen. Diese Edition unterstützt eine Datenbank mit bis zu 150 GB Daten, in 10-GB-Inkrementen bis zu 50 GB und dann in 50-GB-Inkrementen.
Zeit für die Migration existierender AnwendungenIaas: SchnellSQL Database: MittelZeit für das Erstellen neuer ApplikationenIaaS: MittelSQL Database: Schnell