SQL Server 2012 Express - Robert Panther on SQL Server

Transcription

SQL Server 2012 Express - Robert Panther on SQL Server
SQL Server 2012 Express
Möglichkeiten und Grenzen der kostenfreien SQL Server Edition
Robert Panther, Senior Consultant
14.03.2013
© CGI Group Inc.
Vorstellung
Name
Robert Panther
Rolle
Senior Consultant, Logica now a part of CGI
Fachliche
Schwerpunkte
• Datenbanken: Design, Implementierung & Administration
(insbesondere Performance Optimierung und ETL mit SSIS)
• Mobile Anwendungen: Design & Implementierung
• Webanwendungen: Implementierung & Administration
Technologien
• Microsoft SQL Server
• Windows Mobile
• .NET (VB .NET & C#), ASP, ASP.NET
Methoden
Datenbankdesign, Objektorientierte Programmierung, Strukturierte
Programmierung, Schulungskonzeption & Durchführung, Projektleitung
Zertifikate
Informatik Diplom (FH)
MCTS SQL Server 2005 Implementation & Maintenance
MCTS SQL Server 2005 Business Intelligence
MCTS SQL Server 2008 Implementation & Maintenance
MCITP SQL Server 2008 Developer
Spezielles
Autor von mehreren Fachbüchern und Fachartikeln
Leitung der SQL Server Expert Group bei Logica / CGI
regelmäßiger Speaker auf Fachkonferenzen
aktives PASS-Mitglied
2
Agenda
Überblick
SQL Server Editionen im Vergleich
 verschiedene Varianten von SQL Server 2012 Express
 Neuerungen im Vergleich zu SQL Server 2008 (R2)
Änderungen im T-SQL Sprachumfang
SQL Server Express LocalDB
SQL Server Data Tools
Workarounds für nicht unterstützte Features
Literatur & weitere Infos
3
Überblick
SQL Server Editionen im Vergleich
Kostenfreie Editionen
• Compact Edition
• Express Edition
SQL Azure
Spezialeditionen
• Web Edition
• Developer Edition
Haupteditionen
• Standard Edition
• Business Intelligence Edition
• Enterprise Edition
5
SQL Server Editionen im Vergleich
max. CPUs / Cores
max. RAM
DB-Größe
unbegrenzt
unbegrenzt
4 GB
Express Edition
1/4
1 GB
10 GB
Web Edition
4 / 16
64 GB
524 PB
Developer Edition
unbegrenzt
unbegrenzt
524 PB
Standard Edition
4 / 16
64 GB
524 PB
Business Intelligence Edition
4 / 16
64 GB
524 PB
unbegrenzt
unbegrenzt
524 PB
Edition
kostenfreie Editionen
Spezialeditionen
Haupteditionen
Compact Edition 4.0
Enterprise Edition
Komplette Liste der von den verschiedenen Editionen unterstützten
Features: http://msdn.microsoft.com/de-de/library/cc645993.aspx
6
Verschiedenene Varianten von
SQL Server 2012 Express
SQL Server Express
• SQL Server Engine
• SQL Server Express LocalDB
SQL Server Express mit Tools
• wie SQL Server Express
• + SQL Server Management Studio
SQL Server mit Advanced Services
• wie SQL Server Express mit Tools
• + SQL Server Reporting Services
7
Neuerungen im Vergleich zu SQL 2008 (R2)
Für die größeren SQL Server Editionen relevant
• Hochverfügbarkeit mit AlwaysOn & Availability Groups
• Spaltenbasierte Indizes
• Power View (webbasierte Oberfläche zur Datenanalyse)
• SQL Server Data Quality Services
• Master Data Services überarbeitet
• BI Semantic Model (relationales oder tabulares Datenmodell)
• SSIS grundlegend überarbeitet
• Neues Lizenzmodell (jetzt Core-basiert)
8
Neuerungen im Vergleich zu SQL 2008 (R2)
Für alle Editionen (also auch SQL Server Express) relevant
• SQL Server Express LocalDB
• Änderungen im Sprachumfang
• SQL Server Management Studio überarbeitet
• nutzt VS 2010 Shell (inkl. Multi-Monitor Support, Zoom etc.)
• Restore Wizard
• SQL Server Data Tools lösen BIDS ab
• Besseres Zusammenspiel mit SQL Azure
• Contained Databases
• File Table
9
Neuerungen im Vergleich zu SQL 2008 (R2)
SQL Server Management Studio powered by Visual Studio
10
Neuerungen im Vergleich zu SQL 2008 (R2)
Restore Wizard
11
Änderungen im T-SQL Sprachumfang
Änderungen im T-SQL Sprachumfang
Sequenzen
• transaktional konsistenter Zähler über Tabellengrenzen hinweg
• frei definierbar (linear oder zirkulär)
• für alle numerischen Datentypen
• Bereiche über sys.sp_sequence_get_range abrufbar
• Syntax:
CREATE SEQUENCE Sequenzname AS INT
MINVALUE 1 NO MAXVALUE
INCREMENT BY 1 START WITH 100
SELECT NEXT VALUE FOR Sequenzname
13
Änderungen im T-SQL Sprachumfang
OFFSET-Klausel
• seitenweise Selektion von Abfrageergebnissen (für Paging)
• Syntax:
SELECT *
FROM SalesLT.Product
ORDER BY ProductNumber
OFFSET 100 ROWS
FETCH NEXT 20 ROWS ONLY
14
Änderungen im T-SQL Sprachumfang
Ausnahmebehandlung
• THROW erzeugt Exception und springt zu CATCH-Block
• erzeugt keinen Rollback
• THROW in CATCH-Block wirft Fehler nochmal (nach außen)
14 neue T-SQL Funktionen (u.A.):
• Konvertierung:
PARSE, TRY_CONVERT
• Datum:
DATEFROMPARTS, EOMONTH
• logisch:
CHOOSE, IIF
• String:
CONCAT, FORMAT
15
SQL Server Express LocalDB
SQL Server Express LocalDB
Unterschiede zu SQL Server Express
• Kein Service im herkömmlichen Sinn
• Lokale SQL Instanz, die erst bei Bedarf erstellt und gestartet wird
• Lässt sich leicht zusammen mit Anwendungen ausliefern & installieren
Aber …
• Identischer Sprachumfang wie SQL Server Express
• Wird in vielen Umgebungen die Compact Edition ersetzen
Installationsvarianten:
• zusammen mit SQL Server Express
• per separatem Installer: SqlLocalDB.msi
17
SQL Server Express LocalDB
Verwendung von SQL Server Express LocalDB
• Erstellung, Start und Stop einer Instanz über Command Line-Tool
• EXE liegt in C:\Program Files\Microsoft SQL Server\110\Tools\Binn\
• Erstellung: sqllocaldb create LocalDBTest
• Start: sqllocaldb start LocalDBTest
• Stop: sqllocaldb stop LocalDBTest
• Entfernen: sqllocaldb delete LocalDBTest
• Instanzname: (localdb)\LocalDBTest
• Ist die Instanz erstellt, kann sie wie ein “normaler” SQL Server Service
genutzt werden
Weitere Infos:
• Online-Hilfe: http://technet.microsoft.com/de-de/library/hh212961.aspx
18
SQL Server Data Tools
SQL Server Data Tools
Die SQL Server Data Tools ersetzen verschiedene Tools
• Business Intelligence Development Studio (BIDS)
• Visual Studio Database Tools (aka Data Dude)
• SQL CLR Integration mit Visual Studio
Installation
• Ein Teil (BI-Projekte) wird zusammen mit SQL Server installiert
• Nutzt die Visual Studio 2010 IDE
• Für SQL Server Express nur für die Reporting Services relevant
• Ein Teil (SQL Server Data Tools Development) kann bei Microsoft frei
heruntergeladen und nachinstalliert werden
20
SQL Server Data Tools (Development)
• Mit SQL Server 2012 erschienen, aber unabhängig davon nutzbar
• Separate Installer für VS 2010 und VS 2012 verfügbar
• Download für VS 2010: http://msdn.microsoft.com/en-us/jj650014
• Download für VS 2012: http://msdn.microsoft.com/en-us/jj650015
• Features:
• Datenbankprojekte zur Verwaltung von Datenstrukturen
• Statische Codeanalyse
• DB-Schemavergleich
• Datenbank Unit Tests
• SQL .NET CLR Integration (USPs, UFNs, Datentypen)
• Einige Features der Visual Studio Database Tools fehlen noch:
• DB-Datenvergleich
• Generierung von Testdaten
21
SQL Server Data Tools (Development)
Tabellen-Designer
22
SQL Server Data Tools (Development)
SQL .NET CLR-Integration
23
SQL Server Data Tools (Development)
Schemavergleich
24
SQL Server Data Tools (Development)
Statische Codeanalyse
25
Workarounds
für nicht unterstützte Features
Tasks ohne SQL Server Agent automatisieren
Problem:
Für automatisierte Tasks wird normalerweise der SQL Server Agent
genutzt, mit dem man Wartungsaufgaben zeitgesteuert ausführen lassen
kann.
Lösung:
1. SQL-Skript für Wartungsaufgabe erstellen
2. Batch-Datei erstellen, die das SQL-Skript über SQLCMD aufruft
3. Batch-Datei über Betriebssystemmittel (Aufgabenplanung)
zeitgesteuert aufrufen lassen
27
Komprimierte Backups
Problem:
Nur die größeren Editionen bieten die Möglichkeit für komprimierte
Backups an.
Lösung:
1. Unkomprimiertes Backup manuell oder – wie zuvor beschrieben –
per Aufgabenplanung erstellen.
2. Backup-Datei mit separatem Komprimierungstool packen (kann auch
in Backup-Job eingebunden werden).
Beispiel: AdventureWorksDW2012
• unkomprimiertes Backup:
• komprimiertes Backup:
• unkomprimiertes Backup (gezippt):
28
204.885 KB
46.799 KB
38.878 KB
SQL Data Management Warehouse
Problem:
• SQL Server bietet dynamische Management Sichten, zur Auswertung
von Indexnutzung etc. an.
• Diese beinhalten jedoch nur Werte seit dem letzten Start des SQL
Server Dienstes.
• Mit dem seit SQL 2008 R2 verfügbaren SQL Data Management
Warehouse (aka Performance Data Warehouse) können diese Daten
persistiert werden.
Lösung:
1. Persistieren Sie die Daten mit Hilfe einer selbst geschriebenen
Abfrage in eine eigene Tabelle.
2. Lassen Sie die Abfrage – wie zuvor beschrieben – regelmäßig
laufen.
29
SSIS nicht verfügbar
Problem:
Die SQL Server Integration Services, die für Import & Export von Daten
genutzt werden können, sind für die Express Edition nicht verfügbar.
Lösung:
• Nutzen Sie stattdessen die Option “Daten importieren und exportieren”
aus dem Startmenü von SQL Server 2012, die ebenfalls auf der SSISTechnologie basiert.
• Wenn Datenim-/exporte automatisiert laufen sollen, nutzen Sie das
Bulk Copy Command Line Tool (BCP.EXE) in Kombination mit der
Aufgabenplanung.
30
Literatur & weitere Infos
Literatur & weitere Infos
Links zum Thema SQL Server Express:
• SQL Server 2012:
http://www.microsoft.com/de-de/server/sql-server/2012/default.aspx
• SQL Server Express Edition:
http://www.microsoft.com/en-us/sqlserver/editions/2012-editions/express.aspx
• SQL Server 2012 Developer Training Kit:
http://www.microsoft.com/en-us/download/details.aspx?id=27721
Sonstige Links:
• SQL Server Blog: http://pantheronsql.wordpress.com
• Logica / CGI: http://www.logica.de / http://www.cgi.com
32
Literatur
Richtig einsteigen:
Datenbanken entwickeln mit SQL Server 2012
Mit SQL Server 2012 Express auf DVD
Robert Panther
Microsoft Press, 1. Auflage, Mai 2012
416 Seiten, Softcover
ISBN-10: 3866452195
ISBN-13: 978-3866452190
Preis: € 24,90
33
Ein kleines Anliegen in eigener Sache …
Zur Verstärkung unseres SQL Server Teams am Standort
Frankfurt/Sulzbach suchen wir …
Datenbankarchitekten Microsoft SQL Server (m/w)
Sie werden für die Beratung, Konzeption, Projektleitung, aber auch für die Realisierung von
anspruchsvollen Lösungen verantwortlich sein, deren technologischer Schwerpunkt im
Umfeld Microsoft SQL Server liegt. Sie helfen unseren Klienten, unternehmenskritische
Anwendungen hochverfügbar, sicher und kostengünstig zu gestalten. Dabei setzen Sie
moderne Methoden und Techniken ein und integrieren sie in die Unternehmenslandschaft.
Auf diese Weise tragen Sie dazu bei, dass zukunftsfähige Plattformen entstehen, auf denen
Business und E-Business sicher und stabil betrieben werden können.
Interesse?
Dann sprechen Sie mich an, oder schicken Sie mir eine Mail an robert.panther@cgi.com
34
Vielen Dank für Ihre Aufmerksamkeit!
Robert Panther
robert.panther@cgi.com
35