Mappature dei tipi unificati ai tipi di dati di origine e di destinazione

I tipi unificati sono i tipi di dati che vengono visualizzati negli eventi Avro o JSON. Si tratta di una rappresentazione unificata e specifica di Datastream di un tipo di dati in più origini e destinazioni dati supportate da Datastream.

I tipi unificati sono il superset di tutte le rappresentazioni dei tipi in tutti i tipi di origine supportati, che rappresentano il tipo di origine originale in modo generico ma senza perdita.

Le tabelle seguenti elencano:

  • I tipi unificati associati a Datastream
  • Le mappature tra i tipi di dati Oracle, MySQL, SQL Server, PostgreSQL, Salesforce, Spanner, ServiceNow, MongoDB e Workday (anteprima) e i tipi unificati di Datastream

Per informazioni sui mapping tra i tipi di dati per le diverse origini e BigQuery, consulta la documentazione sulla destinazione BigQuery.

Tipi unificati di Datastream

Nome del tipo Informazioni Definizione Avro Definizione JSON
BOOLEAN boolean boolean boolean
BYTES Una sequenza di byte non firmati byte string
DATE Giorni dall'epoca Un tipo logico di data stringa [ISO-8601]
DATETIME La data (in giorni dall'epoca) e l'ora (in microsecondi dalla mezzanotte)

Un tipo personalizzato

{
  "type": "record",
  "name": "datetime",
  "fields": [
    {"name": "date",
     "type": "int",
     "logicalType": "date"},
    {"name": "time",
     "type": "long",
     "logicalType": "time-micros"}
  ]
}
    
stringa [ISO-8601]
DECIMAL (p,s) Un numero decimale con segno di precisione arbitraria Un tipo logico decimale numero
DOUBLE Numeri in virgola mobile a 64 bit double numero
FLOAT Numeri in virgola mobile a 32 bit float numero
INTEGER Un numero intero a 32 bit int numero
INTERVAL Durata tra due eventi (in mesi, ore e microsecondi)

Un tipo personalizzato

{
  "type": "record",
  "name": "interval",
  "fields": [
    {"name": "months",
     "type": "int"}
    {"name": "hours",
     "type": "int"},
    {"name": "micros",
     "type": "long"}
  ]
}
    
stringa [ISO-8601]
JSON Un oggetto JSON

Un tipo logico personalizzato

{
  "type": "string",
  "logicalType": "json"
}
JSON nidificato
LONG Un numero intero a 64 bit Lungo numero
NUMBER Un tipo di dati numerico

Un tipo logico personalizzato

{
  "type": "string",
  "logicalType": "number"
}
string
STRING Una lunghezza della stringa illimitata string string
TIME Numero di microsecondi trascorsi dalla mezzanotte, indipendentemente dal fuso orario. Un tipo logico time-micros stringa [ISO-8601]
TIME INTERVAL Il numero di microsecondi trascorsi tra due eventi

Un tipo logico personalizzato

{
  "type": "long",
  "logicalType": "time-interval-micros"
}
Lungo
TIMESTAMP Quanti microsecondi sono trascorsi dall'epoca, indipendentemente dal fuso orario Un tipo logico timestamp stringa [ISO-8601]
TIMESTAMP WITH TIME ZONE Il numero di microsecondi trascorsi dall'epoca con un offset del fuso orario specifico in millisecondi

Un tipo personalizzato