DBMS_CLOUD-Package - Formatoptionen für Avro, ORC oder Parquet

Das Formatargument in DBMS_CLOUD gibt das Format der Quelldateien an.

Es gibt zwei Möglichkeiten, das Formatargument anzugeben:

format => '{"format_option" : “format_value” }'  

Und:

format => json_object('format_option' value 'format_value'))

Beispiele:

format => json_object('type' VALUE 'CSV')

Um mehrere Formatoptionen anzugeben, trennen Sie die Werte durch ",".

Beispiel:

format => json_object('ignoremissingcolumns' value 'true', 'removequotes' value 'true', 'dateformat' value 'YYYY-MM-DD-HH24-MI-SS', 'blankasnull' value 'true')
Formatoption Beschreibung Syntax

maxvarchar

Steuert die maximale Standardlänge von varchar2() für Zeichenspalten beim Erstellen externer Tabellen in Avro-, ORC- oder Parquet-Formatdateien. Folgende Optionen stehen zur Verfügung:

  • standard: Gibt an, dass die Längenbegrenzung für varchar2()-Spalten 4000 Byte beträgt. Dies entspricht auto auf Systemen mit MAX_STRING_SIZE = standard.

    Wenn Sie auf Systemen mit MAX_STRING_SIZE = extended eine externe Tabelle in Avro, ORC oder Parquet erstellen und maxvarchar als standard angeben, werden Zeichenspalten auf varchar2(4000) gekürzt.

  • extended: Gibt an, dass die Längenbegrenzung für varchar2()-Spalten 32767 Byte beträgt. Dies entspricht auto auf Systemen mit MAX_STRING_SIZE = extended. Dieser Wert löst einen Fehler auf Systemen mit MAX_STRING_SIZE = standard aus.

  • auto: Das System wählt automatisch die maximale Bytegröße varchar2() basierend auf dem Wert MAX_STRING_SIZE aus. Der Wert auto ist der Standardwert für maxvarchar.

maxvarchar: standard | extended | auto

Standardwert:auto

regexuri

Wenn der Wert von regexuri auf TRUE gesetzt ist, können Sie Platzhalter sowie reguläre Ausdrücke in den Dateinamen in Cloud-Quelldatei-URIs verwenden.

Die Zeichen "*" und "?" gelten als Platzhalterzeichen, wenn der Parameter regexuri auf FALSE gesetzt ist. Wenn der Parameter regexuri auf TRUE gesetzt ist, sind die Zeichen "*" und "?" Teil des angegebenen regulären Ausdrucksmusters.

Muster regulärer Ausdrücke werden nur für den Dateinamen oder Unterordnerpfad in Ihren URIs unterstützt, und der Musterabgleich ist mit dem Musterabgleich identisch, der von der Funktion REGEXP_LIKE ausgeführt wird. Reguläre Ausdrucksmuster werden für Verzeichnisnamen nicht unterstützt.

Bei externen Tabellen wird diese Option nur bei Tabellen unterstützt, die in einer Datei im Object Storage erstellt werden.

Beispiel:

format => JSON_OBJECT('regexuri' value TRUE)

Weitere Informationen zur Bedingung REGEXP_LIKE finden Sie unter REGEXP_LIKE-Bedingung.

regexuri: True

Standardwert:False

type

Gibt den Dateityp an.

type : avro | orc | parquet

schema

Wenn das Schema auf first oder all gesetzt ist, werden die Spalten und Datentypen der externen Tabelle automatisch aus den Metadaten der Avro-, ORC- oder Parquet-Datei abgeleitet.

Die Spaltennamen entsprechen denen in Avro, ORC oder Parquet. Die Datentypen werden von den Datentypen Avro, ORC oder Parquet in Oracle-Datentypen konvertiert. Alle Spalten werden in die Tabelle aufgenommen.

Der Wert first gibt an, dass die Metadaten aus der ersten Avro-, ORC- oder Parquet-Datei in file_uri_list verwendet werden, um die Spalten und ihre Datentypen automatisch zu generieren. Verwenden Sie first, wenn alle Dateien dasselbe Schema aufweisen.

Der Wert all gibt an, dass die Metadaten aus allen Avro-, ORC- oder Parquet-Dateien in der Datei file_uri_list verwendet werden, um die Spalten und ihre Datentypen automatisch zu generieren. Verwenden Sie all (langsamer), wenn die Dateien unterschiedliche Schemas aufweisen können.

Standard: Wenn column_list angegeben ist, wird der Wert schema, sofern angegeben, ignoriert. Wenn column_list nicht angegeben ist, lautet der Standardwert schema first.

Hinweis: Für Dateien im Avro-, ORC- oder Parquet-Format ist die Formatoption schema nicht verfügbar, und der Parameter column_list muss für partitionierte externe Tabellen mit der Prozedur DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE angegeben werden.

schema : first | all