Amazon Redshift - Datenbankentwicklerhandbuch · Amazon Redshift Datenbankentwicklerhandbuch User...
Transcript of Amazon Redshift - Datenbankentwicklerhandbuch · Amazon Redshift Datenbankentwicklerhandbuch User...
-
Amazon RedshiftDatenbankentwicklerhandbuch
-
Amazon Redshift Datenbankentwicklerhandbuch
Amazon Redshift: DatenbankentwicklerhandbuchCopyright © 2021 Amazon Web Services, Inc. and/or its affiliates. All rights reserved.
Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's,in any manner that is likely to cause confusion among customers, or in any manner that disparages or discreditsAmazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may notbe affiliated with, connected to, or sponsored by Amazon.
-
Amazon Redshift Datenbankentwicklerhandbuch
Table of ContentsSystemübersicht ................................................................................................................................. 1
Verwenden Sie Amazon Redshift zum ersten Mal? .......................................................................... 1Sind Sie Datenbankentwickler? ..................................................................................................... 2Prerequisites .............................................................................................................................. 3System- und Architekturübersicht .................................................................................................. 3
Architektur des Data Warehouse-Systems .............................................................................. 4Leistung ............................................................................................................................ 6Spaltenweise Speicherung ................................................................................................... 8Workload-Management ...................................................................................................... 10Verwenden von Amazon Redshift mit sonstigen Services ........................................................ 10
Getting started using databases .......................................................................................................... 12Step 1: Create a database ......................................................................................................... 12Step 2: Create a database user .................................................................................................. 13
Delete a database user ..................................................................................................... 13Step 3: Create a database table ................................................................................................. 13
Insert data rows into a table ............................................................................................... 14Select data from a table .................................................................................................... 14
Step 4: Load sample data .......................................................................................................... 15Step 5: Query the system tables ................................................................................................. 15
View a list of table names .................................................................................................. 16View database users ......................................................................................................... 16View recent queries .......................................................................................................... 17Determine the process ID of a running query ........................................................................ 17
Step 6: Cancel a query .............................................................................................................. 17Cancel a query from another session ................................................................................... 19Cancel a query using the superuser queue ........................................................................... 19
Step 7: Clean up your resources ................................................................................................. 19Bewährte Methoden .......................................................................................................................... 21
Durchführen eines Machbarkeitsnachweises ................................................................................. 21Übersicht über den Prozess ............................................................................................... 22Identifizieren der Geschäftsziele und Erfolgskriterien .............................................................. 22Einrichten Ihres Machbarkeitsnachweises ............................................................................. 22Checkliste für eine vollständige Auswertung .......................................................................... 24Entwickeln eines Projektplans für Ihre Bewertung .................................................................. 25Weitere Ressourcen zur Unterstützung bei der Auswertung ..................................................... 26Benötigen Sie Hilfe? .......................................................................................................... 26
Bewährte Methoden für das Design von Tabellen .......................................................................... 27Auswahl des besten Sortierschlüssels .................................................................................. 27Auswahl des besten Verteilungsstils .................................................................................... 28Verwendung der automatischen Kompression ....................................................................... 29Definition von Einschränkungen .......................................................................................... 29Verwendung der geringstmöglichen Spaltengröße .................................................................. 29Verwenden von Datum-/Uhrzeit-Datentypen für Datumsspalten ................................................ 30
Bewährte Methoden für das Laden von Daten ............................................................................... 30Tutorial: Laden von Daten .................................................................................................. 30Verwenden eines COPY-Befehls zum Laden von Daten .......................................................... 30Verwenden eines einzelnen COPY-Befehls ........................................................................... 31Aufteilen Ihrer Ladedaten in mehrere Dateien ........................................................................ 31Komprimieren Ihrer Datendateien ........................................................................................ 31Prüfen der Datendateien vor und nach einem Ladevorgang ..................................................... 31Verwenden einer Mehrzeileneinfügung ................................................................................. 31Verwenden einer Masseneinfügung ..................................................................................... 32Laden von Daten in Sortierschlüsselreihenfolge ..................................................................... 32Laden von Daten in sequenziellen Blöcken ........................................................................... 32
iii
-
Amazon Redshift Datenbankentwicklerhandbuch
Verwenden von Zeitreihentabellen ....................................................................................... 33Verwenden einer Staging-Tabelle für eine Zusammenführung .................................................. 33Planen rund um Wartungszeitfenster .................................................................................... 33
Bewährte Methoden für das Design von Abfragen .......................................................................... 34Arbeiten mit Advisor .................................................................................................................. 35
Amazon Redshift – Regionen ............................................................................................. 36Advisor aufrufen ............................................................................................................... 36Advisor-Empfehlungen ....................................................................................................... 38
Tutorials .......................................................................................................................................... 50Arbeiten mit automatischer Tabellenoptimierung .................................................................................... 51
Aktivieren der automatischen Tabellenoptimierung ......................................................................... 51Entfernen der automatischen Tabellenoptimierung ......................................................................... 52Überwachen von Aktionen der automatischen Tabellenoptimierung ................................................... 52Arbeiten mit Spaltenkompression ................................................................................................. 53
Kompressionskodierungen .................................................................................................. 54Testen der Kompressionskodierungen .................................................................................. 61Beispiel: Wahl der Kompressionskodierungen für die Tabelle CUSTOMER ................................. 63
Arbeiten mit Datenverteilungsstilen .............................................................................................. 65Datenverteilungskonzepte ................................................................................................... 66Verteilungsstile ................................................................................................................. 67Anzeigen von Verteilungsstilen ............................................................................................ 68Auswerten von Abfragemustern ........................................................................................... 69Bezeichnen von Verteilungsstilen ........................................................................................ 70Auswerten des Abfrageplans .............................................................................................. 70Beispiel für einen Abfrageplan ............................................................................................ 72Verteilungsbeispiele ........................................................................................................... 76
Arbeiten mit Sortierschlüsseln ..................................................................................................... 78Zusammengesetzter Sortierschlüssel ................................................................................... 79Überlappender Sortierungsschlüssel .................................................................................... 80
Definieren von Tabelleneinschränkungen ...................................................................................... 81Laden von Daten .............................................................................................................................. 82
Verwenden von COPY zum Laden von Daten ............................................................................... 82Anmeldeinformationen und Zugriffsberechtigungen ................................................................. 83Vorbereiten der Eingabedaten ............................................................................................. 85Laden von Daten aus Amazon S3 ....................................................................................... 85Laden von Daten aus Amazon EMR .................................................................................... 94Laden von Daten aus Remote-Hosts ................................................................................... 98Laden aus Amazon DynamoDB ......................................................................................... 105Überprüfung, ob die Daten korrekt geladen wurden .............................................................. 107Validieren von Eingabedaten ............................................................................................. 108Automatische Kompression ............................................................................................... 108Optimieren für enge Tabellen ............................................................................................ 110Standardwerte ................................................................................................................ 110Fehlersuche .................................................................................................................... 111
Aktualisieren mit DML .............................................................................................................. 116Aktualisieren und Einfügen ....................................................................................................... 116
Merge method 1: Replacing existing rows ........................................................................... 117Merge method 2: Specifying a column list ........................................................................... 117Erstellen einer temporären Staging-Tabelle ......................................................................... 117Ausführen einer Zusammenführungsoperation durch Ersetzung vorhandener Zeilen ................... 118Ausführen einer Zusammenführungsoperation durch Angabe einer Spaltenliste ......................... 118Beispiele für Zusammenführungen ..................................................................................... 120
Ausführen einer Deep Copy-Operation ....................................................................................... 122Analysieren von Tabellen ......................................................................................................... 124
Automatische Analyse ...................................................................................................... 124Analyse neuer Tabellendaten ............................................................................................ 124Verlauf für den Befehl ANALYZE ....................................................................................... 128
iv
-
Amazon Redshift Datenbankentwicklerhandbuch
Bereinigen von Tabellen ........................................................................................................... 129Automatische Tabellensortierung ....................................................................................... 129Automatisches Aufrufen von VACUUM DELETE .................................................................. 130Häufigkeit von Bereinigungen (VACUUM) ........................................................................... 130Sortierphase und Zusammenführungsphase ........................................................................ 130Schwellenwert für die Bereinigung ..................................................................................... 131Arten von Bereinigungen .................................................................................................. 131Verwalten der Bereinigungszeiten ...................................................................................... 132
Verwalten gleichzeitiger Schreiboperationen ................................................................................ 138Serialisierbare Isolierung .................................................................................................. 139Schreib- und Lese-Schreib-Operationen .............................................................................. 142Beispiele für gleichzeitige Schreibvorgänge ......................................................................... 143
Tutorial: Laden von Daten aus Amazon S3 ................................................................................. 145Voraussetzungen ............................................................................................................. 145Overview ........................................................................................................................ 145Steps ............................................................................................................................. 146Schritt 1: Erstellen eines Clusters ...................................................................................... 146Schritt 2: Herunterladen der Datendateien ........................................................................... 147Schritt 3: Hochladen der Dateien in einen Amazon S3-Bucket ................................................ 148Schritt 4: Erstellen der Beispieltabellen ............................................................................... 149Schritt 5: Ausführen der COPY-Befehle .............................................................................. 152Schritt 6: Bereinigen und Analysieren der Datenbank ............................................................ 164Schritt 7: Bereinigen Ihrer Ressourcen ............................................................................... 165Übersicht ....................................................................................................................... 165
Entfernen von Daten ........................................................................................................................ 167Entladen von Daten zu Amazon S3 ........................................................................................... 167Entladen verschlüsselter Datendateien ....................................................................................... 170Entladen von Daten im getrennten Format oder im Format mit fester Breite ...................................... 171Erneutes Laden entladener Daten .............................................................................................. 172
Erstellung benutzerdefinierter Funktionen ............................................................................................ 174UDF-Sicherheit und Rechte ...................................................................................................... 174Erstellung einer skalaren SQL-UDF ............................................................................................ 175
Beispiel für eine skalare SQL-Funktion ............................................................................... 175Erstellung einer skalaren Python-UDF ........................................................................................ 176
Beispiel für eine skalare Python-UDF ................................................................................. 176Python-UDF-Datentypen ................................................................................................... 176Datentyp ANYELEMENT .................................................................................................. 177Python-Sprachunterstützung .............................................................................................. 177Einschränkungen für UDFs ............................................................................................... 180
Creating a scalar Lambda UDF ................................................................................................. 181Registering a Lambda UDF .............................................................................................. 181Managing Lambda UDF security and privileges .................................................................... 182Configuring the authorization parameter for Lambda UDFs .................................................... 182JSON interface between Amazon Redshift and Lambda ........................................................ 181Naming UDFs ................................................................................................................. 185Protokollieren von Fehlern und Warnungen ......................................................................... 186
Creating stored procedures ............................................................................................................... 188Stored procedure overview ....................................................................................................... 188
Naming stored procedures ................................................................................................ 190Security and privileges ..................................................................................................... 191Returning a result set ...................................................................................................... 192Managing transactions ..................................................................................................... 193Trapping errors ............................................................................................................... 199Logging stored procedures ............................................................................................... 199Limits and differences ...................................................................................................... 199
PL/pgSQL-Sprachreferenz ........................................................................................................ 200Konventionen für die PL/pgSQL-Referenz ........................................................................... 200
v
-
Amazon Redshift Datenbankentwicklerhandbuch
Struktur von PL/pgSQL .................................................................................................... 201Unterstützte PL/pgSQL-Anweisungen ................................................................................. 205
Erstellen von materialisierten Ansichten .............................................................................................. 217Abfragen einer materialisierten Ansicht ....................................................................................... 218Automatic query rewriting to use materialized views ..................................................................... 219
Nutzungshinweise ............................................................................................................ 219Limitations ...................................................................................................................... 220
Refreshing a materialized view .................................................................................................. 220Autorefreshing a materialized view ..................................................................................... 221
Abfrage von Geodaten ..................................................................................................................... 223Laden einer Shape-Datei .......................................................................................................... 224Terminologie ........................................................................................................................... 225
Geometrische Gültigkeit ................................................................................................... 225Geometrische Einfachheit ................................................................................................. 226
Einschränkungen ..................................................................................................................... 227Abfragen von Daten mit Verbundabfragen ........................................................................................... 229
Erste Schritte mit der Verwendung von Verbundabfragen an PostgreSQL ......................................... 229Erste Schritte mit der Verwendung von Verbundabfragen an MySQL (Vorversion) .............................. 230Erstellen eines Secrets und einer IAM-Rolle ................................................................................ 232
Prerequisites .................................................................................................................. 232Beispiele für die Verwendung einer Verbundabfrage ..................................................................... 233
Beispiel für die Verwendung einer Verbundabfrage mit PostgreSQL ........................................ 234Beispiel für die Verwendung eines Namens in Groß- und Kleinschreibung ................................ 235Beispiel für die Verwendung einer Verbundabfrage mit MySQL ............................................... 237
Datentypunterschiede ............................................................................................................... 237Einschränkungen und Überlegungen .......................................................................................... 240
Abfragen externer Daten mit Amazon Redshift Spectrum ....................................................................... 242Übersicht über Amazon Redshift Spectrum ................................................................................. 242
Amazon Redshift Spectrum – Regionen .............................................................................. 243Überlegungen zu Amazon Redshift Spectrum ...................................................................... 243
Erste Schritte mit Amazon Redshift Spectrum .............................................................................. 244Voraussetzungen ............................................................................................................. 244Schritte .......................................................................................................................... 244Schritt 1. Erstellen einer IAM-Rolle ..................................................................................... 245Schritt 2: Verknüpfen der IAM-Rolle mit Ihrem Cluster ........................................................... 248Schritt 3: Erstellen eines externen Schemas und einer externen Tabelle ................................... 248Schritt 4: Abfragen Ihrer Daten in Amazon S3 ..................................................................... 249
IAM-Richtlinien für Amazon Redshift Spectrum ............................................................................ 251Amazon S3-Berechtigungen .............................................................................................. 252Kontoübergreifende Amazon S3-Berechtigungen .................................................................. 253Mit Redshift Spectrum Zugriff gewähren oder einschränken ................................................... 253Mindestberechtigungen ..................................................................................................... 254Verketten von IAM-Rollen ................................................................................................. 255Zugriff auf AWS Glue-Daten ............................................................................................. 255
Verwenden von Redshift Spectrum mit Lake Formation ................................................................. 261Erstellen von Datendateien für Abfragen in Amazon Redshift Spectrum ........................................... 262
Datenformate für Redshift Spectrum ................................................................................... 263Komprimierungstypen für Redshift Spectrum ....................................................................... 263Verschlüsselung für Redshift Spectrum ............................................................................... 264
Erstellen externer Schemata ..................................................................................................... 265Arbeiten mit externen Katalogen ........................................................................................ 266
Erstellen externer Tabellen ....................................................................................................... 271Pseudocolumns ............................................................................................................... 273Partitionierung externer Redshift Spectrum-Tabellen ............................................................. 273Zuweisung zu ORC-Spalten .............................................................................................. 277Erstellen externer Tabellen für von Hudi verwaltete Daten ..................................................... 279Erstellen externer Tabellen für Delta Lake-Daten .................................................................. 280
vi
-
Amazon Redshift Datenbankentwicklerhandbuch
Verbessern der Amazon Redshift Spectrum-Abfrageleistung .......................................................... 282Überwachung von Metriken ...................................................................................................... 284Fehlerbehebung bei Abfragen ................................................................................................... 285
Überschreitung der Anzahl erneuter Versuche ..................................................................... 285Zugriff gedrosselt ............................................................................................................ 286Ressourcenlimit überschritten ............................................................................................ 287Für eine partitionierte Tabelle werden keine Zeilen ausgegeben. ............................................. 287„Nicht autorisiert“-Fehler ................................................................................................... 287Inkompatible Datenformate ............................................................................................... 287Syntaxfehler bei der Verwendung von Hive-DDL in Amazon Redshift ....................................... 288Berechtigungen zum Erstellen temporärer Tabellen .............................................................. 288
Tutorial: Querying nested data with Amazon Redshift Spectrum ...................................................... 288Overview ........................................................................................................................ 288Step 1: Create an external table that contains nested data ..................................................... 289Step 2: Query your nested data in Amazon S3 with SQL extensions ........................................ 290Nested data use cases .................................................................................................... 294Nested data limitations ..................................................................................................... 295Serializing complex nested JSON ...................................................................................... 296
Verwenden von HyperLogLog Skizzen in Amazon Redshift .................................................................... 299Considerations ........................................................................................................................ 299Limitations .............................................................................................................................. 300Beispiele ................................................................................................................................ 300
Beispiel: Kardinalität in einer Unterabfrage zurückgeben ........................................................ 300Beispiel: Einen HLLSKETCH-Typ aus kombinierten Skizzen in einer Unterabfrage zurückgeben ... 301Beispiel: Zurückgeben eines HyperLogLog Skizze aus mehreren Skizzen kombinieren ............... 301Beispiel: Zwischenspeichern HyperLogLog Skizzen für Kardinalitätsschätzung .......................... 302
Verwenden von Machine Learning in Amazon Redshift (Vorversion) ........................................................ 304Übersicht über Machine Learning .............................................................................................. 305
Wie Machine Learning Ihr Problem lösen kann .................................................................... 305Machine Learning für Anfänger und Experten ...................................................................... 306Begriffe und Konzepte für Amazon Redshift ML ................................................................... 307
Erste Schritte mit Amazon Redshift ML ...................................................................................... 307Cluster-Einrichtung für die Verwendung von Amazon Redshift ML Machine Learning .................. 308Verwalten von Berechtigungen und Eigentümerschaft ........................................................... 310Einfache Schulung .......................................................................................................... 310Voraussage .................................................................................................................... 312
Beispiele ................................................................................................................................ 312Kosten für die Verwendung von Amazon Redshift ML ................................................................... 314
Steuern der Kosten für die Verwendung von Amazon Redshift ............................................... 314Funktionsweise von Amazon Redshift ML mit Amazon SageMaker .................................................. 315
Erfassen und Abfragen halbstrukturierter Daten in Amazon Redshift (Vorversion) ...................................... 317Anwendungsfälle für den SUPER-Datentyp ................................................................................. 317Konzepte für SUPER-Datentypverwendung ................................................................................. 318Überlegungen zu SUPER-Daten ................................................................................................ 319SUPER Beispiel-Dataset .......................................................................................................... 320Laden halbstrukturierter Daten in Amazon Redshift ...................................................................... 321
Analysieren von JSON-Dokumenten in SUPER-Spalten ........................................................ 321Verwenden von COPY zum Laden von JSON-Daten in Amazon Redshift ................................. 322
Entladen halbstrukturierter Daten ............................................................................................... 324Abfragen halbstrukturierter Daten .............................................................................................. 324
Navigation ...................................................................................................................... 324Aufheben der Verschachtelung .......................................................................................... 325Dynamische Typisierung .................................................................................................. 326Lax-Semantik .................................................................................................................. 328Arten von Introspektion .................................................................................................... 328Order by (Sortieren nach) ................................................................................................. 329
Operatoren und Funktionen ...................................................................................................... 330
vii
-
Amazon Redshift Datenbankentwicklerhandbuch
Arithmetische Operatoren ................................................................................................. 330Arithmetische Funktionen ................................................................................................. 330Array-Funktionen ............................................................................................................. 331
SUPER-Konfigurationen ........................................................................................................... 332Lax- und Strict-Modi für SUPER ........................................................................................ 332Zugriff auf JSON-Felder mit Groß- oder Großbuchstaben ...................................................... 333
Einschränkungen ..................................................................................................................... 333Verwenden des SUPER-Datentyps mit materialisierten Ansichten ................................................... 334
Beschleunigung von PartiQL Abfragen ............................................................................... 335Einschränkungen für die Verwendung des SUPER-Datentyps mit materialisierten Ansichten ........ 337
Abfragen von Daten über -Datenbanken hinweg (Vorversion) ................................................................. 339Considerations ........................................................................................................................ 341Limitations .............................................................................................................................. 341Beispiele für die Verwendung einer Datenbankübergreifenden Abfrage ............................................ 341Verwenden von Datenbankübergreifenden Abfragen mit dem Abfrage-Editor .................................... 344
Freigeben von Daten über Cluster hinweg (Vorversion) ......................................................................... 345Übersicht über die Datenfreigabe ............................................................................................... 345
Anwendungsfälle für die Datenfreigabe ............................................................................... 346Konzepte für die Datenfreigabe ......................................................................................... 346Freigabegranularität ......................................................................................................... 347Verwalten der Datenkonsistenz ......................................................................................... 347Zugreifen auf freigegebene Daten ...................................................................................... 347Voraussetzungen für die Datenfreigabe .............................................................................. 347Funktionsweise der Datenfreigabe ..................................................................................... 348
Erste Schritte mit der Datenfreigabe ........................................................................................... 348Freigeben von Daten in einem -Konto ................................................................................ 348
Arbeiten mit Ansichten in der Datenfreigabe ................................................................................ 353Verwalten des Lebenszyklus der Datenfreigabe ........................................................................... 354Steuern des freigegebenen Datenzugriffs .................................................................................... 354Nachverfolgen von Nutzung und Prüfung in der Datenfreigabe ....................................................... 354Cluster-Management und Datenfreigabe ..................................................................................... 355Integrieren von Business Intelligence-Tools in die Datenfreigabe ..................................................... 355Zugreifen auf Metadaten für Datenfreigaben ................................................................................ 356Überlegungen ......................................................................................................................... 356Einschränkungen ..................................................................................................................... 357
Optimieren der Abfrageleistung ......................................................................................................... 358Verarbeitung von Abfragen ....................................................................................................... 358
Abfrageplanung und Ablauf der Ausführung ........................................................................ 358Abfrageplan .................................................................................................................... 360Übersicht über die Schritte des Abfrageplans ...................................................................... 366Für die Abfrageleistung relevante Faktoren ......................................................................... 368
Analysieren und Verbessern von Abfragen .................................................................................. 369Workflow zur Analyse von Abfragen ................................................................................... 369Überprüfen von Abfragewarnungen .................................................................................... 370Analysieren des Abfrageplans ........................................................................................... 372Analysieren des Abfragezusammenfassung ......................................................................... 372Verbessern der -Abfrageleistung ........................................................................................ 378Diagnoseabfragen zur Abfrageoptimierung .......................................................................... 381
Fehlerbehebung bei Abfragen ................................................................................................... 384Verbindungsfehler ............................................................................................................ 385Die Abfrage friert ein ....................................................................................................... 385Die Abfrage dauert zu lange ............................................................................................. 386Das Laden der Daten schlägt fehl ...................................................................................... 387Der Ladevorgang dauert zu lange ...................................................................................... 387Die Ladedaten sind falsch ................................................................................................ 387Festlegen des JDBC-Parameters für die Abrufgröße ............................................................. 388
Implementierung von Workload Management ...................................................................................... 389
viii
-
Amazon Redshift Datenbankentwicklerhandbuch
Modifizieren der WLM-Konfiguration ........................................................................................... 390Migration vom manuellen WLM zum automatischen WLM ...................................................... 390
Automatisches WLM ................................................................................................................ 392Priorität .......................................................................................................................... 392Nebenläufigkeitsskalierungsmodus ..................................................................................... 393Benutzergruppen ............................................................................................................. 393Abfragegruppen .............................................................................................................. 393Wildcards ....................................................................................................................... 393Abfrageüberwachungsregeln ............................................................................................. 393Überprüfen auf automatisches WLM ................................................................................... 394Abfragepriorität ............................................................................................................... 394
Manuelles WLM ...................................................................................................................... 398Nebenläufigkeitsskalierungsmodus ..................................................................................... 399Nebenläufigkeitsstufe ....................................................................................................... 399Benutzergruppen ............................................................................................................. 400Abfragegruppen .............................................................................................................. 400Wildcards ....................................................................................................................... 401Zu verwendender WLM-Speicherprozentsatz ....................................................................... 401WLM-Timeout ................................................................................................................. 401Abfrageüberwachungsregeln ............................................................................................. 402WLM-Abfragewarteschlangen-Hopping ................................................................................ 402Tutorial: Configuring manual WLM queues .......................................................................... 405
Nebenläufigkeitsskalierung ........................................................................................................ 420Nebenläufigkeitsskalierungsregionen .................................................................................. 420Kandidaten für die Nebenläufigkeitsskalierung ..................................................................... 420Konfigurieren von Nebenläufigkeitsskalierungswarteschlangen ................................................ 395Überwachen der Nebenläufigkeitsskalierung ........................................................................ 421Systemansichten ............................................................................................................. 422
Short Query Acceleration .......................................................................................................... 422Maximale SQA-Laufzeit .................................................................................................... 423SQA-Überwachung .......................................................................................................... 423
WLM-Warteschlangenzuweisungsregeln ...................................................................................... 424Beispiel für Warteschlangenzuweisungen ............................................................................ 425
Zuweisen von Abfragen zu Warteschlangen ................................................................................ 427Zuweisen von Abfragen zu Warteschlangen auf der Grundlage von Benutzergruppen ................. 427Zuweisen einer Abfrage zu einer Abfragegruppe .................................................................. 427Zuweisen von Abfragen zur Superuser-Warteschlange .......................................................... 428
Dynamische und statische Eigenschaften .................................................................................... 428Dynamische WLM-Speicherzuweisung ................................................................................ 429Beispiel für dynamische WLM-Eigenschaften ....................................................................... 430
Abfrageüberwachungsregeln ..................................................................................................... 431Definition einer Abfrageüberwachungsregel ......................................................................... 432Abfrageüberwachungsmetriken .......................................................................................... 433Vorlagen für Abfrageüberwachungsregeln ........................................................................... 436Systemtabellen und Ansichten für Abfrageüberwachungsregeln .............................................. 437
WLM-Systemtabellen und Ansichten .......................................................................................... 437WLM-Serviceklasse IDs .................................................................................................... 438
Verwalten der Datenbanksicherheit .................................................................................................... 439Übersicht über die Sicherheit in Amazon Redshift ........................................................................ 439Standardrechte für Datenbankbenutzer ....................................................................................... 440Superusers ............................................................................................................................. 440Benutzer ................................................................................................................................ 441
Erstellen, Modifizieren und Löschen von Benutzern .............................................................. 441Gruppen ................................................................................................................................ 442
Erstellen, Modifizieren und Löschen von Gruppen ................................................................ 442Schemas ................................................................................................................................ 442
Erstellen, Modifizieren und Löschen von Schemata .............................................................. 443
ix
-
Amazon Redshift Datenbankentwicklerhandbuch
Suchpfad ....................................................................................................................... 443Schemabasierte Berechtigungen ........................................................................................ 444
Beispiel zur Steuerung des Zugriffs durch Benutzer und Gruppen ................................................... 444SQL-Referenz ................................................................................................................................. 446
Amazon Redshift-SQL .............................................................................................................. 446SQL-Funktionen, die auf dem Führungsknoten unterstützt werden .......................................... 446Amazon Redshift und PostgreSQL ..................................................................................... 447
Verwenden von SQL ............................................................................................................... 453Konventionen für die SQL-Referenz ................................................................................... 453Grundelemente ............................................................................................................... 454Ausdrücke ...................................................................................................................... 482Bedingungen .................................................................................................................. 486
SQL-Befehle ........................................................................................................................... 505ABORT .......................................................................................................................... 507ALTER DATABASE ......................................................................................................... 508ÄNDERN DER DATENFREIGABE ..................................................................................... 509ALTER DEFAULT PRIVILEGES ........................................................................................ 511ALTER GROUP .............................................................................................................. 513MATERIALISIERTE ANSICHT ÄNDERN ............................................................................. 514ALTER PROCEDURE ...................................................................................................... 515ALTER SCHEMA ............................................................................................................ 516ALTER TABLE ................................................................................................................ 517ALTER TABLE APPEND .................................................................................................. 531ALTER USER ................................................................................................................. 535ANALYZE ...................................................................................................................... 538ANALYZE COMPRESSION .............................................................................................. 540BEGIN ........................................................................................................................... 542CALL ............................................................................................................................. 544CANCEL ........................................................................................................................ 546CLOSE .......................................................................................................................... 548COMMENT ..................................................................................................................... 548COMMIT ........................................................................................................................ 550COPY ............................................................................................................................ 550CREATE DATABASE ...................................................................................................... 618ERSTELLEN EINER DATENFREIGABE ............................................................................. 621CREATE EXTERNAL SCHEMA ........................................................................................ 622CREATE EXTERNAL TABLE ............................................................................................ 628ERSTELLEN EINER EXTERNEN FUNKTION ...................................................................... 642CREATE FUNCTION ....................................................................................................... 647CREATE GROUP ............................................................................................................ 651CREATE LIBRARY .......................................................................................................... 652CREATE MATERIALIZED VIEW ........................................................................................ 654MODELL ERSTELLEN ..................................................................................................... 658CREATE PROCEDURE ................................................................................................... 666CREATE SCHEMA .......................................................................................................... 669CREATE TABLE ............................................................................................................. 671CREATE TABLE AS ........................................................................................................ 686CREATE USER .............................................................................................................. 694CREATE VIEW ............................................................................................................... 698DEALLOCATE ................................................................................................................ 700DECLARE ...................................................................................................................... 701DELETE ........................................................................................................................ 704DESC-DATENFREIGABE ................................................................................................. 706DROP DATABASE .......................................................................................................... 707DATENFREIGABE LÖSCHEN ........................................................................................... 707DROP FUNCTION ........................................................................................................... 708DROP GROUP ............................................................................................................... 709
x
-
Amazon Redshift Datenbankentwicklerhandbuch
DROP LIBRARY ............................................................................................................. 710DROP-MODELL .............................................................................................................. 710DROP MATERIALIZED VIEW ........................................................................................... 711DROP PROCEDURE ....................................................................................................... 711DROP SCHEMA ............................................................................................................. 712DROP TABLE ................................................................................................................. 714DROP USER .................................................................................................................. 716DROP VIEW .................................................................................................................. 717END .............................................................................................................................. 719EXECUTE ...................................................................................................................... 720EXPLAIN ....................................................................................................................... 721FETCH .......................................................................................................................... 725GRANT .......................................................................................................................... 727INSERT ......................................................................................................................... 739INSERT (externe Tabelle) ................................................................................................. 744LOCK ............................................................................................................................ 746PREPARE ...................................................................................................................... 747REFRESH MATERIALIZED VIEW ..................................................................................... 748RESET .......................................................................................................................... 750REVOKE ........................................................................................................................ 751ROLLBACK .................................................................................................................... 761SELECT ........................................................................................................................ 762SELECT INTO ................................................................................................................ 791SET .............................................................................................................................. 792SET SESSION AUTHORIZATION ...................................................................................... 795SET SESSION CHARACTERISTICS .................................................................................. 796ZEIGEN ......................................................................................................................... 796MODELL ANZEIGEN ....................................................................................................... 797DATENFREIGABEN ANZEIGEN ........................................................................................ 799SHOW PROCEDURE ...................................................................................................... 800START TRANSACTION ................................................................................................... 801TRUNCATE .................................................................................................................... 801UNLOAD ........................................................................................................................ 802AKTUALISIERUNG .......................................................................................................... 821VACUUM ....................................................................................................................... 826
SQL-Funktionsreferenz ............................................................................................................. 831Exklusive Führungsknoten–Funktionen ............................................................................... 831Exklusive Funktionen von – Datenverarbeitungsknoten .......................................................... 832Aggregationsfunktionen .................................................................................................... 833Boolesche Funktionen (Vorversion) .................................................................................... 851Bitweise Aggregationsfunktionen ........................................................................................ 856Fensterfunktionen ............................................................................................................ 862Bedingte Ausdrücke ......................................................................................................... 907Datums- und Zeitfunktionen .............................................................................................. 916Geofunktionen ................................................................................................................ 957Mathematische Funktionen .............................................................................................. 1017Zeichenfolgefunktionen ................................................................................................... 1041Hash-Funktionen ........................................................................................................... 1082HyperLogLog -Funktionen ............................................................................................... 1087JSON-Funktionen .......................................................................................................... 1090Funktionen für die Datentypformatierung ........................................................................... 1096Systemadministratorfunktionen ......................................................................................... 1107Funktionen für Systeminformationen ................................................................................. 1114
Reservierte Wörter ................................................................................................................. 1133System tables reference ................................................................................................................. 1136
System tables and views ........................................................................................................ 1136Types of system tables and views ........................................................................................... 1136
xi
-
Amazon Redshift Datenbankentwicklerhandbuch
Visibility of data in system tables and views .............................................................................. 1137Filtering system-generated queries ................................................................................... 1137
STV-Tabellen für Snapshot-Daten ............................................................................................ 1137STV_ACTIVE_CURSORS ............................................................................................... 1138STV_BLOCKLIST .......................................................................................................... 1139STV_CURSOR_CONFIGURATION ................................................................................... 1142STV_EXEC_STATE ....................................................................................................... 1142STV_INFLIGHT ............................................................................................................. 1143STV_LOAD_STATE ....................................................................................................... 1145STV_LOCKS ................................................................................................................. 1146INFORMATIONEN ZUM MODELL ................................................................................... 1147STV_MV_INFO .............................................................................................................. 1148STV_NODE_STORAGE_CAPACITY ................................................................................. 1149STV_PARTITIONS ......................................................................................................... 1151STV_QUERY_METRICS ................................................................................................. 1152STV_RECENTS ............................................................................................................. 1156STV_SESSIONS ............................................................................................................ 1157STV_SLICES ................................................................................................................ 1158STV_STARTUP_RECOVERY_STATE ............................................................................... 1159STV_TBL_PERM ........................................................................................................... 1160STV_TBL_TRANS .......................................................................................................... 1162STV_WLM_QMR_CONFIG .............................................................................................. 1163STV_WLM_CLASSIFICATION_CONFIG ............................................................................ 1164STV_WLM_QUERY_QUEUE_STATE ................................................................................ 1165STV_WLM_QUERY_STATE ............................................................................................ 1166STV_WLM_QUERY_TASK_STATE ................................................................................... 1167STV_WLM_SERVICE_CLASS_CONFIG ............................................................................ 1168STV_WLM_SERVICE_CLASS_STATE .............................................................................. 1170
System views ........................................................................................................................ 1171STL-Ansichten für die Protokollierung ............................................................................... 1171SVCS views ................................................................................................................. 1253SVL-Ansichten .............................................................................................................. 1272SVV-Ansichten .............................................................................................................. 1316
Systemkatalogtabellen ............................................................................................................ 1350PG_ATTRIBUTE_INFO ................................................................................................... 1350PG_CLASS_INFO .......................................................................................................... 1351PG_DATABASE_INFO .................................................................................................... 1352PG_DEFAULT_ACL ....................................................................................................... 1352PG_EXTERNAL_SCHEMA .............................................................................................. 1355PG_LIBRARY ................................................................................................................ 1355PG_PROC_INFO ........................................................................................................... 1356PG_STATISTIC_INDICATOR ........................................................................................... 1357PG_TABLE_DEF ........................................................................................................... 1357Abfragen der Katalogtabellen .......................................................................................... 1359
Konfigurationsreferenz .................................................................................................................... 1364Modifizieren der Serverkonfiguration ......................................................................................... 1364analyze_threshold_percent ...................................................................................................... 1365
Werte (Standard in Fettdruck) ......................................................................................... 1365Beschreibung ................................................................................................................ 1365Beispiele ...................................................................................................................... 1365
cast_super_null_on_error ......................................................................................................... 1365Werte (Standard in Fettdruck) ......................................................................................... 1365Beschreibung ................................................................................................................ 1366
datestyle .............................................................................................................................. 1366Werte (Standard in Fettdruck) ......................................................................................... 1366Beschreibung ................................................................................................................ 1366Beispiel ........................................................................................................................ 1366
xii
-
Amazon Redshift Datenbankentwicklerhandbuch
describe_field_name_in_uppercase ........................................................................................... 1366Werte (Standard in Fettdruck) ......................................................................................... 1366Beschreibung ................................................................................................................ 1366Beispiel ........................................................................................................................ 1366
downcase_delimited_identifier .................................................................................................. 1367Werte (Standard in Fettdruck) ......................................................................................... 1367Beschreibung ................................................................................................................ 1366
enable_result_cache_for_session .............................................................................................. 1367Werte (Standard in Fettdruck) ......................................................................................... 1367Beschreibung ................................................................................................................ 1366
enable_vacuum_boost ............................................................................................................ 1367Werte (Standard in Fettdruck) ......................................................................................... 1367Beschreibung ................................................................................................................ 1366
error_on_nondeterministic_update ............................................................................................. 1368Werte (Standard in Fettdruck) ......................................................................................... 1368Beschreibung ................................................................................................................ 1366Beispiel ........................................................................................................................ 1366
extra_float_digits .................................................................................................................... 1368Werte (Standard in Fettdruck) ......................................................................................... 1368Beschreibung ................................................................................................................ 1368
json_serialization_enable ......................................................................................................... 1368Werte (Standard in Fettdruck) ......................................................................................... 1368Beschreibung ................................................................................................................ 1366
json_serialization_parse_nested_strings ..................................................................................... 1369Werte (Standard in Fettdruck) ......................................................................................... 1369Beschreibung ................................................................................................................ 1366
max_concurrency_scaling_clusters ........................................................................................... 1369Werte (Standard in Fettdruck) ......................................................................................... 1369Beschreibung ................................................................................................................ 1369
max_cursor_result_set_size ..................................................................................................... 1369Werte (Standard in Fettdruck) ......................................................................................... 1369Beschreibung ................................................................................................................ 1370
mv_enable_aqmv_für_Sitzung .................................................................................................. 1370Werte (Standard in Fettdruck) ......................................................................................... 1370Beschreibung ................................................................................................................ 1370
navigate_super_null_on_error ................................................................................................... 1370Werte (Standard in Fettdruck) ......................................................................................... 1370Beschreibung ................................................................................................................ 1366
parse_super_null_auf_error ...................................................................................................... 1370Werte (Standard in Fettdruck) ......................................................................................... 1370Beschreibung ................................................................................................................ 1366
query_group .......................................................................................................................... 1370Werte (Standard in Fettdruck) ......................................................................................... 1370Beschreibung ................................................................................................................ 1371
search_path .......................................................................................................................... 1371Werte (Standard in Fettdruck) ......................................................................................... 1371Beschreibung ................................................................................................................ 1371Beispiel ........................................................................................................................ 1372
statement_timeout .................................................................................................................. 1373Werte (Standard in Fettdruck) ......................................................................................... 1373Beschreibung ................................................................................................................ 1373Beispiel ........................................................................................................................ 1373
stored_proc_log_min_messages ............................................................................................... 1373Werte (Standard in Fettdruck) ......................................................................................... 1373Beschreibung ................................................................................................................ 1366
Zeitzone ............................................................................................................................... 1374Werte (Standard in Fettdruck) ......................................................................................... 1374
xiii
-
Amazon Redshift Datenbankentwicklerhandbuch
Syntax ......................................................................................................................... 1374Beschreibung ................................................................................................................ 1374Zeitzonenformate ........................................................................................................... 1374Beispiele ...................................................................................................................... 1376
wlm_query_slot_count ............................................................................................................. 1376Werte (Standard in Fettdruck) ......................................................................................... 1376Beschreibung ................................................................................................................ 1376Beispiele ...................................................................................................................... 1377
Beispieldatenbank .......................................................................................................................... 1378Tabelle CATEGORY .............................................................................................................. 1379Tabelle DATE ....................................................................................................................... 1379Tabelle EVENT ..................................................................................................................... 1380Tabelle VENUE ..................................................................................................................... 1380Tabelle USERS ..................................................................................................................... 1381Tabelle LISTING .................................................................................................................... 1381Tabelle SALES ...................................................................................................................... 1382
Namen und Abkürzungen von Zeitzonen ........................................................................................... 1383Namen der Zeitzonen ............................................................................................................. 1383Abkürzungen der Zeitzonen .................................................................................................... 1392
Dokumentverlauf ............................................................................................................................ 1396Frühere Updates ................................................................................................................... 1402
............................................................................................................................................... mcdxxii
xiv
-
Amazon Redshift DatenbankentwicklerhandbuchVerwenden Sie Amazon Redshift zum ersten Mal?
Amazon Redshift-SystemübersichtThemen
• Verwenden Sie Amazon Redshift zum ersten Mal? (p. 1)• Sind Sie Datenbankentwickler? (p. 2)• Prerequisites (p. 3)• System- und Architekturübersicht (p. 3)
Dies ist die Amazon Redshift Database Developer Guide.
Amazon Redshift ist eine vollständig verwalteter Petabyte-Data Warehousing-Service aufUnternehmensniveau.
Diese Anleitung konzentriert sich auf die Verwendung von Amazon Redshift zur Erstellung und Pflege einesData Warehouse. Wenn Sie als Designer, Softwareentwickler oder Administrator mit Datenbanken arbeiten,finden Sie hier die Informationen, die Sie benötigen, um Ihr Data Warehouse zu entwerfen, zu erstellen,abzufragen und zu pflegen.
Verwenden Sie Amazon Redshift zum ersten Mal?Wenn Sie Amazon Redshift zum ersten Mal verwenden, empfehlen wir, die folgenden Abschnitte zu lesen.
• Service-Merkmale und Preise – Auf der Produktdetailseite werden der Amazon Redshift-Wertvorteil, dieService-Merkmale und die Preise beschrieben.
• Erste Schritte – Erste Schritte mit Amazon Redshift enthält ein Beispiel, das Sie durch die Erstellungeines Amazon Redshift-Data-Warehouse-Clusters, die Erstellung von Datenbanktabellen, das Hochladenvon Daten und das Testen von Abfragen führt.
Nach Abschluss der „Erste Schritte“-Anleitung sollten Sie sich eine der folgenden Anleitungen ansehen:
• Amazon Redshift Cluster Management Guide – Die Anleitung für das Cluster-Management zeigt Ihnen,wie Sie Amazon Redshift-Cluster erstellen und verwalten.
Wenn Sie Anwendungsentwickler sind, können Sie mit der Amazon Redshift-Abfrage-API Clustersauf programmatischem Wege verwalten. Dazu können die AWS-SDK-Bibliotheken, die die zugrundeliegende Amazon Redshift-API begleiten, dabei helfen, Ihre Programmieraufgaben zu vereinfachen.Wenn Sie eine interaktive Verwaltungsmöglichkeit für Cluster bevorzugen, können Sie die AmazonRedshift-Konsole und die AWS-Befehlszeilenschnittstelle (AWS-CLI) verwenden. Informationen zur APIund zur CLI finden Sie in den folgenden Handbüchern:• API-Referenz• -CLI-Referenz
• Amazon Redshift Database Developer Guide (dieses Dokument) – Dieses Handbuch richtet sich anDatenbankentwickler und beschreibt, wie Sie die Datenbanken, aus denen Ihr Data Warehouse besteht,entwerfen, entwickeln, abfragen und warten.
Wenn Sie von einem anderen relationalen Datenbanksystem oder einer anderen Data-Warehouse-Anwendung zu Amazon Redshift wechseln, sollten Sie mit wichtigen Unterschieden in Bezug aufdie Implementierung von Amazon Redshift vertraut sein. Eine Zusammenfassung der wichtigsten
1
https://aws.amazon.com/redshift/https://docs.aws.amazon.com/redshift/latest/gsg/https://docs.aws.amazon.com/redshift/latest/mgmt/https://docs.aws.amazon.com/redshift/latest/APIReference/https://docs.aws.amazon.com/cli/latest/reference/redshift/
-
Amazon Redshift DatenbankentwicklerhandbuchSind Sie Datenbankentwickler?
Überlegungen zum Entwerfen von Tabellen und Laden von Daten finden Sie unter Amazon RedshiftBewährte Methoden für das Design von Tabellen (p. 27) und Amazon Redshift Bewährte Methoden fürdas Laden von Daten (p. 30). (z. B.. Amazon Redshift basiert auf PostgreSQL. Eine detaillierte Listeder Unterschiede zwischen Amazon Redshift und PostgreSQL finden Sie unter Amazon Redshift undPostgreSQL (p. 447).
Sind Sie Datenbankentwickler?Wenn Sie Datenbankbenutzer, Datenbankdesigner, Datenbankentwickler oder Datenbankadministratorsind, hilft Ihnen die folgende Tabelle bei Ihrer Suche.
Wenn Sie … Wir empfehlen
Schnelle Nutzung vonAmazon Redshift
beginnen Sie mit den folgenden Schritten in Erste Schritte mit AmazonRedshift, um schnell einen Cluster bereitzustellen, eine Verbindung zu einerDatenbank herzustellen und einige Abfragen auszuprobieren.
Wenn Sie zum Aufbau Ihrer ersten Datenbank, zum Laden von Datenin Tabellen und zum Schreiben von Abfragen zur Manipulation derDaten im Data Warehouse bereit sind, kehren Sie zu dieser Anleitung fürDatenbankentwickler zurück.
Erfahren Sie mehr überdie interne Architekturdes Amazon Redshift-Data Warehouse.
Die System- und Architekturübersicht (p. 3) bietet eine allgemeineÜbersicht über die interne Architektur von Amazon Redshift.
Eine umfassendere Übersicht über den Amazon Redshift-Webservice findenSie auf der Amazon Redshift-Produktdetailseite.
Erstellen SieDatenbanken, Tabellen,Benutzer und andereDatenbankobjekte.
Getting started using databases (p. 12) ist eine kurze Einführung in dieGrundlagen der SQL-Entwicklung.
Amazon Redshift-SQL (p. 446) stellt Syntax und Beispiele für AmazonRedshift-SQL-Befehle und -Funktionen und andere SQL-Elemente bereit.
Amazon Redshift Bewährte Methoden für das Design von Tabellen (p. 27)bietet eine Zusammenfassung unserer Empfehlungen für die Auswahl vonSortierschlüsseln, Verteilungsschlüsseln und Kompressionskodierungen.
Erfahren Sie, wie SieTabellen so gestalten,dass sie optimaleLeistungen erbringen.
Arbeiten mit automatischer Tabellenoptimierung (p. 51) erläutertdie Überlegungen zur Verwendung der Kompression für die Daten inTabellenspalten sowie für die Auswahl von Verteilungs- und Sortierschlüsseln.
Daten laden. Laden von Daten (p. 82) beschreibt die Verfahren beim Laden großerDatensätze aus Amazon DynamoDB-Tabellen oder einfachen, in Amazon S3-Buckets gespeicherten Dateien.
Amazon Redshift Bewährte Methoden für das Laden von Daten (p. 30)enthält Tipps, um Ihre Daten schnell und effizient zu laden.
Verwalten Sie Benutzer,Gruppen und dieDatenbanksicherheit.
Verwalten der Datenbanksicherheit (p. 439) behandelt Themen zurDatenbanksicherheit.
Überwachen undoptimieren Sie dieSystemleistung.
System tables reference (p. 1136) erläutert Systemtabellen und Ansichten,die Sie nach dem Status der Datenbank abfragen, und mit denen SieAbfragen und Pr