Datastream ממיר סוגי נתונים ספציפיים למקור לקבוצה סטנדרטית של סוגים מאוחדים באירועי שינוי ב-Avro וב-JSON. סוגים מאוחדים מייצגים את קבוצת העל של כל סוגי הנתונים הנתמכים במקור, כדי ש-Datastream יוכל לשכפל נתונים בין מקורות ויעדים בלי לאבד נתונים.
במאמר הזה מפורטים הסוגים המאוחדים של Datastream ומיפויי סוגי הנתונים למקורות הבאים:
- Oracle
- MySQL
- PostgreSQL
- שרת SQL
- Salesforce
- Workday (גרסת טרום-השקה (Preview))
- Spanner GoogleSQL
- Spanner PostgreSQL
- ServiceNow (גרסת טרום-השקה (Preview))
- MongoDB
- Microsoft Dataverse (גרסת טרום-השקה (Preview))
- Salesforce Marketing Cloud (גרסת טרום-השקה (Preview))
למיפויים של יעדים ב-BigQuery, קראו את המאמר מיפויים של סוגי נתונים ב-BigQuery.
סוגים מאוחדים של Datastream
| שם הסוג | מידע | הגדרת Avro | הגדרת JSON |
|---|---|---|---|
BOOLEAN |
בוליאני | בוליאני | בוליאני |
BYTES |
רצף של בייטים לא חתומים | בייטים | מחרוזת |
DATE |
ימים מאז תחילת התקופה | סוג לוגי של תאריך | מחרוזת [ISO-8601] |
DATETIME |
התאריך (בימים מאז ראשית הזמן) והשעה (במיקרו-שניות מאז חצות) | סוג מותאם אישית
{
"type": "record",
"name": "datetime",
"fields": [
{"name": "date",
"type": "int",
"logicalType": "date"},
{"name": "time",
"type": "long",
"logicalType": "time-micros"}
]
}
|
מחרוזת [ISO-8601] |
DECIMAL (p,s) |
מספר עשרוני עם סימן ודיוק שרירותי | סוג לוגי עשרוני | מספר |
DOUBLE |
מספרים בשיטת נקודה צפה (floating point) של 64 ביט | double | מספר |
FLOAT |
מספרים בשיטת נקודה צפה של 32 ביט | מספר ממשי (float) | מספר |
GEOMETRY |
אובייקט גיאומטרי או גיאוגרפי מרחבי | סוג מותאם אישית
{
"type": "record",
"name": "geometry",
"fields": [
{"name": "value",
"type": "bytes"},
{"name": "srid",
"type": "int"},
{"name": "type",
"type": "string"}
]
}
|
JSON בתצוגת עץ |
INTEGER |
מספר שלם של 32 ביט | int | מספר |
INTERVAL |
משך הזמן בין שני אירועים (בחודשים, בשעות ובמיקרו-שניות) | סוג מותאם אישית
{
"type": "record",
"name": "interval",
"fields": [
{"name": "months",
"type": "int"}
{"name": "hours",
"type": "int"},
{"name": "micros",
"type": "long"}
]
}
|
מחרוזת [ISO-8601] |
JSON |
אובייקט JSON | סוג לוגי בהתאמה אישית
{
"type": "string",
"logicalType": "json"
}
|
JSON בתצוגת עץ |
LONG |
מספר שלם של 64 ביט | ארוך | מספר |
NUMBER |
סוג נתונים מספרי | סוג לוגי בהתאמה אישית
{
"type": "string",
"logicalType": "number"
}
|
מחרוזת |
STRING |
אורך מחרוזת בלתי מוגבל | מחרוזת | מחרוזת |
TIME |
כמה מיקרו-שניות חלפו מאז חצות, בלי קשר לאזור הזמן. | סוג לוגי של time-micros | מחרוזת [ISO-8601] |
TIME INTERVAL |
כמה מיקרו-שניות חלפו בין שני אירועים | סוג לוגי בהתאמה אישית
{
"type": "long",
"logicalType": "time-interval-micros"
}
|
ארוך |
TIMESTAMP |
כמה מיקרו-שניות חלפו מאז תחילת התקופה, בלי קשר לאזור הזמן | סוג לוגי של חותמת זמן | מחרוזת [ISO-8601] |
TIMESTAMP WITH TIME ZONE |
כמה מיקרו-שניות חלפו מאז תחילת התקופה עם היסט ספציפי של אזור זמן באלפיות השנייה | סוג מותאם אישית
{
"type": "record",
"name": "timestampTz",
"fields": [
{"name": "timestamp",
"type": "long"
"logicalType": "timestamp-micros"},
{"name": "offset",
"type": "int"
"logicalType": "time-millis"}
]
}
|
מחרוזת [ISO-8601] |
TIME WITH TIME ZONE |
כמה מיקרו-שניות חלפו מאז חצות עם היסט ספציפי של אזור זמן | סוג מותאם אישית
{
"type": "record",
"name": "timeTz",
"fields": [
{"name": "time",
"type": "long"
"logicalType": "time-micros"},
{"name": "offset",
"type": "int",
"logicalType": "time-millis"}
]
}
|
מחרוזת [ISO-8601] |
UNSUPPORTED |
סוג נתונים שלא נתמך | סוג לוגי בהתאמה אישית
{
"type": "null",
"logicalType": "unsupported"
}
|
null |
VARCHAR |
מחרוזת באורך מקסימלי של n תווים | סוג לוגי בהתאמה אישית
{
"type": "string",
"logicalType": "varchar"
"length": N
}
|
מחרוזת |
מיפוי סוגי נתונים של Oracle לסוגים מאוחדים של Datastream
| סוג הנתונים ב-Oracle | סוג מאוחד של 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) |
אם p<=18, אז |
NUMBER(p,s>0) |
אם p= |
NVARCHAR2 |
STRING |
RAW |
STRING |
ROWID |
STRING |
SDO_GEOMETRY |
UNSUPPORTED |
SMALLINT |
INTEGER |
TIMESTAMP |
TIMESTAMP
|
TIMESTAMP WITH TIME ZONE |
TIMESTAMP WITH TIME ZONE
|
UDT (סוג שמוגדר על ידי המשתמש) |
UNSUPPORTED |
UROWID |
UNSUPPORTED |
VARCHAR |
VARCHAR |
VARCHAR2 |
VARCHAR |
XMLTYPE |
UNSUPPORTED |
מיפוי סוגי נתונים של MySQL לסוגים מאוחדים של Datastream
| סוג הנתונים ב-MySQL | סוג מאוחד של Datastream |
|---|---|
BIGINT(size) SIGNED |
LONG |
BIGINT(size) UNSIGNED |
אם היעד הוא BigQuery, אז DECIMAL, אם Cloud Storage, אז NUMBER |
BINARY(size) |
STRING (hex encoded) |
BIT(size) |
LONG |
BLOB(size) |
STRING (hex encoded) |
BOOL |
INTEGER |
CHAR(size) |
STRING |
DATE |
אם היעד הוא BigQuery, אז DATE, אם Cloud Storage, אז TIMESTAMP |
DATETIME(fsp) |
אם היעד הוא BigQuery, אז DATETIME, אם 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 |
אם היעד הוא BigQuery, אז JSON, אם 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) |
אם היעד הוא BigQuery, אז INTERVAL, אם 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 |
מיפוי סוגי נתונים של PostgreSQL לסוגים מאוחדים של Datastream
| סוג הנתונים ב-PostgreSQL | סוג מאוחד של 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 |
מיפוי סוגי נתונים של SQL Server לסוגים מאוחדים של Datastream
| סוג הנתונים של SQL Server | סוג מאוחד של 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 |
מיפוי סוגי נתונים של Salesforce לסוגים מאוחדים של Datastream
יש שני סוגים של נתונים שנתמכים ב-Salesforce:
מיפויים של סוגי נתונים פרימיטיביים
| סוג הנתונים ב-Salesforce | סוג מאוחד של Datastream |
|---|---|
BOOLEAN |
BOOLEAN |
BYTE |
BYTES |
DATE |
אם היעד הוא BigQuery, אז DATE, אם Cloud Storage, אז TIMESTAMP |
DATETIME |
אם היעד הוא BigQuery, אז DATETIME, אם Cloud Storage, אז TIMESTAMP |
DOUBLE |
DOUBLE |
INT |
INTEGER |
STRING |
STRING |
TIME |
TIME |
מיפויים של סוגי נתונים בשדות
| סוג הנתונים ב-Salesforce | סוג מאוחד של Datastream |
|---|---|
ADDRESS |
שדות המשנה של השדה המורכב הזה משוכפלים עם סוגי הנתונים המתאימים שלהם |
ANYTYPE
(יכול להיות |
STRING |
COMBOBOX |
STRING |
CURRENCY |
DOUBLE |
DATACATEGORYGROUPREFERENCE |
STRING |
EMAIL |
STRING |
ENCRYPTEDSTRING |
STRING |
GEOLOCATION |
שדות משנה של השדה המורכב הזה משוכפלים עם סוגי הנתונים שלהם בהתאמה |
ID |
STRING |
JUNCTIONIDLIST |
STRING |
MASTERRECORD |
STRING |
MULTIPICKLIST |
STRING |
PERCENT |
DOUBLE |
PHONE |
STRING |
PICKLIST |
STRING |
REFERENCE |
STRING |
TEXTAREA |
STRING |
URL |
STRING |
מיפוי סוגי הנתונים של Workday לסוגים המאוחדים של Datastream
| סוג הנתונים ב-Workday | סוג מאוחד של Datastream |
|---|---|
ARRAYS |
ARRAY |
BASE64BINARY |
BYTES |
BOOLEAN |
BOOLEAN |
COMPLEX TYPES |
JSON |
DATE |
DATE |
DATETIME |
TIMESTAMP |
DECIMAL |
DECIMAL |
STRING |
STRING |
מיפוי סוגי נתונים של Spanner (GoogleSQL) לסוגים מאוחדים של Datastream
| סוג הנתונים ב-Spanner | סוג נתונים מאוחד |
|---|---|
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 |
מיפוי סוגי נתונים של Spanner (PostgreSQL) לסוגים מאוחדים של Datastream
| סוג הנתונים ב-Spanner | סוג נתונים מאוחד |
|---|---|
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 |
מיפוי סוגי נתונים של ServiceNow לסוגים מאוחדים של Datastream
| סוג הנתונים ב-ServiceNow | סוג מאוחד של 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 |
סוגי נתונים של MongoDB
כל מסמך MongoDB נכתב כסוג מאוחד אחד (JSON) ב-Datastream.
במאמר הגדרת יעד ב-BigQuery מוסבר איך סוגי הנתונים נכתבים ב-BigQuery.
סוגי נתונים של Microsoft Dataverse
כל רשומה ב-Microsoft Dataverse נכתבת כסוג מאוחד JSON ב-Datastream.
סוגי הנתונים ב-Salesforce Marketing Cloud
כל רשומה ב-Salesforce Marketing Cloud נכתבת כסוג מאוחד של JSON ב-Datastream.
המאמרים הבאים
- מידע נוסף על הגדרת מקור Oracle זמין במאמר הגדרת מסד נתונים של מקור Oracle.
- מידע נוסף על הגדרת מקור MySQL זמין במאמר הגדרת מסד נתונים של מקור MySQL.
- מידע נוסף על הגדרת מקור PostgreSQL זמין במאמר הגדרת מסד נתונים של מקור PostgreSQL.
- מידע נוסף על הגדרת מקור SQL Server זמין במאמר הגדרת מסד נתונים של מקור SQL Server.
- מידע נוסף על הגדרת מקור ב-Salesforce זמין במאמר הגדרת מקור בארגון Salesforce.
- מידע נוסף על הגדרת מקור ServiceNow זמין במאמר הגדרת מכונה של מקור ServiceNow.
- מידע נוסף על הגדרת מקור ב-Workday זמין במאמר הגדרת מקור ב-Workday.
- מידע נוסף על הגדרת מקור MongoDB זמין במאמר הגדרת מסד נתונים של מקור MongoDB.
- מידע נוסף על הגדרת מקור ב-Salesforce Marketing Cloud זמין במאמר הגדרת מקור ב-Salesforce Marketing Cloud.