DTS - Überblick und
Erweiterungen im
Microsoft SQL Server 2000
Andreas Siebe
Microsoft GmbH
Partner Group
Agenda



Warum DTS
Wo steht DTS heute
DTS 2000 Features
Folie 2 von 30
Data Warehouse Prozeß
Design
Aufbau
Analyse
Folie 3 von 30
Data Transformation Service

Ein Tool, um Daten zwischen beliebigen Datenquellen
auszutauschen, zu transformieren und zu validieren
Folie 4 von 30
DTS Projektziel
Mache es einfach, heterogene Daten
mittels OLE DB und ODBC zu:



Importieren
Exportieren
Transformieren
…Außerdem dient es als erweiterbares
Workflow / Jobexecutiuon Tool!
Folie 5 von 30
DTS, SQL Server 2000

Heute
•
•
•
•
•

SQL Server 2000
 Transformierbare Replikation
Office 2000
MSDE
Visual Studio
Interne MS Werkzeuge
Morgen


Commerce Server 2000
Host Integration Server 2000
Folie 6 von 30
DTS, SQL Server 7.0
Was überzeugte
 Assistenten
 Offene
Architektur
• OLE DB
• COM
• „ActiveX Scripting“
 „Workflow“
 Geschwindigkeit
• „Bulk Insert“
• „Data Pump“  SQL Server
 Metadaten/Datenherkunft
Folie 7 von 30
DTS in SQL 2000
Ziele


Kommen aus Benutzer Feedback
Inkrementales Release – Fehler
beheben, Fehlendes hinzufügen
•
•
•
•
•
•
•
Heterogene Daten / Interoperabilität
Benutzbarkeit
Verteilbarkeit
Flexibilität
Programmierbarkeit
Geschwindigkeit
Produktinformation
Folie 8 von 30
Heterogene Daten / Interoperabilität

OLE DB
•
2.5/2.6 Unterstützung
•
•
•

Datentypen
Unterstützung für hierarchische
Datensatzgruppen
Neue OLE DB Provider ( Exchange,
Active Directory, …)
OLAP Integration
•
•
„Cube Processing Task“
„Data Mining Tasks“
Folie 9 von 30
Benutzbarkeit




Designer – Viele kleine Verbesserungen
“Disconnected Edit”
Neue Transformierbefehle
•
Editieren von Transformationseigenschaften
•
•


Uppercase, LowerCase, TrimString, DateFormat,
Read/Write File
Hinzufügen/Entfernen von Spalten in
Transformationen
Umbenennen von Transformationen
DTSRunUI
ActiveX Script Browser
Folie 10 von 30
Demo
Benutzbarkeit
Folie 11 von 30
Verteilbarkeit






FTP Aufgabe
Dynamische Eigenschaften
Aufgabe
MSMQ Aufgabe
Globale Variablen als
Befehlszeilenparameter
Globale Variablen als
Quellparameter
Laufzeit UDL-Bindung
Folie 12 von 30
Demo
Verteilbarkeit
Folie 13 von 30
Flexibilität
Paketebene
• Protokolltabellen in MSDB
• Status und Informationsanzeige für CDW
• Speichern von ADO Datensatzgruppen in
globale Variable
Schritte
• Option: Paket mit Fehler beenden
SQL Task – Ergebnis globalen
Variablen zuweisen
Execute Package Task
Exec
Folie 14 von 30
Flexibilität
Datenpumpe Aufgabe




Transformieren von Daten, „DDQ“, Parallele
Datenpumpe
Neue Informationsstruktur
Fehlerprotokoll
•
•
•
7.0 Format
Fehlerzeilen (Quelle und/oder Ziel)
Fehler Information
Phasen der Datenpumpe
•
•
Zugriff auf den Datenstrom an mehreren Stellen
Szenarien: Erneute Zeilenverarbeitung,
Aggregation, „Lookups“ im Speicher,
Benutzerdefinierte Fehlerbehandlung, …
Folie 15 von 30
Was sind Phasen?




DTS hat in 7.0 nur Eine
• Zeilen-Transformation
• …sie war verbindlich
Eine Quelle
• Daten / Metadaten
Ein Ziel
• Optional beschreibbar
innerhalb der Transformation
0..N Transformationen
• N = Anzahl der Zielspalten
Folie 16 von 30
Die Multiphasen Datenpumpe
Post Row
X Form
Fehler
Batch
Complete
Pre
Source
Row
X Form
Insert
Fehler
Post
Source
Insert
Erfolg
- Einmalige Ausführung
- Mehrmalige Ausführung
- Transformation
Pump
Complete
Folie 17 von 30
Die Multiphasen Datenpumpe
Post Row
X Form
Fehler
Batch
Complete
Pre
Source
Row
X Form
Insert
Fehler
Insert
Erfolg
C++ oder ActiveX Script X Formationen
Post
Source
Pump
Complete
Folie 18 von 30
Demo
Die Multiphasen Pumpe
Folie 19 von 30
Programmierbarkeit
 SpeichernUnter
...VB
 Parallele Datenpumpe
• Zugriff nur vom Code her
 ADO
Datensatzgruppe als globale
Variable
 Multiphasen Datenpumpe
 Custom Tasks
• Protokoll in MSDB
 Die
meisten Objekte haben ein V2Interface
 Überarbeitetes Objektmodell
Folie 20 von 30
Programmierbarkeit
bei DTS 2000 – Einstellungen auf
Designer-Ebene
Neu
• Caching
• OLE DB Provider
• Active Script Engines
• Custom Transforms
• C++ Only
• ATL Vorlagen
• JIT Debugging
Folie 21 von 30
Demo
Programmieren
Folie 22 von 30
Geschwindigkeit
 Automatischer
Gewinn
• MDAC 2.5/2.6
• Custom Transforms sind schneller als in
Script erstellte
• Repository Version 3
 Geringerer
Speicherbedarf
• Dialoge
• Designer
• Assistenten
 „Startup“
Zeit – „Caching“ hinzugefügt
Folie 23 von 30
PerformanceTransform Data Task
Options 1 Million Rows mixed Data
Load Options
Parallelism
Batch 10k + Table
Lock
Batch 10,000
1
Batch 100,000
DB Options
Default
Folie 24 von 30
Performance
Transform Data Task vs
DDQ
Load Options
1 Million rows mixed data
1
Batch 10k + Table
Lock
DDQ
Folie 25 von 30
Performance
Transformation Options
Transformation Options
1 Million rows mixed data
1
T-SQL
Custom Transform
Ax Upper Case
Folie 26 von 30
Produktinformationen





Eigenständige Gruppe für die
Erstellung von Produktinformationen
Neue Programmierunterlagen
•
Beispiele in VB und VC
Szenarienbeispiele
•
“Wie implementiere ich Updates in DTS, es
funktionieren nur Inserts”
Mehrere und bessere Scriptingbeispiele
•
VB Script und Jscript
DTS Vorlagen( .dtt )
Folie 27 von 30
Fragen!?
Uff...
Folie 28 von 30
Weitere Infos
•
msnews.microsoft.com
•
public.microsoft.sqlserver.dts
public.microsoft.sqlserver.datawarehouse
public.microsoft.sqlserver.programming
http://www.microsoft.com/sql
•
•
•
•
•
http://msdn.microsoft.com/sqlserver/Default.asp
http://msdn.microsoft.com/library/default.asp?URL=/l
ibrary/techart/dts_overview.htm
Folie 29 von 30
Empower people
through great software
any time, any place,
and on any device
Folie 30 von 30