Präsentation: SESAM/SQL V6.0

Werbung
SESAM/SQL V6.0
Funktionale Erweiterungen
Claudia Merfeld, Mai 2009
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Agenda
„
„
„
„
„
„
„
JDBC Erweiterungen
Application Programming
Availability
Usability
Scalability
Performance
Unterstützung von SOA
1
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
JDBC Erweiterungen
„ Unterstützung des neuen JDBC Standards 4.0
„ Neue JDBC Datentypen für NATIONAL Spalten:
„
java.sql.Types.NCHAR
„ java.sql.Types.NVARCHAR
„ Neue Methoden für den Zugriff auf NATIONAL Spalten:
„
setNCharacterStream / getNCharacterStream
„ setNString / getNString
2
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
JDBC Erweiterungen
„ Nutzung von PooledStatements
„
Statements müssen nicht neu präpariert werden bei Nutzung von
PooledConnection
„ Neues JDBC 4.0 Interface CachedRowSet
„
CachedRowSet ist ein disconnected RowSet
„ Verbindung zum Server nur zum Zeitpunkt des Füllens und
Zurückschreiben von Änderungen notwendig
„ Synchronisiertes Zurückschreiben von Änderungen mit integrierter
Versionskontrolle
„ Anwendung: z.B. Übertragung von Daten auf ein java-fähiges PDA
3
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Application Programming
„ Datenverschlüsselung
„
Die SQL-Funktionen ENCRYPT() und DECRYPT() dienen der
Verschlüsselung und Entschlüsselung von einzelnen Werten von Spalten
„ Verschlüsselung mit dem Advanced Encryption Standard (AES) mit
einem Schlüssel von 128 Bit (16 Bytes)
„ Nicht die gesamte Datenbank wird verschlüsselt, sondern nur
sicherheitsrelevante Daten werden verschlüsselt
Beispiel:
UPDATE mitarbeiter SET gehalt_encr = ENCRYPT (gehalt,
‘0123456789ABCDEF’)
SELECT DECRYPT( gehalt_encr, ‘0123456789ABCDEF’, NUMERIC(5,0)) AS
gehalt FROM mitarbeiter
4
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Application Programming
„ Erweiterte Ausgabe zur Deadlockanalyse
„
Neue SESADM-Anweisung SET-SESSION-DIAGNOSIS zum Ein- oder
Ausschalten der erweiterten Ausgabe auf SYSLST
„ Informationen zu den Anwendern (vollständige User-Identifikation) und
Sperrobjekten (Objekttyp und Objektidentifikation)
„ Tabelle ohne Spalten
„
Tabellenfunktion DEE() liefert eine Tabelle ohne Spalte mit einer Zeile
„ Ausdrücke ohne Bezug auf eine Basistabelle können ausgewertet
werden
Beispiel:
SELECT LOCALTIMESTAMP(3) FROM TABLE (DEE())
5
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Availability
„ Online Reorganisation von Basistabellen
„
Reorganisation einer Basistabelle innerhalb des Anwender-Space ohne
Nutzung einer Arbeitsdatei
„ Paralleler DML-Betrieb (Update und Retrieval) auf zu reorganisierende
Tabelle möglich
„ Bei partitionierten Tabellen kann auch eine einzelne Partition
reorganisiert werden
„ Recover auf beliebigen Zeitpunkt
„
RECOVER CATALOG TO ANY TIMESTAMP setzt die Datenbank auf
den Stand eines beliebigen vergangenen Zeitpunkts zurück
„ Möglich mit SESAM-Sicherungen und mit Fremdkopien
„ Zu diesem Zeitpunkt offene Transaktionen werden zurückgesetzt
6
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Availability
„ Optimierte Erzeugung von Indexen bei partitionierten Tabellen
„
Lesen der relevanten Daten und Extrahieren der Indexwerte wird für alle
Partitionen parallel durchgeführt
=> beschleunigter Aufbau
„ Partieller Indexaufbau beim Zurücksetzen von AnwenderSpaces
„
Beim Zurücksetzen von Anwender-Spaces, die Partitionen einer
partitionierten Tabelle enthalten, werden die Indexe nur für die
betroffenen Partitionen neu aufgebaut
=> Weniger Sperren auf Anwender-Spaces,
kürzere Laufzeit für das Zurücksetzen
7
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Usability
„ Unload Online mit WHERE- und ORDER-BY-Klausel
„
Nur Anwenderdaten, die die Suchbedingung erfüllen, werden
ausgegeben
„ Reihenfolge der Sätze in der Ausgabedatei kann vorgegeben werden
„ Anwenderdaten von Basistabellen oder Views können ausgegeben
werden
„ Paralleler DML-Betrieb (Update und Retrieval) auf dieselbe Tabelle
während Unload Online möglich
„ Drop Space Cascade [Forced]
„
Cascade: Anwender-Space wird gelöscht, auch wenn er nicht leer ist.
„ Auf dem Space liegende Tabellen und Indexe werden gelöscht
„ Views und Integritätsbedingungen, die sich auf diese Tabellen beziehen,
werden ebenfalls gelöscht
„ Forced: Anwender-Space wird in den Metadaten gelöscht, auch wenn
der Space nicht geöffnet werden kann
8
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Usability
„ Performanter Drop Table / Drop Index
„
Klausel DEFERRED bewirkt ein schnelles Löschen der Tabelle oder des
Indexes
„ Nur der zusammenhängende Teil der Tabelle oder des Indexes wird
freigegeben
„ Eventuell vorhandene Auslagerungen bleiben erhalten, sie verschwinden
mit der nächsten Offline Reorganisation (Reorg Space)
„ Statuszeile bei SESUTI
„
Bei Abarbeitung einer Anweisungsdatei wird angezeigt, welche
Anweisung gerade bearbeitet wird
9
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Usability
„ SESADM Ausgaben in SDF-Listvariablen
„
Ausgaben von SHOW Anweisungen können in SDF S-Variablen
gespeichert werden
=> automatisierte Weiterverarbeitung möglich
„ Neue SESADM Anweisung SHOW-CATID-LIST
„
Dateiname der zuletzt verwendeten CATID-Liste
„ Ausgabe der aktuellen CATIDs
=> hilfreich in Umgebungen mit mehreren gleichen Datenbanknamen
10
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Usability
„ Rücksetzen von Statistikzählern in SESMON
„
Zähler, die über die gesamte DBH-Session kumuliert werden, können in
der SELECTION-Maske auf Null zurückgesetzt werden
=> hilfreich bei 24-Stunden Betrieb
„ Fortschrittsanzeige für Utilities im SESMON
„
Quantitativer Fortschritt im Ablauf für
COPY: Anzahl kopierter Blöcke
REORG SPACE: Anzahl bearbeiteter Blöcke
UNLOAD, LOAD: Anzahl entladener / zugeladener Sätze
EXPORT, IMPORT: Anzahl exportierter / importierter Sätze
11
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Beispiel Fortschrittsanzeige für Utilities im SESMON
12
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Usability
„ Ausgabe von SESMON Statistikdaten über openSM2
„
„
„
„
„
„
„
„
SESMON Statistikdaten können an openSM2 übergeben werden (ab
BS2000/OSD V8.0)
Darstellung in SM2 mit der Reportgruppe SESAM_SQL
Graphische Aufbereitung mit INSPECTOR auf dem PC
Messwerte werden von SM2 auf eine Sekunde normiert
Ausgabe von Anzahl Transaktionen (Update, Retrieval, Reset)
Ausgabe von Anzahl logischer Lese- und Schreibzugriffe auf User-Dataund System-Data-Buffer
Ausgabe von Anzahl SQL-Plan-Generierungen
Ausgabe pro überwachtem DBH
=> Leichte Analyse von Zusammenhängen zwischen BS2000- und
SESAM-Statistikdaten
13
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Graphische Ausgabe mit INSPECTOR
14
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Scalability
„ Datenbankpuffer bis 48GB
„
System-Data-Buffer und User-Data-Buffer können zusammen bis zu
48GB betragen
„ Durch 64-Bit Adressierung kann Hauptspeicher > 2GB genutzt werden
„ Entlastung des Program-Space
„ DBH läuft in 64-Bit Variante auf
- S-Servern (S120, S155 und ab S165) ab BS2000/OSD V7.0
- SX-Server ab OSD/XC V3.0
- SQ-Server ab Stufe 2 (Zieltermin: Mitte 2010)
15
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Scalability
„ Performanceoptimierung durch gezielte Beeinflussung der
SQL-Zugriffspläne
„
Neue Pragmas Ignore / Use Sort_Index index
„ Einführung von Annotationen:
- Hinweise innerhalb einer SQL-Anweisung
- speziell gekennzeichneter Kommentar
- wirken nur bei der Optimierung der betroffenen Operation
- Annotationen sind auch in View Definitionen möglich
- Annotation hat Vorrang vor einem Pragma
Beispiel:
T1 JOIN /*% SORT MERGE RIGHT FIRST %*/ T2 ON ...
16
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Performance
„ Nutzung von großen I/O-Transferlängen
„
ab BS2000/OSD V6.0B können mit einer physikalischen I/O-Operation
bis zu 160KB abhängig vom Plattentyp gelesen oder geschrieben
werden (bisher 32KB)
=> weniger physikalische I/O-Operationen
„ SESAM/SQL nutzt große I/O-Transferlängen bei:
- Schreiben der TALOG-Datei
- Kopieren von Spaces in der Service Task
- Lesen von Spaces in der Service Task
17
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Unterstützung von SOA
„ Native XML mit JDBC
„
Neues JDBC 4.0 Interface WebRowSet zum Austausch eines RowSets
im XML-Format mit dem standardisiertem WebRowSet XML-Schema
- Methode readXML:
Übertragung von Daten aus der Datenbank in standardisierte XML-Dokumente
- Methode writeXML:
Einfügen von extern im standardisierten XML-Dokument geänderten Werten in
die Datenbank
=> plattformneutraler Austausch von Daten zwischen verschiedenen
Datenbanksystemen über Webapplikationen
18
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Unterstützung von SOA
„ Lesen einer BS2000 Datei im CSV (Comma Separated
Values) Format
„
„
„
„
„
Inhalt einer BS2000 Datei kann als read-only Tabelle in beliebigen SQLAnweisungen verwendet werden
Trennzeichen (Delimiter-Zeichen) zwischen Spaltenwerten
Quote-Zeichen, in das Spaltenwerte eingeschlossen werden
Escape-Zeichen zur Entwertung von Delimiter-, Quote- und EscapeZeichen im Spaltenwert
Beispiel:
INSERT INTO mitarbeiter (name, anschrift)
SELECT a, b FROM TABLE ( CSV ( FILE ‘NEUE.MITARB’
DELIMITER ‘:’ QUOTE ‘”’ ESCAPE ‘\’,
CHAR(30), VARCHAR(100) ) ) AS t (a, b)
WHERE a >= ‘A’ AND a <= ‘Z’
ORDER BY a
19
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
20
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS
Herunterladen