rené balzano technology solution professional data platform microsoft schweiz sql azure...
TRANSCRIPT
René BalzanoTechnology Solution Professional Data PlatformMicrosoft Schweiz
SQL AzureAdministration
SQL Azure, kurz vorgestelltFeatures - was SQL Azure derzeit kann, und was noch nichtPlattform - Leistungsmerkmale und LeistungsgrenzenSzenarien- derzeit typische Einsatzmodelle für SQL Azure
Werkzeuge
DBA Aufgaben in SQL AzureGegebenes in SQL Azure - woran Sie nicht mehr denken müssenSubscription, Server, DB - die richtige Edition wählenClient-Konfiguration - Libraries und AliasesSecurity - Datenbank-Accounts und BerechtigungenImport, Export und Backup - die verfügbaren SzenarienMonitoring, Maintenance - woran Sie noch zu denken haben
Q&A
Agenda
AgendaSQL Azure, kurz vorgestellt
Features - was SQL Azure derzeit kann, und was noch nichtPlattform - Leistungsmerkmale und LeistungsgrenzenSzenarien- derzeit typische Einsatzmodelle für SQL Azure
Werkzeuge
DBA Aufgaben in SQL AzureGegebenes in SQL Azure - woran Sie nicht mehr denken müssenSubscription, Server, DB - die richtige Edition wählenClient-Konfiguration - Libraries und AliasesSecurity - Datenbank-Accounts und BerechtigungenImport, Export und Backup - die verfügbaren SzenarienMonitoring, Maintenance - woran Sie noch zu denken haben
Q&A
SQL Azure: Miete einer Datenbank, nicht eines Servers(keine RDP-Verbindungen o.ä.)
Storage und Compute Cycles skalieren bis zu gegebenen Limits automatisch
Physische Hosts =Commodity HW,derzeit 8-Core,32 GB RAM,12 Disks (DAS)
Verfügbarkeit 99.9%(<9h Downtime p.a.)
Database as a Service
SQL Azure basiert auf SQL Server, ist aber nicht SQL Server
Technische GemeinsamkeitenTransact-SQL und TDS Prokotoll (Tabular Data Stream)Mehrheit der Features
Technische Unterschiede gegenüber SQL Server (derzeit)Audit, Backup/Restore, CDC, CLR, Compression, Data Collector,Ext. Keys, Extended Events, Filestream, Full-Text Search, Mirroring,Master Data Services, Policies, TDE, UDA, UDT, Resource Governor, Sparse Columns, PowerShell Support, Replication, Service Broker,SQL Server Agent, SQL Server Utility, XML Indexing
Features heute
SQL Azure erschliessenhttp://www.microsoft.com/windowsazure/offers/
SQL Azure abonnieren https://mocp.microsoftonline.com
SQL Azure verwaltenhttp://windows.azure.com
SQL Azure Reporting ServicesSQL Azure DataSync (Sync Framework)
Synchronisation von Datenbanken untereinander(Azure - lokal, Azure - Azure, lokal - lokal)
Database FederationTransparentes Verteilen des Inhalts einer Tabelle auf verschiedene Datenbanken
SQL Azure OData ServiceREST-Protokoll (http) für Web-basierte DB-Kommunikation
SQL Azure Import/Export (DAC)Backup / Restore as a Serviceu.a.
Features demnächst
Features demnächstwww.sqlazurelabs.com
SQL Azure Data Sync
Data in the CloudInternet-Datenbanken für interne oder öffentliche NutzerPublikation direkt oder via Azure Data Market (https://datamarket.azure.com/)Datennutzung mit Standardanwendungen wieExcel, PowerPivot, SharePoint u.a.Mash-up aus verschiedenen Quellen (Azure, lokal, Data Market)
Konsolidieren dezentraler, kleiner Datenbankenz.B. MS Access Konsolidierung(ab SQL Server Migration Assistant 4.2 automatisiert, aktuell 5.0)
Laufende oder neue EntwicklungsprojekteBetriebsintern oder Standardsoftware eines ISVAngepasst an SQL Azure Feature Sets und Cloud-Connecting
SQL Azure Szenarien heute
Data in the Cloud
Restore eines SQL Server Datenbank-Backupsin SQL AzureAnpassen des Connection Strings einer bestehenden, nicht für SQL Azure adaptiertenSQL Server-Anwendung
Derzeit kein Szenario
AgendaSQL Azure, kurz vorgestellt
Features - was SQL Azure derzeit kann, und was noch nichtPlattform - Leistungsmerkmale und LeistungsgrenzenSzenarien- derzeit typische Einsatzmodelle für SQL Azure
Werkzeuge
DBA Aufgaben in SQL AzureGegebenes in SQL Azure - woran Sie nicht mehr denken müssenSubscription, Server, DB - die richtige Edition wählenClient-Konfiguration - Libraries und AliasesSecurity - Datenbank-Accounts und BerechtigungenImport, Export und Backup - die verfügbaren SzenarienMonitoring, Maintenance - woran Sie noch zu denken haben
Q&A
Azure Management Portal (http://windows.azure.com)SQL Azure Database Manager (im Portal)
SQL Server Management Studio, BIDS (SSIS)SQL Azure-aware ab SQL Server 2008 R2Server-Einbindung wie herkömmlicher SQL ServerObjektdialoge derzeit via generiertes T-SQL
STATISTICS IO, Client Statistics usw.Unterstützte Catalog Views und DMV
SQL Azure Migration Wizard (http://sqlazuremw.codeplex.com/)
SQL Azure Werkzeuge
Database Manager
SSMS und SQL Azure
Migration Wizard
Databasesys.dm_db_partition_stats
Usagesys.database_usagesys.bandwidth_usagesys.dm_database_copiessys.firewall_rules
Unterstützte DMVExec
sys.dm_exec_connectionssys.dm_exec_query_plansys.dm_exec_query_statssys.dm_exec_requestssys.dm_exec_sessionssys.dm_exec_sql_textsys.dm_exec_text_query_plan
Transactionssys.dm_tran_active_transactionssys.dm_tran_database_transactionssys.dm_tran_lockssys.dm_session_transactions
Unterstützte Catalog Views sys.all_columns sys.events sys.stats_columns
sys.all_objects sys.foreign_key_columns sys.synonyms
sys.all_parameters sys.foreign_keys sys.system_columns
sys.all_sql_modules sys.identity_columns sys.system_objects
sys.all_views sys.index_columns sys.system_parameters
sys.check_constraints sys.indexes sys.system_sql_modules
sys.columns sys.key_constraints sys.system_views
sys.computed_columns sys.objects sys.table_types
sys.database_permissions sys.parameters sys.tables
sys.database_principals sys.plan_guides sys.trigger_event_types
sys.database_role_members sys.procedures sys.trigger_events
sys.databases sys.schemas sys.triggers
sys.default_constraints sys.sql_logins sys.types
sys.event_notification_event_types sys.sql_modules sys.views
sys.event_notifications sys.stats sys.xml_schema_collections
Weitere Client-Werkzeugesqlcmd (nicht: osql)
Data-Tier Application (DAC)SQL Server Analysis Services (als Client)SQL Server Reporting Services (als Client)SQL Server Management Objects (SMO, Client-seitig)SQL Server Migration Assistant (SSMA)MS Office, ab 2010 (Excel, Access, PowerPivot usw.)
AgendaSQL Azure, kurz vorgestellt
Features - was SQL Azure derzeit kann, und was noch nichtPlattform - Leistungsmerkmale und LeistungsgrenzenSzenarien- derzeit typische Einsatzmodelle für SQL Azure
Werkzeuge
DBA Aufgaben in SQL AzureGegebenes in SQL Azure - woran Sie nicht mehr denken müssenSubscription, Server, DB - die richtige Edition wählenClient-Konfiguration - Libraries und AliasesSecurity - Datenbank-Accounts und BerechtigungenImport, Export und Backup - die verfügbaren SzenarienMonitoring, Maintenance - woran Sie noch zu denken haben
Q&A
HochverfügbarkeitGrund:Datenbanken werden automatisch und transparent dreifach an mindestens zwei örtlich getrennten Standorten angelegt
SkalierungGrund:Automatisches Load Balancing lagert Datenbanken und Prozesse auf dedizierte physische Hosts aus, wenn Lastspitzen auftreten
Worum Sie sich nicht mehr zu kümmern habenViele Aspekte der Systemdimensionierung und der LastprognoseHardware, Disk I/O, RAID, Partitionen, Partition Alignment & Co.Softwareinstallation, Patching, RebootingLizenzierung, CALs, Prozessoren
Gegebenes in SQL Azure
1 Windows Live ID-> mehrere Subscriptions
1 Subscription-> 1 SQL Azure Server
SQL Azure Server
SQL Azure SubscriptionSQL Azure Subscription
Windows Live ID
SQL Azure Subscription
1 SQL Azure Server-> 150 Datenbanken (Softlimit)
Gebunden an eines von derzeit 6 Datacenters, z.B. North Europe, West Europe, South Central USServer ist lediglich eine logische Gruppierung: Die Datenbanken eines SQL Azure Servers können auf verschiedenen physischen Hosts platziert sein
1 SQL Azure Datenbank -> max. 50GBEdition bestimmt maximale Grösse:1/5 GB (Web), 10/20/30/40/50 GB (Business)Edition kann nachträglich verändert werdenSpeicherfreigabe nach dem Löschen von Objekten ist zeitlich verzögert (<15Min.)
SQL Azure Datenbank
Die Datenbankgrösse wird täglich pro rata aufgrund der maximal belegten Stufe (1/5/10/20/30/40/50 GB) des jeweiligen Tages abgerechnetDie eingestellte Edition begrenzt lediglich die maximale DB-Grösse, bestimmt aber nicht die Kosten bezüglich DatenbankgrösseAbrechnungszeitpunkt ist Mitternacht UTC (CH: 01.00 Uhr)Die master-DB und alle Transaktionslogs zählen nicht zur gemessenen GrösseGemessen wird der durch Daten reservierte Speicherplatz,nicht etwa eine Dateigrösse
Shrink unnötig (auch nicht unterstützt)Für Verkleinerung genügen Index-Rebuilds
Kostenfaktor 1: DB-Grösse
Verbindungen vom und zu einem Datacenter sowie zwischen Datacenters sind kostenpflichtigVerkehr innerhalb eines Datacenters ist kostenlos
Kostenfaktor 2: Bandbreite
Datenbank (von Daten genutzter Speicherplatz)Web Edition
CHF 10.989 pro Datenbank bis zu 1 GB pro MonatCHF 54.945 pro Datenbank bis zu 5 GB pro Monat
Business EditionCHF 109.989 pro Datenbank bis zu 10 GB pro MonatCHF 219.978 pro Datenbank bis zu 20 GB pro MonatCHF 329.967 pro Datenbank bis zu 30 GB pro MonatCHF 439.956 pro Datenbank bis zu 40 GB pro MonatCHF 549.945 pro Datenbank bis zu 50 GB pro Monat
Genutzte BandbreiteNordamerika und Europa
CHF 0.11 pro GB inCHF 0.165 pro GB out
Asiatisch-pazifischer RaumCHF 0.11 pro GB inCHF 0.22 pro GB out
Überwachungsys.database_usage, sys.bandwidth_usage, sys.dm_db_partition_stats
Kostenberechnung
SQL Azure Abrechnung https://mocp.microsoftonline.com
TCP: Outbound Port 1433 verbindet zu SQL AzureSSL ist immer eingeschaltet (serverseitig forciert)Verbindungen via "SQL Server Native Client 10.0" erstellen, auch per ODBC (nicht unterst.: OLE DB, DBLib)In Connectionstrings: Loginname <login>@<server>(z.B. demouser@h9susazmhf für Server h9susazmhf.database.windows.net)
SQL Azure Host via DNS adressieren,Server-IP ist nicht statisch
Best Practice: SQL Server Alias einrichten für SQL Azure Servernamen (cliconfig.exe)
Client-Konfiguration
cliconfigC:\Windows\System32\cliconfg.exe
SQL Azure Firewallhttps://windows.azure.com
Client-ConnectionDefault Transaktions-Isolationslevel jeder SQL Azure-Datenbank ist RCSI 'Read Committed Snapshot Isolation' (vgl. SQL Server: Read Committed)Der Transaktions-Isolationslevel ist weiterhin innerhalb einer Client-Connection bzw. durch die Client-Applikation einstellbar
Derzeit ist nur SQL Server Security unterstützt1 Server-level Principal, dieser wird im Azure-Portal beim Anlegen des SQL Azure Servers erstelltDas Konzept der SQL Server Logins und Datenbank User ist identisch zu SQL Server, jedoch per Script anzuwenden (derzeit)Password Complexity ist vorgegeben und verlangtUSE <database> ist nicht unterstützt, d.h. für das Erstellen von Login (master) und User werden zwei Connections benötigt (in SSMS-GUI transparent)
Security
SQL Azure SecuritySQL Server Management Studio
bcpMicrosoft Sync Framework 2.1+ (demnächst auch via SQL Azure Data Sync)(SQL Azure als Linked Server in lokalem SQL Server)SQL Server Integration Services (SSIS) und BIDSSQL Azure Migration Wizard (Codeplex)
Auch für Analyse der Featurenutzung einer bestehenden SQL Server-Datenbank
Demnächst: SQL Azure Import/Export (Basis DAC):Ist derzeit als CTP verfügbar (http://www.sqlazurelabs.com)
Import und Export
Derzeit ist für explizite Backups eine serverseitige Kopie (CREATE DATABASE AS COPY OF) anzulegen oder eine lokale Datenbankkopie zu ziehen (bcp, SSIS)Expliziter Point-in-time Restore wird demnächst unterstützt (Backup as a Service)
Backup
SQL Azure Health Statushttp://www.microsoft.com/windowsazure/support/status/servicedashboard.aspxInternet Latency Monitor (http://latency.cloudapp.net)Windows Azure Portal (http://windows.azure.com)CSS SQL Azure Diagnostics Report(http://blogs.msdn.com/b/psssql/archive/2011/04/25/css-sql-azure-diagnostics-tool-released.aspx)
Verfügbare DMV nutzen, kein Performance Monitor
Laufende Kosten überwachensys.database_usage, sys.bandwidth_usage, sys.dm_db_partition_stats
Monitoring, Maintenance
Latency Monitorhttp://latency.cloudapp.net
SQL Azure Health Statushttp://www.microsoft.com/windowsazure/support/status/servicedashboard.aspx
CSS SQL Azure Diagnosticshttp://csssqlazure.blob.core.windows.net/csssqlazuredeploy/publish.htm
Multi-TenancyAuf einem physischen Host laufen potentiell mehrere Datenbanken verschiedener SQL Azure-KundenMittels Balancing und Throttling wird verhindert, dass einzelne Datenbanken die Ressourcen anderer Kunden einschränken
Massnahmen seitens SQL AzureTransferieren einer Datenbank auf einen anderen Host(vgl. Failover auf einen Cluster-Node oder Mirroring-Partner)Terminieren einer Server-Connection
Client-Applikationenmüssen bezüglich Servertransfers und abgebrochener Transaktionen fehlertolerant sein (automatischer Reconnect)Erhalten detaillierte Fehlermeldungen über die Abbruchgründe(http://msdn.microsoft.com/en-us/library/ff394106.aspx#bkm_reason_codes)
Balancing und Throttling
Gründe für das Terminieren einer Transaktion oder Connection
ConnectionIdle > 30 Minuten 1 Mio. Locks> 5 GB tempdb
Transaktionläuft > 24 hbelegt >20% des aktuellen Transaktionslogsbelegt > 1GB des Transaktionslogs
Balancing und Throttling
Windows Azure Platform Training Kithttp://www.microsoft.com/downloads/en/details.aspx?FamilyID=413E88F8-5966-4A83-B309-53B7B77EDF78
Windows Azure Platform TCO Calculatorhttp://www.microsoft.com/windowsazure/tco
SQL Server Migration Assistant for Access 5.0http://www.microsoft.com/downloads/en/details.aspx?FamilyID=4b37df74-7522-41cf-9c1a-01b6415d9608
Weitere Hilfsmittel
TCO Calculatorhttp://www.microsoft.com/windowsazure/tco
ZusammenfassungSQL Azure, kurz vorgestellt
Features - was SQL Azure derzeit kann, und was noch nichtPlattform - Leistungsmerkmale und LeistungsgrenzenSzenarien- derzeit typische Einsatzmodelle für SQL Azure
Werkzeuge
DBA Aufgaben in SQL AzureGegebenes in SQL Azure - woran Sie nicht mehr denken müssenSubscription, Server, DB - die richtige Edition wählenClient-Konfiguration - Libraries und AliasesSecurity - Datenbank-Accounts und BerechtigungenImport, Export und Backup - die verfügbaren SzenarienMonitoring, Maintenance - woran Sie noch zu denken haben
Q&A
Bild
quel
le: F
lickr
/lore
ntey
Q&A
© 2011 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.