Data Types
Using supported data types
Source tables may be synced to a number of different destination databases or data warehouses. While many databases represent most data types the same, there are a number of differences across naming conventions. Therefore, as part of the Prequel configuration, each destination column must be manually typed with one of the PREQUEL
types below so that the table can be per destination with the right data type.
Using the following
PREQUEL
type mapsThe
PREQUEL
type used during configuration is used for two purposes:
- Specifying the source type during source and data model configuration. To determine the right
PREQUEL
type to write in your config, use the "Source type mapping" table.- Predicting the destination type based on the connected destination. To predict the data type that will be loaded into a given destination, use the "Destination type mapping".
Source type mapping
If you are configuring your source and need to decide what PREQUEL
type to use, reference this table.
Prequel Type | Supported | Athena | BigQuery | Clickhouse | Databricks | MySQL | Postgres | Redshift | Snowflake | SQL Server |
---|---|---|---|---|---|---|---|---|---|---|
bytes | ✔️ | binary | bytes | blob, mediumblob, longblob | binary | binary, varbinary, blob, mediumblob, longblob | bytea | VARBYTE, VARBINARY, BINARY VARYING | binary, varbinary | binary, image, varbinary |
string | ✔️ | char, varchar, string | string | string, fixedstring, text, mediumtext, longtext, varchar | string | string, char, text, longtext, varchar | char, character, character varying, text, uuid, varchar | CHAR, CHARACTER, NCHAR, BPCHAR, CHARACTER VARYING, NVARCHAR, TEXT | CHAR, CHARACTER, NCHAR, BPCHAR, CHARACTER VARYING, NVARCHAR, TEXT | char, varchar, text, nvarchar, ntext, nchar |
boolean | ✔️ | boolean | bool | bool, boolean | boolean | boolean | boolean | boolean | boolean | bit |
integer | ✔️ | smallint, integer | smallint, int64, bigint | int, int8, int16, int32 | smallint, int | smallint, mediumint, int | smallint, integer | smallint, integer | smallint, integer | smallint, int |
bigint | ✔️ | bigint | int64, bigint | int64, bigint | bigint | bigint | bigint | bigint | bigint | bigint |
decimal | ✔️ | decimal | decimal, numeric | decimal, numeric | decimal, dec, numeric | decimal, numeric | decimal, numeric | decimal, numeric | decimal, numeric | decimal, numeric |
float | ✔️ | real, float | float64 | float32, float64, double | float, double | float, double | real, double precision | real, float4, float8, double precision | real, float4, float8, double precision | float, real |
timestamp | ✔️ | timestamp | timestamp | datetime, Datetime64 | timestamp | timestamp, datetime | timestamp, timestamptz | timestamp, timestamptz | timestamp, timestamp_ntz, timestamp_tz, timestamp_ltz | datetime2 |
date | ✔️ | date | date | date | date | date | date | date | date | date |
json | ✔️ | varchar, string | json | string* | string | json | json, jsonb | varchar(MAX) | varchar, variant | nvarchar(MAX) |
time * | ✖️ | varchar, string | time | time | string | time | time | time | time | time |
* An asterisk indicates partial support. Ask us about any specific data type limitations.
Destination type mapping
If you are predicting what data type your destination will receive, reference this table.
Prequel Type | Supported | Athena | BigQuery | Clickhouse | Databricks | MySQL | Postgres | Redshift | Snowflake | SQL Server |
---|---|---|---|---|---|---|---|---|---|---|
bytes | ✔️ | string | bytes | blob | binary | binary | bytea | VARBYTE(MAX)* | binary | blob |
string | ✔️ | string | string | string | string | text | text | varchar(MAX) | text | nvarchar(MAX) |
boolean | ✔️ | boolean | bool | boolean | boolean | boolean | boolean | boolean | boolean | bit |
integer | ✔️ | integer | int64 | integer | int | int | integer | bigint | integer | int |
bigint | ✔️ | bigint | bigint | bigint | bigint | bigint | bigint | bigint | bigint | bigint |
decimal | ✔️ | decimal | decimal | decimal | decimal | decimal | decimal | decimal | decimal | decimal |
float | ✔️ | float | float64 | double | double | double | double precision | double precision | float | |
timestamp | ✔️ | timestamp | timestamp | Datetime64 | timestamp | timestamp | timestamptz | timestamptz | timestamp_tz | datetime2 |
date | ✔️ | date | date | date | date | date | date | date | date | date |
json | ✔️ | string | json* | string* | string | json | jsonb | varchar(MAX) | variant | nvarchar(MAX) |
* An asterisk indicates partial or incomplete support. Ask us about any specific data type limitations.
Updated about 1 year ago