Inhaltsverzeichnis

Search

  1. Vorwort
  2. Einführung in SQL-Datendienste
  3. Virtuelle Daten
  4. SQL-Syntax
  5. Installieren und Konfigurieren von Treibern für Clients von Drittanbietern
  6. Konfiguration von Fremdanbieter-Client-Tools
  7. Installieren und Konfigurieren von Treibern für PowerCenter
  8. Verwaltung von SQL-Datendienst

SQL-Datendienst Leitfaden

SQL-Datendienst Leitfaden

Beispiele für die Optimierung von SQL-Abfrageplänen

Beispiele für die Optimierung von SQL-Abfrageplänen

Der Datenintegrationsdienst kann die SQL-Vorgänge und Umwandlungen optimieren, indem er sie auf ein relationales Datenobjekt schiebt. Beispielsweise können Sie eine virtuelle Tabelle eines Kunden abfragen, um unterschiedliche Kunden auszuwählen, oder die Kundendaten nach Kundenkennung zu filtern.

DISTINCT SQL-Vorgang

Sie möchten die virtuelle Tabelle CUSTOMERS in einem SQL-Datendienst abfragen, um unterschiedliche Kundennummern auszuwählen. Der Datenintegrationsdienst kann SQL-Schlüsselwörter wie „Distinct“ auf das relationale Datenobjekt mit der normalen Optimierungsebene schieben.
Sie können die folgende Abfrage in die Ansicht
Daten-Viewer
eingeben:
select distinct Customer_number from CUSTOMERS
Die folgende Abbildung zeigt den SQL-Abfrageplan, der in der Registerkarte
Nicht-optimiert
erscheint:
Die Abbildung zeigt eine grafische Ansicht der SQL-Abfrage mit einer virtuellen Tabelle namens „customer“, einem Distinct-Vorgang und einer Ausgabe.
Die nicht optimierte Darstellung zeigt den Abfrageplan basierend auf der Abfrage, die Sie mit dem DISTINCT-Vorgang eingeben.
Die folgende Abbildung zeigt den SQL-Abfrageplan, der in der Registerkarte
Optimiert
erscheint:
Die Abbildung zeigt eine grafische Darstellung der optimierten SQL-Abfrage mit einer generierten Eingabequelle und einer Ausgabe.
Die optimierte Darstellung zeigt den Abfrageplan an, den der Datenintegrationsdienst ausführt. Der Datenintegrationsdienst verschiebt den DISTINCT-Vorgang auf die Quelle, um die Leistung zu erhöhen.

Filterumwandlung

Sie möchten die virtuelle Tabelle CUSTOMERS in einem SQL-Datendienst abfragen, um Kundendaten zu filtern und zu ordnen. Der Datenintegrationsdienst kann Umwandlungen, wie eine Filterumwandlung, auf das relationale Datenobjekt mit der normalen Optimierungsebene verschieben.
Sie können die folgende Abfrage in die Ansicht
Daten-Viewer
eingeben:
select * from CUSTOMERS where CUSTOMER_ID > 150000 order by LAST_NAME
Die folgende Abbildung zeigt den SQL-Abfrageplan, der in der Registerkarte
Nicht-optimiert
erscheint:
Die nicht optimierte Darstellung zeigt den Abfrageplan basierend auf der Abfrage, die Sie eingeben. Das Developer Tool zeigt die WHERE-Klausel als Filter-Umwandlung und die ORDER BY-Klausel als Sortierer-Umwandlung an. Das Developer Tool verwendet eine Pass-Through-Ausdrucksumwandlung zur Umbenennung der Ports.
Die folgende Abbildung zeigt den optimierten SQL-Abfrageplan, der in der Registerkarte
Optimiert
erscheint:
Der Muster-SQL-Abfrageplan enthält das logische Datenobjekt Read, eine Ausdrucksumwandlung Customers_DO, eine Ausdrucksumwandlung ORDERBY, eine Sortierer-Umwandlung ORDERBY, eine Ausdrucksumwandlung Output_Field und eine Ausgabeumwandlung.
Die optimierte Darstellung zeigt den Abfrageplan an, den der Datenintegrationsdienst ausführt. Da die Optimierungsebene normal ist, verschiebt der Datenintegrationsdienst die Filterbedingung zur Quelle. Das Verschieben der Filterbedingung verbessert die Abfrageperformance, da die Anzahl der Zeilen, die der Datenintegrationsdienst von der Quelle liest, reduziert wird.
Wie in der nicht optimierten Abfrage, zeigt das Developer Tool die ORDER BY-Klausel als Sortierer-Umwandlung an. Der Datenintegrationsdienst verwendet Pass-Through-Ausdrucksumwandlungen, um die Datentypen zu erzwingen, die Sie in den logischen Umwandlungen konfiguriert haben.