JSONFunktionen - Amazon Redshift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

JSONFunktionen

Anmerkung

Wir empfehlen Ihnen, die folgenden Funktionen für die Arbeit mit JSON zu verwenden:

Mit JSON _ PARSE müssen Sie JSON Text nur einmal bei der Aufnahme in einen SUPER Typwert konvertieren. Danach können Sie mit den SUPER Werten arbeiten. Amazon Redshift analysiert SUPER Werte effizienter alsVARCHAR, was die Ausgabe für die textbasierten JSON Funktionen ist. Weitere Informationen zum Arbeiten mit dem SUPER Datentyp finden Sie unter. Erfassen und Abfragen von halbstrukturierten Daten in Amazon Redshift

Wenn Sie einen relativ kleinen Satz von Schlüssel-Wert-Paaren speichern müssen, können Sie Speicherplatz sparen, indem Sie die Daten im JSON Format speichern. Da JSON Zeichenfolgen in einer einzigen Spalte gespeichert werden können, ist die Verwendung JSON möglicherweise effizienter als das Speichern Ihrer Daten im Tabellenformat. Nehmen wir beispielsweise an, Sie haben eine Tabelle mit geringer Dichte, in der Sie viele Spalten benötigen, um alle möglichen Attribute vollständig darzustellen. Die meisten Spaltenwerte beziehen sich NULL jedoch auf eine beliebige Zeile oder Spalte. Durch JSON die Verwendung als Speicher können Sie möglicherweise die Daten für eine Zeile in Schlüssel/Wert-Paaren in einer einzigen JSON Zeichenfolge speichern und die spärlich gefüllten Tabellenspalten eliminieren.

Darüber hinaus können Sie JSON Zeichenketten einfach ändern, um zusätzliche Schlüssel/Wert-Paare zu speichern, wenn sich Ihr JSON Schema ändert, ohne dass Sie einer Tabelle Spalten hinzufügen müssen.

Wir empfehlen, sparsam zu verwenden. JSON JSONist keine gute Wahl für das Speichern größerer Datensätze, da beim Speichern unterschiedlicher Daten in einer einzigen Spalte JSON nicht die Amazon Redshift Redshift-Spaltenspeicherarchitektur verwendet wird. Obwohl Amazon Redshift JSON Funktionen über CHAR und VARCHAR Spalten unterstützt, empfehlen wir die Verwendung SUPER für die Verarbeitung von Daten im JSON Serialisierungsformat. SUPERverwendet eine schemalose Darstellung nach dem Parsen, mit der hierarchische Daten effizient abgefragt werden können. Weitere Hinweise zum Datentyp finden Sie unterSUPER. Erfassen und Abfragen von halbstrukturierten Daten in Amazon Redshift

JSONverwendet mit UTF -8 kodierte Textzeichenfolgen, sodass JSON Zeichenketten als CHAR VARCHAR Datentypen gespeichert werden können.

JSONZeichenketten müssen gemäß den folgenden Regeln richtig formatiert JSON sein:

  • Die Stammebene JSON kann entweder ein JSON Objekt oder ein JSON Array sein. Ein JSON Objekt ist eine ungeordnete Menge von durch Kommas getrennten Schlüssel/Wert-Paaren, die in geschweiften Klammern eingeschlossen sind.

    Beispiel: {"one":1, "two":2}

  • Ein JSON Array ist eine geordnete Menge von durch Kommas getrennten Werten, die in Klammern eingeschlossen sind.

    Ein Beispiel ist folgendes: ["first", {"one":1}, "second", 3, null]

  • JSONArrays verwenden einen auf Null basierenden Index; das erste Element in einem Array befindet sich an Position 0. In einem JSON Schlüssel/Wert-Paar ist der Schlüssel eine Zeichenfolge in doppelten Anführungszeichen.

  • Ein JSON Wert kann einer der folgenden sein:

    • JSONObjekt

    • Array

    • Zeichenfolge

      • Wird durch doppelte Anführungszeichen dargestellt

    • Zahl

      • Beinhaltet ganze Zahlen, Dezimalzahlen und Gleitkommazahlen

    • Boolesch

    • Null

  • Leere Objekte und leere Arrays sind gültige Werte. JSON

  • JSONBei Feldern wird zwischen Groß- und Kleinschreibung unterschieden.

  • Leerraum zwischen JSON Strukturelementen (wie{ }, [ ]) wird ignoriert.

Die Amazon Redshift JSON Redshift-Funktionen und der Amazon Redshift COPY Redshift-Befehl verwenden dieselben Methoden, um mit JSON -formatierten Daten zu arbeiten. Weitere Informationen zur Arbeit mit finden Sie unter JSON COPYaus dem Format JSON