wia: Indexempfehlungen für Abfrageworkloads generieren

Nachdem Sie den Namen einer Abfrageworkload an die wia-API übergeben, führt die API die Advisorfunktion für Workloadindizes aus. Diese Advisorfunktion generiert Empfehlungen für Indizes sowie einen Bericht über ihre Analyse. Die API gibt die Empfehlungen und eine URL zum Aufrufen des Berichts zurück.

Eingabeparameter

Übergeben Sie die folgenden Paare von Schlüsseln und Werten über diese URL an die API: https://localhost/tuning/wia

Tabelle 1. Eingabeparameter
Key (Schlüssel) Wert Mögliche Werte
dbType Der Typ des Datenservers. ZOS
dbHost Der Host des Datenservers. Domänenname oder IP-Adresse
dbPort Die Portnummer des Datenservers  
dbName Der Name des Datenservers  
dbUser Die bei der Herstellung einer Verbindung zum Datenserver zu verwendende ID.  
dbPassword Das bei der Herstellung einer Verbindung zum Datenserver zu verwendende Kennwort.  
workloadName Der Name der Abfrageworkload, für die Sie Indexempfehlungen abrufen wollen.  

Ausgabeparameter

Die API übergibt die folgenden Paare von Schlüsseln und Werten:

Tabelle 2. Ausgabeparameter
Schlüssel Wert
code Der Rückkehrcode vom Web-API.
0
Ohne Warnungen beendet
4
Mit Warnungen beendet
8
Infolge eines Fehlers ohne Abschluss beendet
link Die URL für den Bericht über die Analyse der Advisorfunktion für Workloadindizes. Der Link läuft standardmäßig nach 7 Tagen ab. Sie können diesen Zeotraum in der Datei tuning_service.properties ändern.
output Die DDL für die Indexempfehlungen.
message Fehler- oder Warnnachrichten.
exception Informationen zu einer eventuell aufgetretenen Ausnahmebedingung. Diese Informationen können dem IBM Support während der Arbeit für Sie bei der Fehlerbehebung helfen.

Beispiel:

Dieses Beispiel verwendet cURL, um SQL-Anweisungen an die wia-API zu übergeben, die eine URL zum Öffnen des Berichts über die Analyse der Advisorfunktion für Workloadindizes und die DDL für die Indexempfehlungen zurückgibt.

Eingabe
curl 
--insecure 
-X POST 
-H "Content-Type: application/json; charset=UTF-8"
--data "{ 
   dbType:ZOS, 
   dbHost:Host,
   dbPort:Portnummer,
   dbName:Subsystem,
   dbUser:Benutzer-ID,
   dbPassword:Kennwort,
   workloadName:Sample_Workload,
   }"
https://localhost/tuning/wia
Ausgabe
{        
"code" :0 ,
"message" :" 
      --Estimated change in performance: 32.57 % faster\r\n
      --Estimated disk space: 0.58 MB used\r\n
-------------------------------------------------------------\r\n
--Recommendations:\r\n
--Index: TPCDS.IDX1403130531140 Table: TPCDS.ORDER Action:Create\r\n
CREATE INDEX\"TPCDS\".\"IDX1403130531140\" ON \"TPCDS\".\"ORDER\" 
      ( \"O_TOTALPRICE\" ASC,
        \"O_ORDERDATE\" ASC, 
        \"O_SHIPPRIORITY\" ASC, 
        \"O_ORDERKEY\" ASC ) 
      ALLOW REVERSE SCANS
      COLLECT STATISTICS;\r\n --END"        
"link" :"http://localhost:8080/tuning/download/wia/1394688720272-
      16067301553057/summary.html" ,
}

Alternativ hierzu kann die API eine Fehlernachricht und eine Ausnahmebedingung zurückgeben, z. B. wenn sie die Abfrageworkload nicht finden konnte.

{   
    "code" :8 ,
    "error" :"Die Abfrageworkload Beispielworkload wurde nicht gefunden. Stellen Sie sicher, dass der
      Name der Abfrageworkload richtig ist. Stellen Sie sicher, dass die Abfrageworkload
      auf dem angegebenen Datenserver vorhanden ist."
}

Feedback