DBMS_CLOUD-Package - Datentypzuordnung von Oracle zu Parquet
Beschreibt die Zuordnung von Oracle-Datentypen zu Parquet-Datentypen.
Oracle-spezifischer Typ | Parkettart |
---|---|
BINARY_DOUBLE | DBL |
BINARY_FLOAT | FLT |
DATE | DATE |
NUMBER(p,s) | DECIMAL(p,s) |
ANZAHL(p) | DEZIMAL (p) |
TIMESTAMP(3) | TIMESTAMP_MILLIS |
TIMESTAMP(3) | TIMESTAMP_MILLIS_UTC |
TIMESTAMP(6) | TIMESTAMP_MICROS |
TIMESTAMP(6) | TIMESTAMP_MICROS_UTC |
TIMESTAMP(9) | TIMESTAMP_NANOS |
VARCHAR2(4000) | STRING |
NLS-Sessionparameter
Die NLS-Sessionparameter NLS_DATE_FORMAT
, NLS_TIMESTAMP_FORMAT
, NLS_TIMESTAMP_TZ_FORMAT
und NLS_NUMERIC_CHARACTERS
definieren, wie das Datum, der Zeitstempel, der Zeitstempel mit dem Zeitzonenformat und das Radixtrennzeichen für den Zeitstempel mit Dezimalmarkierung angezeigt werden sollen, wenn eine Tabelle mit diesen Spaltentypen abgefragt wird.
Wenn Sie Daten mit DBMS_CLOUD.EXPORT_DATA
exportieren und die Parquet-Ausgabe angeben, liest Autonomous Database die Werte dieser Parameter aus der Tabelle NLS_SESSION_PARAMETERS
. Autonomous Database konvertiert die Oracle-Datentypen DATE
oder TIMESTAMP
mit diesen Werten in Parquet-Typen.
Die Parameter NLS_SESSION_PARAMETERS
unterstützen eine RR
-Formatmaske (Spezifikation mit zwei Zeichen im Jahr).
Die Formatmaske RR
für das Jahr wird für diese Parameter nicht unterstützt, wenn Sie Daten mit DBMS_CLOUD.EXPORT_DATA
in Parquet exportieren. Wenn Sie versuchen, in Parkett zu exportieren, und NLS_SESSION_PARAMETERS
die Formatmaske RR
verwenden soll, wird ein Anwendungsfehler ausgelöst (der Standardwert für das Format RR
hängt vom Wert des Parameters NLS_TERRITORY
ab).
Wenn einer der Parameter NLS_DATE_FORMAT
, NLS_TIMESTAMP_FORMAT
oder NLS_TIMESTAMP_TZ_FORMAT
die Formatmaske RR
verwendet, müssen Sie den Formatwert in einen unterstützten Wert ändern, um Daten mit DBMS_CLOUD.EXPORT_DATA
in Parquet zu exportieren. Beispiel:
ALTER SESSION SET NLS_DATE_FORMAT = "MM/DD/YYYY";
ALTER SESSION SET NLS_TIMESTAMP_FORMAT = 'YYYY-MM-DD HH:MI:SS.FF';
ALTER SESSION SET NLS_TIMESTAMP_TZ_FORMAT='YYYY-MM-DD HH:MI:SS.FF TZH:TZM';
NLS_SESSION_PARAMETERS
abfragen:SELECT value FROM NLS_SESSION_PARAMETERS
WHERE parameter IN ('NLS_DATE_FORMAT','NLS_TIMESTAMP_FORMAT','NLS_TIMESTAMP_TZ_FORMAT');
Wenn NLS_DATE_FORMAT
festgelegt ist, gilt dies für die Spalten mit dem Datentyp DATE
. Wenn NLS_TIMESTAMP_FORMAT
festgelegt ist, gilt dies für die Spalten mit dem Datentyp TIMESTAMP
. Wenn NLS_TIMESTAMP_TZ_FORMAT
festgelegt ist, gilt dies für die Spalten mit dem Datentyp TIMESTAMP WITH TIME ZONE
.
Weitere Informationen finden Sie unter Datums- und Uhrzeitparameter und NLS-Data Dictionary Views.
Übergeordnetes Thema: DBMS_CLOUD Unterstützung für Avro, ORC und Parquet