Datastream converte i tipi di dati specifici dell'origine in un insieme standard di tipi unificati negli eventi di modifica Avro e JSON. I tipi unificati rappresentano il superset di tutti i tipi di dati di origine supportati, in modo che Datastream possa replicare i dati tra origini e destinazioni senza perdita di dati.
Questo documento elenca i tipi unificati di Datastream e le mappature dei tipi di dati per le seguenti origini:
- Oracle
- MySQL
- PostgreSQL
- SQL Server
- Salesforce
- Workday (anteprima)
- GoogleSQL di Spanner
- Spanner PostgreSQL
- ServiceNow (anteprima)
- MongoDB
- Microsoft Dataverse (anteprima)
- Salesforce Marketing Cloud (Anteprima)
Per le mappature delle destinazioni BigQuery, consulta Mappature dei tipi di dati in 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 | string [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"}
]
}
|
string [ISO-8601] |
DECIMAL (p,s) |
Un numero decimale con segno e precisione arbitraria | Un tipo logico decimale | numero |
DOUBLE |
Numeri in virgola mobile a 64 bit | double | numero |
FLOAT |
Numeri con rappresentazione in virgola mobile a 32 bit | float | numero |
GEOMETRY |
Un oggetto di geometria o geografia spaziale | Un tipo personalizzato
{
"type": "record",
"name": "geometry",
"fields": [
{"name": "value",
"type": "bytes"},
{"name": "srid",
"type": "int"},
{"name": "type",
"type": "string"}
]
}
|
JSON nidificato |
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"}
]
}
|
string [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 |
Quanti microsecondi sono trascorsi dalla mezzanotte, indipendentemente dal fuso orario. | Un tipo logico time-micros | string [ISO-8601] |
TIME INTERVAL |
Quanti microsecondi sono 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 di timestamp | string [ISO-8601] |
TIMESTAMP WITH TIME ZONE |
Quanti microsecondi sono trascorsi dall'epoca con un offset di fuso orario specifico in millisecondi | Un tipo personalizzato
{
"type": "record",
"name": "timestampTz",
"fields": [
{"name": "timestamp",
"type": "long"
"logicalType": "timestamp-micros"},
{"name": "offset",
"type": "int"
"logicalType": "time-millis"}
]
}
|
string [ISO-8601] |
TIME WITH TIME ZONE |
Quanti microsecondi sono trascorsi dalla mezzanotte con un offset di fuso orario specifico | Un tipo personalizzato
{
"type": "record",
"name": "timeTz",
"fields": [
{"name": "time",
"type": "long"
"logicalType": "time-micros"},
{"name": "offset",
"type": "int",
"logicalType": "time-millis"}
]
}
|
string [ISO-8601] |
UNSUPPORTED |
Un tipo di dati non supportato | Un tipo logico personalizzato
{
"type": "null",
"logicalType": "unsupported"
}
|
null |
VARCHAR |
Una stringa con una lunghezza massima di n caratteri | Un tipo logico personalizzato
{
"type": "string",
"logicalType": "varchar"
"length": N
}
|
string |
Mappa i tipi di dati Oracle ai tipi unificati di Datastream
| Tipo di dati Oracle | Tipo unificato di Datastream |
|---|---|
ANYDATA |
UNSUPPORTED |
BFILE |
STRING |
BINARY DOUBLE |
DOUBLE |
BINARY FLOAT |
FLOAT |
BLOB |
BYTES |
CHAR |
VARCHAR |
CLOB |
STRING |
DATE |
DATETIME
|
DOUBLE PRECISION |
DOUBLE |
FLOAT(p) |
DOUBLE |
INTERVAL DAY TO SECOND |
UNSUPPORTED |
INTERVAL YEAR TO MONTH |
UNSUPPORTED |
LONG/LONG RAW |
UNSUPPORTED |
NCHAR |
STRING |
NCLOB |
STRING |
NUMBER |
NUMBER |
NUMBER(p,s<=0) |
Se p<=18, allora |
NUMBER(p,s>0) |
Se p= |
NVARCHAR2 |
STRING |
RAW |
STRING |
ROWID |
STRING |
SDO_GEOMETRY |
UNSUPPORTED |
SMALLINT |
INTEGER |
TIMESTAMP |
TIMESTAMP
|
TIMESTAMP WITH TIME ZONE |
TIMESTAMP WITH TIME ZONE
|
UDT (tipo definito dall'utente) |
UNSUPPORTED |
UROWID |
UNSUPPORTED |
VARCHAR |
VARCHAR |
VARCHAR2 |
VARCHAR |
XMLTYPE |
UNSUPPORTED |
Mappa i tipi di dati MySQL ai tipi unificati di Datastream
| Tipo di dati MySQL | Tipo unificato di Datastream |
|---|---|
BIGINT(size) SIGNED |
LONG |
BIGINT(size) UNSIGNED |
Se la destinazione è BigQuery, DECIMAL, se è Cloud Storage, NUMBER |
BINARY(size) |
STRING (hex encoded) |
BIT(size) |
LONG |
BLOB(size) |
STRING (hex encoded) |
BOOL |
INTEGER |
CHAR(size) |
STRING |
DATE |
Se la destinazione è BigQuery, DATE, se è Cloud Storage, TIMESTAMP |
DATETIME(fsp) |
Se la destinazione è BigQuery, DATETIME, se è Cloud Storage, TIMESTAMP |
DECIMAL(size, d) |
DECIMAL(size, d) |
DOUBLE(size, d) |
DOUBLE |
ENUM(val1, val2, val3, ...) |
STRING |
FLOAT(p) |
FLOAT |
FLOAT(size, d) |
FLOAT |
GEOMETRY |
UNSUPPORTED |
INTEGER(size) SIGNED |
INTEGER |
INTEGER(size) UNSIGNED |
LONG |
JSON |
Se la destinazione è BigQuery, JSON, se è Cloud Storage, STRING
|
LONGBLOB |
STRING (hex encoded) |
LONGTEXT |
STRING |
MEDIUMBLOB |
STRING (hex encoded) |
MEDIUMINT(size) |
INTEGER |
MEDIUMTEXT |
STRING |
SET(val1, val2, val3, ...) |
STRING |
SMALLINT(size) |
INTEGER |
TEXT(size) |
STRING |
TIME(fsp) |
Se la destinazione è BigQuery, INTERVAL, se è Cloud Storage, TIME_INTERVAL |
TIMESTAMP(fsp) |
TIMESTAMP |
TINYBLOB |
STRING (hex encoded) |
TINYINT(size) |
INTEGER |
TINYTEXT |
STRING |
VARBINARY(size) |
STRING (hex encoded) |
VARCHAR |
STRING |
YEAR |
INTEGER |
Mappa i tipi di dati PostgreSQL ai tipi unificati di Datastream
| Tipo di dati PostgreSQL | Tipo unificato di Datastream |
|---|---|
ARRAY |
JSON
|
BIGINT |
LONG |
BIT |
BYTES |
BIT VARYING |
BYTES |
BOOLEAN |
BOOLEAN |
BOX |
UNSUPPORTED |
BYTEA |
BYTES |
CHARACTER |
|
CHARACTER VARYING |
|
CIDR |
STRING |
CIRCLE |
UNSUPPORTED |
CITEXT |
STRING |
COMPOSITE |
UNSUPPORTED |
DATE |
DATE |
DOUBLE PRECISION |
DOUBLE |
ENUM |
STRING |
INET |
STRING |
INTEGER |
INTEGER |
INTERVAL |
INTERVAL |
JSON |
JSON |
JSONB |
JSON |
LINE |
UNSUPPORTED |
LSEG |
UNSUPPORTED |
MACADDR |
STRING |
MONEY |
DOUBLE |
NUMERIC |
|
OID |
LONG |
PATH |
UNSUPPORTED |
POINT |
UNSUPPORTED |
POLYGON |
UNSUPPORTED |
REAL |
FLOAT |
SMALLINT |
INTEGER |
SMALLSERIAL |
INTEGER |
SERIAL |
INTEGER |
TEXT |
STRING |
TIME |
TIME |
TIMESTAMP |
TIMESTAMP |
TIMESTAMP WITH TIME ZONE |
TIMESTAMP WITH TIME ZONE |
TIME WITH TIME ZONE |
TIME WITH TIME ZONE |
TSQUERY |
STRING |
TSVECTOR |
STRING |
TXID SNAPSHOT |
STRING |
UUID |
STRING |
XID |
STRING |
XID8 |
STRING |
XML |
STRING |
Mappa i tipi di dati SQL Server ai tipi unificati di Datastream
| Tipo di dati SQL Server | Tipo unificato di Datastream |
|---|---|
BIGINT |
LONG |
BINARY |
BYTES |
BIT |
BOOLEAN |
CHAR |
STRING |
DATE |
DATE |
DATETIME2 |
DATETIME |
DATETIME |
DATETIME |
DATETIMEOFFSET |
TIMESTAMP WITH TIME ZONE |
DECIMAL |
DECIMAL (p, s) |
FLOAT |
DOUBLE |
GEOGRAPHY |
GEOMETRY |
GEOMETRY |
GEOMETRY |
INT |
INTEGER |
IMAGE |
BYTES |
MONEY |
DECIMAL |
NCHAR |
STRING |
NVARCHAR |
STRING |
NVARCHAR(MAX) |
STRING |
NTEXT |
STRING |
NUMERIC |
DECIMAL (p, s) |
REAL |
FLOAT |
SMALLDATETIME |
DATETIME |
SMALLINT |
INTEGER |
SMALLMONEY |
DECIMAL |
TEXT |
STRING |
TINYINT |
INTEGER |
TIME |
TIME |
TIMESTAMP/ROWVERSION |
BYTES |
UNIQUEIDENTIFIER |
STRING |
VARCHAR |
STRING |
VARCHAR(MAX) |
STRING |
VARBINARY |
BYTES |
VARBINARY(MAX) |
BYTES |
XML |
STRING |
Mappa i tipi di dati di Salesforce ai tipi unificati di Datastream
Salesforce supporta due tipi di dati:
Mappature dei tipi di dati primitivi
| Tipo di dati Salesforce | Tipo unificato di Datastream |
|---|---|
BOOLEAN |
BOOLEAN |
BYTE |
BYTES |
DATE |
Se la destinazione è BigQuery, DATE, se è Cloud Storage, TIMESTAMP |
DATETIME |
Se la destinazione è BigQuery, DATETIME, se è Cloud Storage, TIMESTAMP |
DOUBLE |
DOUBLE |
INT |
INTEGER |
STRING |
STRING |
TIME |
TIME |
Mappature dei tipi di dati dei campi
| Tipo di dati Salesforce | Tipo unificato di Datastream |
|---|---|
ADDRESS |
I campi secondari di questo campo composto vengono replicati con i rispettivi tipi di dati |
ANYTYPE
(può essere |
STRING |
COMBOBOX |
STRING |
CURRENCY |
DOUBLE |
DATACATEGORYGROUPREFERENCE |
STRING |
EMAIL |
STRING |
ENCRYPTEDSTRING |
STRING |
GEOLOCATION |
I campi secondari di questo campo composto vengono replicati con i rispettivi tipi di dati |
ID |
STRING |
JUNCTIONIDLIST |
STRING |
MASTERRECORD |
STRING |
MULTIPICKLIST |
STRING |
PERCENT |
DOUBLE |
PHONE |
STRING |
PICKLIST |
STRING |
REFERENCE |
STRING |
TEXTAREA |
STRING |
URL |
STRING |
Mappa i tipi di dati Workday ai tipi unificati di Datastream
| Tipo di dati Workday | Tipo unificato di Datastream |
|---|---|
ARRAYS |
ARRAY |
BASE64BINARY |
BYTES |
BOOLEAN |
BOOLEAN |
COMPLEX TYPES |
JSON |
DATE |
DATE |
DATETIME |
TIMESTAMP |
DECIMAL |
DECIMAL |
STRING |
STRING |
Mappa i tipi di dati Spanner (GoogleSQL) ai tipi unificati di Datastream
| Tipo di dati Spanner | Tipo di dati unificato |
|---|---|
ARRAY |
ARRAY |
BOOL |
BOOLEAN |
BYTES |
BYTES |
DATE |
DATE |
FLOAT32 |
FLOAT |
FLOAT64 |
DOUBLE |
INT64 |
LONG |
JSON |
JSON |
NUMERIC |
NUMBER |
STRING |
STRING |
TIMESTAMP |
TIMESTAMP WITH TIME ZONE |
UUID |
STRING |
PROTO |
UNSUPPORTED |
ENUM |
UNSUPPORTED |
Mappa i tipi di dati Spanner (PostgreSQL) ai tipi unificati di Datastream
| Tipo di dati Spanner | Tipo di dati unificato |
|---|---|
ARRAY |
ARRAY |
BIGINT |
LONG |
BOOL |
BOOLEAN |
BYTEA |
BYTES |
CHARACTER VARYING |
STRING |
DATE |
DATE |
DECIMAL |
NUMBER |
DOUBLE PRECISION |
DOUBLE |
FLOAT8 |
DOUBLE |
INT8 |
LONG |
JSONB |
JSON |
NUMERIC |
NUMBER |
TEXT |
STRING |
TIMESTAMP WITH TIME ZONE |
TIMESTAMP WITH TIME ZONE |
TIMESTAMPTZ |
TIMESTAMP WITH TIME ZONE |
VARCHAR |
STRING |
UUID |
STRING |
Mappa i tipi di dati ServiceNow ai tipi unificati di Datastream
| Tipo di dati ServiceNow | Tipo unificato di Datastream |
|---|---|
action_conditions |
STRING |
approval_rules |
STRING |
audio |
STRING |
auto_increment |
LONG |
auto_number |
STRING |
boolean |
BOOLEAN |
bootstrap_color |
STRING |
breakdown_element |
STRING |
calendar_date_time |
DATETIME |
catalog_preview |
STRING |
char |
STRING |
choice |
STRING |
collection |
STRING |
color |
STRING |
color_display |
STRING |
composite_field |
STRING |
composite_name |
STRING |
compressed |
STRING |
conditions |
STRING |
condition_string |
STRING |
counter |
STRING |
css |
STRING |
currency |
DOUBLE |
currency2 |
JSON |
data_array |
STRING |
data_object |
JSON |
data_structure |
JSON |
date |
STRING |
datetime |
DATETIME |
days_of_week |
STRING |
day_of_week |
INTEGER |
decimal |
DOUBLE |
documentation_field |
STRING |
document_id |
JSON |
domain_id |
JSON |
domain_path |
STRING |
due_date |
DATETIME |
dynamic_attribute_store |
STRING |
email |
STRING |
email_script |
STRING |
expression |
STRING |
external_names |
STRING |
field_list |
STRING |
field_name |
STRING |
file_attachment |
STRING |
float |
DOUBLE |
formula |
STRING |
geo_point |
STRING |
glide_action_list |
STRING |
glide_date |
DATE |
glide_date_time |
DATETIME |
glide_duration |
TIME INTERVAL |
glide_encrypted |
STRING |
glide_list |
STRING |
glide_precise_time |
DATETIME |
glide_time |
DATETIME
|
glide_utc_time |
TIME |
glide_var |
STRING |
glyphicon |
STRING |
graphql_schema |
STRING |
guid |
STRING |
hash |
STRING |
html |
STRING |
html_script |
STRING |
html_template |
STRING |
icon |
STRING |
image |
STRING |
index_name |
STRING |
insert_timestamp |
DATETIME |
int |
INTEGER |
integer |
INTEGER |
integer_date |
DATE |
integer_time |
TIME |
internal_type |
STRING |
ip_addr |
STRING |
ip_address |
STRING |
journal |
STRING |
journal_input |
STRING |
journal_list |
STRING |
json |
JSON |
json_translations |
JSON |
language |
STRING |
le_progress |
STRING |
long |
LONG |
longint |
LONG |
mask_code |
STRING |
metric_absolute |
DOUBLE |
metric_counter |
DOUBLE |
metric_derive |
DOUBLE |
metric_gauge |
DOUBLE |
mid_config |
STRING |
month_of_year |
INTEGER |
multi_small |
STRING |
multi_two_lines |
STRING |
name_values |
JSON |
nds_icon |
STRING |
nl_task_int1 |
INTEGER |
order_index |
INTEGER |
password |
STRING |
password2 |
STRING |
percent_complete |
DOUBLE |
phone_number |
STRING |
phone_number_e164 |
STRING |
ph_number |
STRING |
price |
DOUBLE |
properties |
STRING |
radio |
STRING |
records |
STRING |
record_hierarchy_path |
STRING |
reference |
JSON |
reference_name |
STRING |
related_tags |
STRING |
reminder_field_name |
STRING |
repeat_count |
INTEGER |
repeat_type |
STRING |
replication_payload |
STRING |
schedule_date_time |
TIMESTAMP WITH TIME ZONE |
schedule_interval_count |
INTEGER |
script |
STRING |
script_client |
STRING |
script_plain |
STRING |
script_server |
STRING |
short_field_name |
STRING |
short_table_name |
STRING |
simple_name_values |
JSON |
slushbucket |
STRING |
snapshot_template_value |
STRING |
source_id |
JSON |
source_name |
STRING |
source_table |
STRING |
string |
STRING |
string_boolean |
STRING |
string_full_utf8 |
STRING |
structure |
STRING |
sysevent_name |
STRING |
sysrule_field_name |
STRING |
sys_class_name |
STRING |
sys_class_path |
STRING |
table_name |
STRING |
template_value |
STRING |
timer |
TIME INTERVAL |
time |
TIME |
translated |
STRING |
translated_field |
STRING |
translated_html |
STRING |
translated_text |
STRING |
tree_code |
STRING |
tree_path |
STRING |
url |
STRING |
user_image |
STRING |
user_input |
STRING |
user_roles |
STRING |
variables |
STRING |
variable_conditions |
STRING |
variable_template_value |
STRING |
version |
STRING |
video |
STRING |
week_of_month |
INTEGER |
wide_text |
STRING |
wiki_text |
STRING |
wms_job |
STRING |
workflow |
STRING |
workflow_conditions |
STRING |
xml |
STRING |
Tipi di dati MongoDB
Ogni documento MongoDB viene scritto come tipo unificato JSON in Datastream.
Per esempi di come vengono scritti i tipi di dati in BigQuery, consulta Configura una destinazione BigQuery.
Tipi di dati di Microsoft Dataverse
Ogni record di Microsoft Dataverse viene scritto come tipo unificato JSON in Datastream.
Tipi di dati di Salesforce Marketing Cloud
Ogni record di Salesforce Marketing Cloud viene scritto come tipo unificato JSON in Datastream.
Passaggi successivi
- Per saperne di più sulla configurazione di un'origine Oracle, consulta Configura un database Oracle di origine.
- Per saperne di più sulla configurazione di un'origine MySQL, consulta Configura un database MySQL di origine.
- Per saperne di più sulla configurazione di un'origine PostgreSQL, consulta Configura un database PostgreSQL di origine.
- Per saperne di più sulla configurazione di un'origine SQL Server, consulta Configura un database SQL Server di origine.
- Per saperne di più sulla configurazione di un'origine Salesforce, consulta Configura un'organizzazione Salesforce di origine.
- Per saperne di più sulla configurazione di un'origine ServiceNow, consulta Configura un'istanza ServiceNow di origine.
- Per saperne di più sulla configurazione di un'origine Workday, consulta Configura un'istanza Workday di origine.
- Per saperne di più sulla configurazione di un'origine MongoDB, consulta Configura un database MongoDB di origine.
- Per saperne di più sulla configurazione di un'origine Salesforce Marketing Cloud, consulta Configura un'origine Salesforce Marketing Cloud.