Hive Data Type Conversions
This section covers data type conversions between the Trifacta Application and Hive.
Note
The Alteryx data types listed in this page reflect the raw data type of the converted column. Depending on the contents of the column, the Transformer Page may re-infer a different data type, when a dataset using this type of source is loaded.
Access/Read
When a Hive data type is imported, its JDBC data type is remapped according to the following table.
Tip
Data precision may be lost during conversion. You may want to generate min and max values and compute significant digits for values in your Hive tables and then compute the same in the Trifacta Application.
Source Data Type | Supported? | Alteryx Data Type | Notes |
---|---|---|---|
array | Y | Array | |
bigint | Y | Integer | Note The Designer Cloud Powered by Trifacta platform may infer bigint columns containing very large or very small values as String data type. |
binary | Y | String | |
boolean | Y | Bool | |
char | Y | String | |
date | Y | Datetime | |
decimal | Y | Decimal | |
double | Y | Decimal | |
float | Y | Decimal | Note On import, some float columns may be interpreted as Integer data type in the Designer Cloud Powered by Trifacta platform. To fix, you can explicitly set the column's data type to Decimal in the Transformer page. |
int | Y | Integer | |
map | Y | Object | |
smallint | Y | Integer | |
string | Y | String | |
struct | Y | Object | |
timestamp | Y | Datetime | |
tinyint | Y | Integer | |
uniontype | N | ||
varchar | Y | String |
Write/Publish
Create new table
Alteryx Data Type | Hive Data Type | Notes |
---|---|---|
String | string | |
Integer | bigint | Note The Designer Cloud Powered by Trifacta platform may infer Integer columns containing very large or very small values as String data type. Before you publish, you should verify that your columns containing extreme values are interpreted as Integer type. You can import a target schema to assist in lining up your columns with the expected target. For more information, seeOverview of Target Schema Mapping. |
Decimal | double | |
Bool | boolean | |
Datetime | Timestamp/string (see Notes on Datetime columns below) | Target data type is based on the underlying data. Time zone information is retained. |
Object | string | |
Array | string |
Append to existing table
If you are publishing to a pre-existing table, the following data type conversions apply:
Columns: Alteryx data types
Rows: Target table data types
In any table cell, a Y
indicates that the append operation for that data type mapping is supported.
Note
You cannot append to Hive map and array column types from Alteryx columns of Map and Array type, even if you imported data from this source.
String | Integer | Datetime | Bool | Decimal | Map | Array | Out of Range error | |
---|---|---|---|---|---|---|---|---|
CHAR | Y | Y | Y | Y | Y | Y | Y | |
VARCHAR | Y | Y | Y | Y | Y | Y | Y | |
STRING | Y | Y | Y | Y | Y | Y | Y | |
INT | Y | NULL | ||||||
BIGINT | Y | n/a | ||||||
TINYINT | NULL | |||||||
SMALLINT | NULL | |||||||
DECIMAL | Y | Y | NULL | |||||
DOUBLE | Y | Y | n/a | |||||
FLOAT | Y | NULL | ||||||
TIMESTAMP | Y | |||||||
BOOLEAN | Y |
Notes on Datetime columns
Columns in new tables created for output of Datetime
columns are written with the Hive timestamp
data type. These columns can be appended.
Before release 4.2.1, Datetime columns were written to Hive as type String. Jobs that were created in these releases and that write to pre-existing tables continue to behave this way.
A single job cannot write
Datetime
values to one table as String type and to another table as Timestamp type. This type of job should be split into multiple types. The table schemas may require modification.The above issue may appear as the following error when executing the job:
Unable to publish due to datetime data type conflict in column XXXX
When you export pre-generated results to Hive, all new tables created for Datetime column values continue to store String data type in Hive for Release 4.2.1. These columns can be appended with new String data.
When you publish results from a job through the Publishing dialog to Hive, all Datetime column values are written as String type.
If you are appending to a Timestamp column, the exported Datetime column must be in the following format: yyyy-MM-dd HH:mm:ss.xxxx