SQL Server 2014 Roadshow Mai 2014 Frank Mewes Trainer und Consultant IAD-Informationsverarbeitung und angewandte Datentechnik GmbH Quellenangabe [1] MOC-Kurs 10997A Updating your SQL Server Skills to Microsoft SQL Server 2014 [2] http://de.wikipedia.org/wiki/Windows_PowerShell [3] http://praxistipps.chip.de/windows-7-powershell-eineanleitung_3556 [4] http://www.powerpivotpro.com/category/excel-2013/ [5] http://office.microsoft.com/de-de/excel-help/ einfuhrung-in-den-abfrage-editor-HA104003991.aspx?CTT=5&origin=HA104003813 [6] http://www.xconomy.com/seattle/2013/05/28/ microsofts-geoflow-helps-spreadsheet-jockeys-tell-stories-with-maps/ Übersicht Einleitung Themenschwerpunkte In Memory Database Capabilities Verwalten mit Windows PowerShell Dienstkonten und Contained Databases AlwaysOn Hochverfügbarkeit Selfservice Business Intelligence SQL Server-relevante Cloud-Lösungen mit Windows Azure Fazit und Empfehlung Einleitung Upgrade oder neue Version? Zahlreiche bereits vorhandene Features werden weitergeführt, teilweise geringfügig erweitert Tatsächlich neu oder in erheblichem Maße erweitert sind In-Memory Database Capabilities Self Service Business Intelligence Cloud-basierte Dienste, insbesondere Verarbeiten von Big Data mit HDInsight Der Weg zum SQL Server 2014 2008 2010 SQL Server 2008 OS Win Srvr 2008 • • • • • • Multi-Server Admin Data-Tier Applications PowerPivot Report Builder 2.0 Master Data Services Prepared Instances Win Srvr 2008 R2 2014 SQL Server 2014 SQL Server 2012 • • • • • • • • • • Sys Center 2007 AlwaysOn Hochverfügbarkeit Columnstore Indexes Contained databases Benutzerdefinierte Server Rollen Data Quality Services SSAS TabellenModus SSIS Catalog SSRS Power View SSRS Data Alerts Deploy to SQL Azure Win Srvr 2012 • • • • • • • In-Memory OLTP Schreibzugriff auf columnstore Buffer Pool Extensions Erweiterte AlwaysOn HV Neue Privilegien auf Serverebene Bereitstellen aufAzure VM Power View aus MD Win Srvr 2012 R2 Sys Center 2012 Sys Center 2012 R2 SQL Azure SQL Azure Reporting Data Market Azure • • • Überwachung DatenKompression Change Data Capture Data Collector Resource Governor Richtlinienbasierte Verwaltung PowerShell provider Räumliche Daten Filestream Daten SQL Database Services (REST) Office • • • • • • SQL Server 2008 R2 2012 Office 2007 • Data Mining Add-Ins (Excel) SQL Azure = SQL Database SQL Server in VMs Office 2010 O365 Power BI MDS Office 2013 • PowerPivot (Excel/SP) Add-in • Power • Power Query (Excel) View(Excel) • Power Map Quelle: [1] Einleitung Hauptschwerpunkte in der Produktentwicklung(1) Verwaltung mit PowerShell Hochverfügbarkeit mit Always On Business Intelligence Data Warehouse mit CDC, DQS, MDS Self Service Business Intelligence mit Power Pivot Power Query Power View Power Map Einleitung Hauptschwerpunkte in der Produktentwicklung(2) Cloudbasierte Dienste Windows Azure Storage SQL Server-Backups Windows Azure SQL Database DataSync Windows Azure Virtual Machines HDInsight Windows Azure Marketplace Themenschwerpunkte In Memory Database Capabilities Verwalten mit Windows PowerShell Dienstkonten und Contained Databases AlwaysOn Hochverfügbarkeit Selfservice Business Intelligence SQL Server-relevante Cloud-Lösungen mit Windows Azure In-Memory Capabilities Buffer Pool Extension Column Store Index Speicheroptimierte Tabellen In-Memory Capabilities Buffer Pool Extension Buffer cache (RAM) Buffer cache extension (SSD) Verwendet relativ störungsfreie und kostengünstige SSD-Laufwerke Clean Pages Nur bestätigte Seiten werden ausgelagert(COMMIT) Wenn ein SSD-Laufwerk ausfällt, deaktiviert es sich von selbst Verwendet eine Datei, die 4 bis 10 mal größer sein sollte als der vorhandene physische Speicher Pages Data files (Disk) Quelle: [1] In-Memory Capabilities Buffer Pool Extension Vorteile bei OLTP-Anwendungen mit hohem Anteil an Lesezugriffen Datenbankservern mit bis 32 GB physischem Speicher Keine Vorteile bei DataWarehouse Workloads OLTP-Anwendungen mit großem Umfang an Schreibzugriffen Datenbankservern mit mehr als 64 GB physischem Speicher Aktivieren ALTER SERVER CONFIGURATION SET BUFFER POOL EXTENSION ON ( FILENAME=‘E:\SSDCACHE\MYCACHE.BPE‘, SIZE=50GB ); In-Memory Capabilities Columnstore Index ZeilenIndex SpaltenIndex ProductID OrderDate Cost 310 20010701 2171.29 Eingeführt in SQL Server 2012 ProductID Mehrspaltenindex, bei dem die Datenseiten die sortieren Werte einer Spalte enthalten 310 20010701 2171.29 311 … 1912.15 311 20010701 1912.15 312 20010702 2171.29 312 20010702 2171.29 313 … 314 … 315 20010703 316 … 317 … 318 … 319 … 320 20010704 321 … 1111.25 Datenseite 2001 Datenseite 2002 Bis zu 7fache Komprimierung möglich (explizite Komprimierung nicht möglich) Performancegewinn( bis zu 10fach ) bei gruppierten Abfragen mit Aggregatfunktionen Insbesondere bei in Data Warehouses bei Stern- oder Schneeflockenschema auf sehr große Faktentabellen 313 OrderDate 20010702 Cost 413.14 Datenseite 1000 ProductID OrderDate Cost 314 20010701 333.42 315 20010701 1295.00 316 20010702 4233.14 317 20010702 641.22 Datenseite 1001 Datenseite 2000 Quelle: [1] 413.14 333.42 1295.00 4233.14 641.22 24.95 64.32 In-Memory Capabilities Columnstore Index Einschränkungen Tabellen mit nonclustered Columnstore Index sind für Schreibzugriff gesperrt (bei Datenimport muss der Index gelöscht und neu erstellt werden) Diverse Szenarien schließen Columnstore Index aus Neu in SQL Server 2014 Clustered Columnstore Index CREATE {CLUSTERED|NONCLUSTERED} COLUMNSTORE INDEX Umfasst alle Spalten der Tabelle Indexname ON tabellenname Ist der einzige Index der Tabelle [(spaltenliste bei nonclustered index)] Schreibzugriff ist möglich In-Memory Capabilities Speicheroptimierte Tabellen Definiert als C-Strukturen, compiliert in DLLs und geladen in Speicher Wenn dauerhafte Speicherung, dann als Filestream Keine Sperrsemantic bei transactionalen Datenbearbeitungen Indizierung über Hash oder Bereichsindex möglich Abfragen mit TSQL über Interop Dienste Keine Unterstützung von Large Object-Datentypen Keine Unterstützung von IDENTITY und FOREIGN KEY In-Memory Capabilities Speicheroptimierte Tabellen Szenarien Latch-gebundene OLTP Workloads(z.B. OnLine Spiele) Viele konkurrierende Schreibzugriffe auf große Zeilenmengen Schreibzugriffe konzentrieren sich auf bestimmte Speicherseiten der Tabelle(z.B. bei Clustered Index mit aufsteigendem Schlüssel) Schreibkonflikte muss die Anwendung verwalten In-Memory Capabilities Speicheroptimierte Tabellen ALTER DATABASE mydb ADD FILEGROUP memdata CONTAINS MEMORY_OPTIMIZED_DATA; Datei hinzufügen CREATE TABLE tabellenname(…) WITH ( MEMORY_OPTIMIZED=ON, DURABILITY=SCHEMA_AND_DATA) In-Memory Capabilities Speicheroptimierte Tabellen CREATE PROCEDURE prozedurname [parameterliste] WITH NATIVE_COMPILATION, SCHEMA_BINDING, EXECUTE AS OWNER AS BEGIN ATOMIC WITH (TRANSACTION ISOLATION LEVEL=SNAPSHOT; LANGUAGE=`us_english`) … END; Native Compilation Transact-SQL CREATE PROCEDURE… SELECT t1.col1, t3.col2 FROM Tab1 t1 JOIN Tab2 t2 ON t1.Col1 = t2.col1; In C übersetzen #define __in HRESULT hkp_(… Compile to DLL Query Interop 0110101101 Tab1 Tab2 Memory-Optimized Tables Quelle: [1] Tab3 Tab4 Disk-Based Tables Verwalten mit PowerShell Power Shell: ein zentraler Mechanismus, der es erlaubt, verschiedene Systeme zu managen und zu automatisieren Windows SQL Server Exchange Server Sharepoint Server Script-Sprache, basierend auf .Net-Frameworks Erlaubt Zugriff auf: Registry Anwendungen Dienste Quelle: [2] Verwalten mit PowerShell Cmdlets verwenden WMI Cmdlets sind objektbasiert, nicht textbasiert Kommunikation über Pipes Einfache Verb-Subjekt-Struktur Verwenden vertrauter Befehle(aus Windows, SQL Server u.a) Navigation ähnlich wie im Dateisystem(auch in Objekthierarchien von Anwendungen) Interaktives Prompt oder Skript-Umgebung Nachladen von Bibliotheken(Modulen) Erweiterbar durch Drittanbieter Verwalten mit PowerShell Power Shell ISE(Integrated Scripting Environment) Editieren vieler Befehlszeilen Selektive Ausführung Kontextbezogene Hilfe Script-Speicherung Quelle: [3] Dienstkonten und Contained Databases Dienstkonten Virtuelles Konto(seit SQL Server 2012) Bei Installation voreingetragen Lokal verwaltet, aber mit Zugriff auf Netzwerkressourcen Hat alle Berechtigungen, die der Dienst lokal benötigt Ab Windows 7 bzw. Windows Server 2008 R2 Verwaltetes Konto Auf der Domäne definiert Einem spezifischen Computer in der Domäne als Dienstkonto zugewiesen Keine Anmeldung als Person möglich Dienstkonten und Contained Databases Contained Databases Speichert ihre Metadaten selbst ( nicht in er master ) Problemlose Migration z.B. in eine Cloud (öffentlich oder privat) Dazu gehören Contained Users Benutzer, die keinem Login auf Instanzebene zugeordnet sind Wichtig für Anbieter, die eine Datenbank in der Cloud bereitstellen wollen Dienstkonten und Contained Databases Contained Databases CREATE DATABASE mycontaineddb CONTAINMENT=PARTIAL; USE mycontaineddb; CREATE USER containedsqluser WITH PASSWORD=‘Pa$$w0rd‘; CREATE USER [windomaene\containedwinuser]; AlwaysOn Hochverfügbarkeit AlwaysOnFailoverClusterInstanz Basiert auf WindowsFailoverCluster Gemeinsam genutzter Speicher(SAN) Installation eines SQL Server Failover Cluster Ausfallsicherheit auf Serverebene AlwaysOn Failover Cluster Instance Server-level protection Windows Server Failover Cluster AlwaysOnAvailabilityGroup Basiert ebenfalls auf WindowsFailoverCluster SQL Server sind eigenständige Instanzen Verfügen über ihren eigenen zugewiesenen Speicher Ausfallsicherheit auf Datenbankebene Windows Server Failover Cluster Quelle: [1] AlwaysOn Availability Group Database-level protection AlwaysOn Hochverfügbarkeit AlwaysOn VerfügbarkeitsGruppen Besteht aus Replikaten(SQL Server Instanzen, mind. 2012) Ein primäres Replikat Bis 8 ( SQL Server 2012: 4 ) sekundäre Replikate Lese- und Schreibzugriff auf die Datenbank(en) auf dem primären Replikat Lesezugriff konfigurierbar für die Datenbanken auf den sekundären Replikaten Secondary Replica Voraussetzungen Windows Server Failover Cluster Windows Failover Cluster Async SQL Server Enterprise Edition (oder Developer Edition oder Eval) Wiederherstellungsmodell: Vollständig Primary Replica Secondary Replica Listener Quelle: [1] AlwaysOn Hochverfügbarkeit Verfügbarkeitsmodi Synchrones Commit ähnlich Zwei-Phasen-Commit Primäres Replikat verteilt die Datenänderungsoperationen an die sekundären Erst wenn das letzte Vollzug gemeldet hat, wird Commit ausgegeben Minimaler Datenverlust Verzögerungen möglich Probleme möglich, wenn… hohes Datenänderungsaufkommen schlechte Netzwerkperformance große Entfernung zwischen Replikaten Asynchrones Commit jedes Replikat führt Commit selbständig aus Gute Gesamt-Performance Datenverlust bei Failover möglich AlwaysOn Hochverfügbarkeit Ausfallsicherheit Automatisch ohne Datenverlust Primäres und sekundäres Replikat müssen synchronen Commit-Modus konfiguriert haben keine administrativen Aktivitäten erforderlich (bei Ausfall des primären Replikats) Geplant manuell ohne Datenverlust erfordert synchronen Commit-Modus durch Administrator ausgelöst Erzwungen manuell mit möglichen Datenverlust bei asynchronem Commit-Modus möglich durch Administrator ausgelöst auch bei synchronem Commit-Modus möglich AlwaysOn Hochverfügbarkeit Erweiterungen in SQL Server 2014 Anzahl der maximal möglichen sekundären Replikate erhöht sich auf 8 Aktive sekundäre Replikate bleiben verfügbar, wenn die Verbindung zu primären verloren geht Assistent zum Einbinden eines Cloud-basierten Replikats(Windows Azure) inklusive Erstellen einer virtuellen Maschine und eines Listeners in der Cloud Szenarien für aktive sekundäre Replikate Kein Snapshot erforderlich(wie bei Datenbankspiegelung) Berichte und Analysen Backups(allerdings nur Copy Only und Transaktionsprotokoll) Replikation AlwaysOn Hochverfügbarkeit Listener Möglicher Zugangspunkt für Client-Anwendungen Benötigt DNS-Name, IP-Adresse(n) und TCP-Port Secondary Replica (Umkonfigurieren der Client-Connections bei Failover entfällt) Backup Leitet Lese-/Schreibzugriffe an das primäre Replikat weiter Nur Lesezugriffe können an sekundäre Replikate weitergeleitet werden Primary Replica Secondary Replica ApplicationIntent=ReadOnly Quelle: [1] AlwaysOn Hochverfügbarkeit Einstellmöglichkeiten auf dem primären Replikat Allow all Allow read/write … Zugriffe können als read intent deklariert werden Die werden an sekundäre Replikate geroutet Einstellmöglichkeiten auf sekundären Replikaten No Connection Only Read Intent Allow any read only nur für Verfügbarkeit muss die Client-Anwendung deklarieren auch nicht deklarierte Lesezugriffe SelfService Business Intelligence Power Pivot Power Query Power View Power Map (SQL Server 2008) (SQL Server 2014) (SQL Server 2012) (SQL Server 2014) SelfService Business Intelligence Power Pivot Bereits seit SQL Server 2008 AddIn in Excel Ermöglicht Kreuztabellendarstellung ZeilenüberschriftSpaltenüberschrift-Aggregation mit Drilldown Vielzahl von möglichen Quellen (SQL Server, Analysis Server, MS Access, Oracle, DB2, Informix, u.a.) Von Quelldaten wird pro Arbeitsmappe ein Modell gespeichert Aktualisierung manuell Integration in Sharepoint Quelle: [4] SelfService Business Intelligence Power Query Neu in SQL Server 2014 Auch ein AddIn Mögliche Quellen: Datenbanken ( SQL Server, Access, Oracle, DB2, PostgreSQL ) Excel-Arbeitsblätter XML-Dokumente CSV Sharepoint-Listen Active Directory Öffentliche Quellen(Cloud, Web-Sites, Hadoop, u.a.) Die üblichen Abfrageoperationen (werden intern übersetzt in Power Query Ausdrücke) Vorschau wird nach jedem Abfrageschritt generiert Ergebnisse könne in einem Arbeitsblatt angezeigt oder in ein Datenmodell(gespeichert in der Arbeitsmappe) geladen werden Kann als Quelle für Power Pivot dienen Quelle: [5] SelfService Business Intelligence Power View Neu seit SQL Server 2012 Sehr leicht zu bedienender Berichtsgenerator AddIn in Excel Interaktive Berichtserstellung Vielzahl von Visualisierungsmöglichkeiten Ergebnis erscheint sofort Vielfältige Quellen Tabulares Datenmodell(vgl. Power Pivot) Bei Integration von Reporting Services im Sharepoint Server auch dort integrierbar Quelle: [1] SelfService Business Intelligence Power Map Neu in SQL Server 2014 AddIn in Excel Dreidimensionale Visualisierung geographischer Daten Geschäftsdatendiagramm in optischen Bezug zu geographischen Daten setzen Geschäftsdaten kommen aus einer Tabelle im Arbeitsblatt oder einem tabularen Datenmodell Kartenbilder werden von BingMaps bezogen Kann direkt in Excel vorgeführt oder als Video exportiert werden Quelle: [6] SelfService Business Intelligence Power Map Eine Arbeitsmappe kann eine oder mehrere Touren enthalten Eine Tour kann eine oder mehrere Szenen enthalten Eine Szene kann eine oder mehrere Schichten enthalten Jede Schicht zeigt Datenvisualisierung auf einer Karte an Beispiel: Tour: Schulabbrecher in einem Bundesland Szenen: Statistiken nach verschiedenen Aspekten (Alter, Klassenstufe, Geschlecht, sozialer Hintergrund, …) Schicht: Verteilung für eine bestimmte Szene auf Kreise und Städte für eines der letzten 10 Jahre Man wählt eine Szene aus und lässt die Schichten als Animation ablaufen Dauer, Geschwindigkeit, geographische Angaben, Diagrammtyp und eine Vielzahl von Effekten sind konfigurierbar SelfService Business Intelligence Power Business Intelligence für Office 365 Baut auf Self Service Business Intelligence auf Ermöglicht den Aufbau einer Plattform für die Zusammenarbeit verschiedener Nutzer Nutzer haben gemeinsam Zugriff auf Daten Abfragen Visualisierungen Power BI Sites Power BI Q&A Shared Queries Data Management Gateway für Power BI Cloud Dienste The Power BI Windows Store App Sharepoint Online Sites Freigeben von Arbeitsmappen und Power View Visualisierungen Sharepoint Sites Nutzer können Abfragen in natürlicher Sprache formulieren und basierend darauf Power Pivot-Daten visualisieren Erstellen von Power Query-Abfragen Freigeben für andere Office 365 Power BI-Benutzer Freigabe von betriebsinternen Datenquellen App für Windows zum Anzeigen von Berichten auf mobilen Geräten Cloud Lösungen Allgemeines Windows Azure Storage Windows Azure SQL Datenbankserver Windows Azure Virtual Machines Big Data mit Windows Azure HDInsight Windows Azure Market Place Cloud Lösungen Allgemeines Abstraktionskonzept zur Kapselung von computerbasierten Diensten generiert in einem Pool freigegebener Resourcen Öffentliche… Hypbrid … Private… Cloud SaaS PaaS IaaS für Anwender für Entwickler für Organisationen SaaS Betriebssystem und Schnittstellen Skala von Infrastrukturen PaaS IaaS Quelle: [1] Cloud Lösungen Cloud Services Web Sites Mobile Services Virtual Machines Media Services Active Directory Multi-Factor Authentication Service Bus Notification Hubs Caching BizTalk Services • • • • • • Storage SQL Database SQL Reporting Backup Hyper-V Recovery Manager HDInsight Network • • • • • • • • • • • Data Services Compute App Services Windows Azure Dienste Windows Azure Marketplace • • Virtual Network Traffic Manager Quelle: [1] Cloud Lösungen Windows Azure Storage Erforderlich zum Anlegen von… Tabellen BLOB Datenbank(en) Backup Virtuelle Maschinen(weniger eingeschränkt als SQL Datenbank) Erfordert Windows Azure Storage Account(abonnieren) Kontenname Teil eines URL zum Zugriff (Bsp.: http://mystorageaccount.table.core.windows.net) Dem Kontennamen werden zwei 512bit-Schlüssel zur Authentifizierung zugeordnet Redundanz über drei geographisch verteilte Replicas ist zugesichert Cloud Lösungen Datenbank-Backup in Windows Azure Storage Mit Sicherheit offsite und redundant Erfordert die Einrichtung eines Windows Azure Storage Account und eines BLOB Storage Containers Schritte: CREATE CREDENTIAL credentialname WITH IDENTITY=‘name_des_azure_storage_account‘ SECRET=‘einer_der_Schluessel_zum_Storage_Account‘; BACKUP DATABASE datenbankname TO URL=‘ name_des_azure_storage_account.blob.core.windows.net/backups/dbname.bak‘ WITH CREDENTIAL=‘credentialname‘; Cloud Lösungen Windows Azure SQL Database Man bekommt, was zu einer typischen Datenbank dazugehört (Tabellen, Views, Prozeduren, Benutzer, Privilegien u.a.) Eigenes Betriebssystem und eigene Hardware braucht man nicht (und niemand, der sich darum kümmert) In Windows Azure sind einzurichten(mindestens) ein(e): SQL Database Server (conceptual) SQL Database Server (conceptual) Master database Azure Abonnement(darüber werden die Aktivitäten abgerechnet) SQL Datenbankserver mit DNS-Namen Administratorkonto Firewall-Regeln Quelle: [1] SQL Datenbank isoliert untereinander keine Systemdatenbanken Isolated user databases Cloud Lösungen Windows Azure SQL Database Unterschiede zu hauseigenen Datenbanken Keine Logins – Anmeldung erfolgt sofort datenbankbezogen Nur SQL Server-Authentifizierung Firewall-Regeln müssen über ein Management Portal konfiguriert werden (IP-bezogen) Zugriff auf die Firewall des physischen Rechners ist nicht möglich Administratoren können weitgehend nur logisch administrieren(z.B. Benutzer und Berechtigungen) Physische Administration oder Instanzkonfiguration sind so gut wie nicht möglich Datenbankgröße, Prozessornutzung über Abonnement Backup wird vom Provider geleistet Cloud Lösungen Einrichten einer Windows Azure SQL Database Windows Azure Management Portal Server (https://manage.windowsazure.com/) ein Administrator-Login(SQL Server-Authentifizierung) Geographische Region Zugriff cloudinterner Dienste zulassen oder nicht (Zulassen mit der Firewall-Regel: 0.0.0.0) DNS-Name wird automatisch zugewiesen: Servername.database.window.net Zweite Firewall-Regel für den Zugriff übers Internet (IP-Adressbereich) Edition Web und Business man zahlt nur für den Speicher, den man aktuell verbraucht Geeignet für allmählich wachsende Datenbanken Premium man reserviert Speicher vor und zahlt dafür Geeignet für Datenbanken, die in die Cloud migrieren sollen Datenbank Name, Sortierung Cloud Lösungen Windows Azure SQL Database SQL Datenbank Sicherheit Logins werden vom Administratorlogin erstellt Name: Verfügbare Serverrollen: loginname@Servername loginmanager dbmanager Firewallregeln für den Internetzugriff Serverebene: ein oder mehrere IP-Adressbereiche Datenbankebene: zusätzlich zur Serverebene können auf Datenbankebene individuelle Firewallregeln eingerichtet werden (sp_set_database_firewall_rule, sp_delete_database_firewall_rule) Am hauseigenen Proxy muss TCP-Port 1433 ausgehend erlaub sein Cloud Lösungen Windows Azure SQL Datenbanken einrichten und verwalten Tools Windows Azure Management Portal Windows Azure SQL Database Management Portal SQL Server Management Studio Sqlcmd Visual Studio nicht unterstützte Features: CLR Dateigruppenverwaltung und Dateizuweisung Verteilte Abfragen und Transaktionen Globale temporäre Tabellen Service Broker Systemtabellen Trace Flags Datenbankspiegelung Einige andere sind eingeschränkt Cloud Lösungen SQL Data Sync Eine Art Replikation für cloud-basierte Datenbanken untereinander aber auch zwischen cloud-basierten und hauseigenen Datenbanken Komponenten Sync group: teilnehmende Instanzen, Datenbanken, Regeln, Zeitpläne Sync hub: SQL Datenbank mit zentraler Kopie der zu synchronisierenden Daten Referenzdatenbank(en): Datenbank(en), die mit dem Sync hub zu synchronisieren sind, bidirektional oder in eine Richtung Reference Databases Sync Agent: wird benötigt, um hauseigene Datenbanken mit dem Sync hub zu synchronisieren SQL Data Sync Client Service herunterladen, installieren, ausführen Sync Group Quelle: [1] Cloud Lösungen Windows Azure Virtual Machines IaaS statt nur PaaS(Windows Azure SQL Datenbank) Admin hat die Möglichkeit… Betriebssystem Anwendung Netzwerk-Konfiguration (bei virtuellen Netzwerken, falls gewünscht) …selbst zu administrieren (hat damit natürlich auch mehr Arbeit) Basierend auf Hyper-V-Technologie von Windows Server 2012 und Microsoft System Center 2012 R2 Cloud Lösungen Windows Azure Virtual Machines Vorteile: Eingebaute Ausfallsicherheit ( VHD sind in Win Azure BLOB Speicher Replikate ) Einfaches Migrieren oder Duplizieren von hauseigenen VMs in die Cloud Virtuelles Netzwerk, um das eigene Data Center in die Cloud zu erweitern Nutzen von vordefinierten Template Images (Windows Azure Gallery) für typische Serverkonfigurationen oder Erstellen eigener Templates mit sysprep vor dem Erstellen eines eigenen Templates: Windows Azure Management Portal hält eine Liste Community-unterstützter Images bereit Cloud Lösungen Windows Azure Virtual Machines Plattenspeicher Eine virtuelle Maschine beinhaltet immer eine VHD für die Betriebssysteminstallation bei laufendem Betrieb ein Laufwerk D: zur Speicherung temporärer Daten Eigene VHDs werden in Windows Azure BLOB Speicher angelegt erfordern also ein Windows Azure Storage Account müssen mit fester Größe konfiguriert werden können leer angelegt werden oder es können vorhandene hauseigene hochgeladen werden Cloud Lösungen Region Windows Azure Virtual Machines Affinity Group Windows Azure Service Topology Virtual Network Cloud Service Einfachste mögliche Topologie bei Einsatz einer VM in der Cloud (Einrichten in https://manage.windowsazure.com) Availability Set Region definiert nächstmögliche Zugangspunkt und Replikationsbereich Cloud Service konzeptioneller Container für die Window Azure Komponenten, die zusammen einen Cloud-Dienst für einen User ergeben Hier müssen die VM definiert werden URL für Zugriff aus dem hausinternen Netzwerk: Dienstname.cloudapp.net Storage Account zum Speichern der VHD in BLOB-Containern Storage Account Quelle: [1] Cloud Lösungen Windows Azure Virtual Machines Firewall- und Endpunkt-Konfiguration Public port Private port Endpoint Endpunkte müssen auf dem Cloud-Service konfiguriert werden, zu dem die VM gehört Private port Quelle: [1] Stellen von einem öffentlichen auf einen privaten TCP-Port durch SQL Server Standard-Instanz 1433 (privat) SQL Server Benannte Instanz statische Port-Adresse Für einen Cloud-Service kann ein Endpunkt den öffentlichen Port 1433 bereitstellen Windows Azure bietet vordefinierte Endpunkte für Standard-Szenarien an (Bsp.: MSSQL öffentlich: 1433 privat: 1433) Standalone Endpunkte Cloud Lösungen Windows Azure Virtual Machines Konnektivität und Authentifizierungs-Szenarien Bei Kommunikation über Endpunkt ist SQL Server Authentifizierung erforderlich Das hauseigene Netzwerk und die VM in der Cloud können auch über VPN verbunden werden. Dann ist Windows-Authentifizierung mit Konten aus der hauseigenen Domäne möglich. Es kann auch im Cloud-Dienst ein virtuelles Netzwerk mit eigenem Domänen-Controler eingerichtet werden. Dann ist Windows-Authentifizierung mit Konten aus der Domäne in der Cloud möglich. Virtual Network VPN Endpoint SQL Server Authentication Windows Authentication Windows Authentication Quelle: [1] Cloud Lösungen Big Data Daten sind zu umfangreich und komplex für die übliche Verarbeitung in relationalen Datenbanken 3 typische Merkmale (3 „V“s) Volume … Variety … Velocity … mehrere 100 TeraByte Mischung aus Formaten und strukturiert und unstrukturiert kontinuierlicher Strom von neuen Informationen Beispiele WebServer-Protokolle für Hochbetriebs-WebSites Auszüge von Datenströmen aus sozialen Medien für Stimmungsanalysen Sensordaten( Überwachung von Bauwerken, Wetter, Seismik, Windrädern, Anlagen, z. B. Hochöfen u.a.m.) Cloud Lösungen Big Data Hadoop Open Source Lösung zum Verarbeiten von Big Data in verteilten Server-Clustern Verwaltet von Apache Zahlreiche Distributionen von vielfältigen Anbietern Hadoop-Cluster Cluster von Servern speichert Daten in einem verteilten Dateisystem HDFS= Hadoop Distributed File System Ein Namensknoten nimmt Abfragen entgegen und koordiniert die Verarbeitung durch ein oder mehrere Datenknoten Cloud Lösungen Lorem ipsum sit amet magma sit elit Fusce magma sed sit amet magma Big Data Map/Reduce Map-Phase: Reduce-Phase: jeder beteiligte Knoten verarbeitet eine Teilmenge der angeforderten Daten Erzeugt Schlüssel-Wert-Paare ein Reducer-Knoten aggregiert die Ergebnisse der Map-Phase Key Value Key Value Lorem 1 Fusce 1 ipsum 1 magma 1 sit 1 sed 1 amet 1 sit 1 magma 1 amet 1 sit 1 magma 1 elit 1 Key Value Lorem ipsum sit amet magma elit Fusce sed 1 1 3 2 3 1 1 1 Cloud Lösungen Big Data Verwandte Projekte Hive ermöglicht das Erstellen von tabularen Abstraktionen über die HDFS-Daten Löst Map/Reduce-Verarbeitung durch SQL-ähnliche HiveQL-Befehle aus HCatalog abstrahiert Hive-Tabellen von den darunterliegenden HDFS-Speicherorten Pig Verarbeitungsmodul, das Map/Reduce-Anweisungen in einer prozeduralen Sprache (PigLatin) ausdrückt Oozie Framework zum erstellen automatisierter Aufträge, die Map/Reduce-Prozesse koordinieren Mahout selbstlernendes Modul zum Ausführung von Data Mining auf HDFS-Daten Hinweis: Der Bereich unterliegt derzeit fortlaufenden Veränderungen Angaben können schnell veralten Cloud Lösungen Big Data Microsoft Big Data Lösungen Parallel Data Warehouse Windows Azure HDInsight PolyBase SQL Server Edition mit Hardware dazu 2 Racks mit diversen Servern, untereinander geclustered ( Steuerungsknoten, Verwaltungsknoten, Stagingknoten, Backupknoten, Verarbeitungsknoten, Speicherknoten ) Für hauseigenes DataWarehouse Cloudbasierte Distribution von Hadoop HDFS basiert auf Windows Azure BLOB Storage Unterstützt Map/Reduce, Hive, Pig, Oozie, DCatalog Dazu eine .Net-Framework-basierte Entwicklungsumgebung Unterstützt Kombination aus Parallel Data Warehouse und HDINsight Cloud Lösungen Big Data HDInsight Cluster einrichten Benötigt Windows Azure Storage (hostet HDFS) Windows Azure SQL Database ( optional zum Speichern von Metadaten für Hive und Oozie, wenn nicht ausgewählt, wird eine verborgene zugewiesen) Erforderliche Angaben Cluster Name Cluster Größe Anzahl der Knoten, Resourcen HDInsight Version es gibt etliche Releases von Hadoop entsprechend korrespondierende Versionen von HDInsight Tools können u.U. bestimmte Releases von Hadoop erfordern Windows Azure Storage Account und BLOB-Container Hostet das HDFS-FileSystem (optional) SQL Database zum Speichern der Metadaten Benutzer Credentials für Cluster Verwaltung Cloud Lösungen Big Data Arbeiten mit HDInsight Navigation mit Azure Storage Volume(asv)-URLs oder UNIX(-Like)-Pfaden asv://[email protected]/logs/file.txt /logs/file.txt Shell-Anweisungen erinnern an UNIX ls and lsr cp, copyToLocal, and copyFromLocal mv, moveToLocal, and moveFromLocal mkdir rm and rmr cat Cloud Lösungen Big Data Arbeiten mit HDInsight Map/Reduce-Jobs: die Windows-Azure-PowerShell hält Objekte/cmdlets bereit Windows Azure Power Shell installieren und einrichten Mit PowerShell-Befehlen den Job ausführen Mit PowerShell-Befehlen Job-Resultate abfragen Datenverarbeitung mit PigLatin Readings=load ´/weather/data.txt´ using pigstorage(´,´) as (date, time, temp:long, wind:long); GroupedReadings=group readings by date; … AvgWeather=foreach GroupedAvgs generate flatten(group) as date, avgtemp, avgwind; … Arbeiten mit Hive-Tabellen mit Zugriff von Excel und PowerQuery über ODBC CREATE TABLE, INSERT, LOAD DATA, SELECT Cloud Lösungen Windows Azure Marketplace Zugriff über: https://datamarket.azure.com Abonnieren(frei oder kostenpflichtig) und auch Veröffentlichen von statistischen Datenmengen aus verschiedensten Themenbereichen ( Finanzen, Demographie, Gesundheitswesen, Wetter, Sport, Wissenschaft u.v.a.m.) Überprüfung und Rechnungslegung durch Windows Azure Import durch Excel, PowerPivot und Power Query möglich Fazit Doch eine neue Version Komplett neu: InMemory-Capabilities Erheblich weiterentwickelt und teilweise konsolidiert Cloud Dienste und Nutzungsmöglichkeiten Selbstbedienungs Business Intelligence Kontinuierlich weiterentwickelt AlwaysOn Hochverfügbarkeit Verwaltbarkeit mit PowerShell Fazit Sie wollen mehr erfahren? Kurse MOC 10977 Updating your Skills to MS SQL Server 2014 MOC 20462 MOC 20463 MOC 20464 Administering MS SQL Server Data Warehouse mit MS SQL Server Developing MS SQL Server Databases MOC 20465 Database Solution mit MS SQL Server 2012 SQL Server 2014 Roadshow Vielen Dank für Ihre Aufmerksamkeit