Datastream mengonversi jenis data khusus sumber menjadi kumpulan standar jenis terpadu dalam peristiwa perubahan Avro dan JSON. Jenis terpadu mewakili superset dari semua jenis data sumber yang didukung sehingga Datastream dapat mereplikasi data di seluruh sumber dan tujuan tanpa kehilangan data.
Dokumen ini mencantumkan jenis terpadu Datastream dan pemetaan jenis data untuk sumber berikut:
- Oracle
- MySQL
- PostgreSQL
- SQL Server
- Salesforce
- Workday (Pratinjau)
- Spanner GoogleSQL
- Spanner PostgreSQL
- ServiceNow (Pratinjau)
- MongoDB
- Microsoft Dataverse (Pratinjau)
- Salesforce Marketing Cloud (Pratinjau)
Untuk pemetaan tujuan BigQuery, lihat Pemetaan jenis data di BigQuery.
Jenis terpadu Datastream
| Nama jenis | Info | Definisi Avro | Definisi JSON |
|---|---|---|---|
BOOLEAN |
boolean | boolean | boolean |
BYTES |
Urutan byte yang tidak ditandatangani | byte | string |
DATE |
Hari sejak epoch | Jenis logika date (tanggal) | string [ISO-8601] |
DATETIME |
Tanggal (dalam hari sejak epoch) dan waktu (dalam mikrodetik sejak tengah malam) | Jenis kustom
{
"type": "record",
"name": "datetime",
"fields": [
{"name": "date",
"type": "int",
"logicalType": "date"},
{"name": "time",
"type": "long",
"logicalType": "time-micros"}
]
}
|
string [ISO-8601] |
DECIMAL (p,s) |
Angka desimal bertanda dengan presisi arbitrer | Jenis logika desimal | angka |
DOUBLE |
Bilangan floating point 64-bit | double | angka |
FLOAT |
Bilangan floating point 32 bit | float | angka |
GEOMETRY |
Objek geometri atau geografi spasial | Jenis kustom
{
"type": "record",
"name": "geometry",
"fields": [
{"name": "value",
"type": "bytes"},
{"name": "srid",
"type": "int"},
{"name": "type",
"type": "string"}
]
}
|
JSON bertingkat |
INTEGER |
Bilangan bulat 32-bit | int | angka |
INTERVAL |
Durasi antara dua peristiwa (dalam bulan, jam, dan mikrodetik) | Jenis kustom
{
"type": "record",
"name": "interval",
"fields": [
{"name": "months",
"type": "int"}
{"name": "hours",
"type": "int"},
{"name": "micros",
"type": "long"}
]
}
|
string [ISO-8601] |
JSON |
Objek JSON | Jenis logika kustom
{
"type": "string",
"logicalType": "json"
}
|
JSON bertingkat |
LONG |
Bilangan bulat 64-bit | long | angka |
NUMBER |
Jenis data numerik | Jenis logika kustom
{
"type": "string",
"logicalType": "number"
}
|
string |
STRING |
Panjang string tanpa batas | string | string |
TIME |
Berapa mikrodetik yang telah berlalu sejak tengah malam, terlepas dari zona waktu. | Jenis logika time-micros | string [ISO-8601] |
TIME INTERVAL |
Berapa mikrodetik yang berlalu di antara dua peristiwa | Jenis logika kustom
{
"type": "long",
"logicalType": "time-interval-micros"
}
|
long |
TIMESTAMP |
Berapa mikrodetik yang berlalu sejak epoch, terlepas dari zona waktu | Jenis logika stempel waktu | string [ISO-8601] |
TIMESTAMP WITH TIME ZONE |
Jumlah mikrodetik yang berlalu sejak epoch dengan offset zona waktu tertentu dalam milidetik | Jenis kustom
{
"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 |
Jumlah mikrodetik yang berlalu sejak tengah malam dengan selisih zona waktu tertentu | Jenis kustom
{
"type": "record",
"name": "timeTz",
"fields": [
{"name": "time",
"type": "long"
"logicalType": "time-micros"},
{"name": "offset",
"type": "int",
"logicalType": "time-millis"}
]
}
|
string [ISO-8601] |
UNSUPPORTED |
Jenis data yang tidak didukung | Jenis logika kustom
{
"type": "null",
"logicalType": "unsupported"
}
|
null |
VARCHAR |
String dengan panjang maksimum n karakter | Jenis logika kustom
{
"type": "string",
"logicalType": "varchar"
"length": N
}
|
string |
Memetakan jenis data Oracle ke jenis terpadu Datastream
| Jenis data Oracle | Jenis terpadu 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) |
Jika p<=18, maka |
NUMBER(p,s>0) |
Jika p= |
NVARCHAR2 |
STRING |
RAW |
STRING |
ROWID |
STRING |
SDO_GEOMETRY |
UNSUPPORTED |
SMALLINT |
INTEGER |
TIMESTAMP |
TIMESTAMP
|
TIMESTAMP WITH TIME ZONE |
TIMESTAMP WITH TIME ZONE
|
UDT (jenis yang ditentukan pengguna) |
UNSUPPORTED |
UROWID |
UNSUPPORTED |
VARCHAR |
VARCHAR |
VARCHAR2 |
VARCHAR |
XMLTYPE |
UNSUPPORTED |
Memetakan jenis data MySQL ke jenis terpadu Datastream
| Jenis data MySQL | Jenis terpadu Datastream |
|---|---|
BIGINT(size) SIGNED |
LONG |
BIGINT(size) UNSIGNED |
Jika tujuannya adalah BigQuery, maka DECIMAL, jika Cloud Storage, maka NUMBER |
BINARY(size) |
STRING (hex encoded) |
BIT(size) |
LONG |
BLOB(size) |
STRING (hex encoded) |
BOOL |
INTEGER |
CHAR(size) |
STRING |
DATE |
Jika tujuannya adalah BigQuery, maka DATE, jika Cloud Storage, maka TIMESTAMP |
DATETIME(fsp) |
Jika tujuannya adalah BigQuery, maka DATETIME, jika Cloud Storage, maka 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 |
Jika tujuannya adalah BigQuery, maka JSON, jika Cloud Storage, maka 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) |
Jika tujuannya adalah BigQuery, maka INTERVAL, jika Cloud Storage, maka TIME_INTERVAL |
TIMESTAMP(fsp) |
TIMESTAMP |
TINYBLOB |
STRING (hex encoded) |
TINYINT(size) |
INTEGER |
TINYTEXT |
STRING |
VARBINARY(size) |
STRING (hex encoded) |
VARCHAR |
STRING |
YEAR |
INTEGER |
Memetakan jenis data PostgreSQL ke jenis terpadu Datastream
| Jenis data PostgreSQL | Jenis terpadu 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 |
Memetakan jenis data SQL Server ke jenis terpadu Datastream
| Jenis data SQL Server | Jenis terpadu 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 |
Memetakan jenis data Salesforce ke jenis terpadu Datastream
Ada dua jenis tipe data yang didukung Salesforce:
Pemetaan jenis data primitif
| Jenis data Salesforce | Jenis terpadu Datastream |
|---|---|
BOOLEAN |
BOOLEAN |
BYTE |
BYTES |
DATE |
Jika tujuannya adalah BigQuery, maka DATE, jika Cloud Storage, maka TIMESTAMP |
DATETIME |
Jika tujuannya adalah BigQuery, maka DATETIME, jika Cloud Storage, maka TIMESTAMP |
DOUBLE |
DOUBLE |
INT |
INTEGER |
STRING |
STRING |
TIME |
TIME |
Pemetaan jenis data kolom
| Jenis data Salesforce | Jenis terpadu Datastream |
|---|---|
ADDRESS |
Subkolom dari kolom gabungan ini direplikasi dengan jenis datanya masing-masing |
ANYTYPE
(dapat berupa |
STRING |
COMBOBOX |
STRING |
CURRENCY |
DOUBLE |
DATACATEGORYGROUPREFERENCE |
STRING |
EMAIL |
STRING |
ENCRYPTEDSTRING |
STRING |
GEOLOCATION |
Subkolom dari kolom gabungan ini direplikasi dengan jenis datanya masing-masing |
ID |
STRING |
JUNCTIONIDLIST |
STRING |
MASTERRECORD |
STRING |
MULTIPICKLIST |
STRING |
PERCENT |
DOUBLE |
PHONE |
STRING |
PICKLIST |
STRING |
REFERENCE |
STRING |
TEXTAREA |
STRING |
URL |
STRING |
Memetakan jenis data Workday ke jenis terpadu Datastream
| Jenis data Workday | Jenis terpadu Datastream |
|---|---|
ARRAYS |
ARRAY |
BASE64BINARY |
BYTES |
BOOLEAN |
BOOLEAN |
COMPLEX TYPES |
JSON |
DATE |
DATE |
DATETIME |
TIMESTAMP |
DECIMAL |
DECIMAL |
STRING |
STRING |
Memetakan jenis data Spanner (GoogleSQL) ke jenis terpadu Datastream
| Jenis data Spanner | Jenis data terpadu |
|---|---|
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 |
Memetakan jenis data Spanner (PostgreSQL) ke jenis terpadu Datastream
| Jenis data Spanner | Jenis data terpadu |
|---|---|
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 |
Memetakan jenis data ServiceNow ke jenis terpadu Datastream
| Jenis data ServiceNow | Jenis terpadu 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 |
Jenis data MongoDB
Setiap dokumen MongoDB ditulis sebagai jenis terpadu JSON di Datastream.
Untuk mengetahui contoh cara penulisan jenis data di BigQuery, lihat
Mengonfigurasi tujuan BigQuery.
Jenis data Microsoft Dataverse
Setiap kumpulan data Microsoft Dataverse ditulis sebagai jenis terpadu JSON di
Datastream.
Jenis data Salesforce Marketing Cloud
Setiap kumpulan data Salesforce Marketing Cloud ditulis sebagai jenis terpadu JSON di Datastream.
Langkah berikutnya
- Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi sumber Oracle, lihat Mengonfigurasi database Oracle sumber.
- Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi sumber MySQL, lihat Mengonfigurasi database MySQL sumber.
- Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi sumber PostgreSQL, lihat Mengonfigurasi database PostgreSQL sumber.
- Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi sumber SQL Server, lihat Mengonfigurasi database SQL Server sumber.
- Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi sumber Salesforce, lihat Mengonfigurasi org Salesforce sumber.
- Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi sumber ServiceNow, lihat Mengonfigurasi instance ServiceNow sumber.
- Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi sumber Workday, lihat Mengonfigurasi instance Workday sumber.
- Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi sumber MongoDB, lihat Mengonfigurasi database MongoDB sumber.
- Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi sumber Salesforce Marketing Cloud, lihat Mengonfigurasi sumber Salesforce Marketing Cloud.