Attributes are associated with datasets and are defined by their name and type. The type can be primitive or complex.
The primitve types in Tamr are:
BOOLEAN
DOUBLE
INT
LONG
NULL
STRING
The complex types in Tamr are:
ARRAY
- Arrays are multi-value fields, and are common in many Tamr datasets.MAP
- Maps are defined by keys and values, where the key is aSTRING
. The values can be of any type, primitive or complex. For example, a Pairs Label Feedback Dataset.RECORD
- Records contain a list of attributes, and each of these attributes can be simple or complex. For example, a Pairs Deduplication Dataset.
An attribute is described by its base type
. Complex types (ARRAY
, MAP
, and RECORD
) need to specify their nested types. To do so, ARRAY
and MAP
should specify inner_type
, whereas RECORD
should specify attributes
.
Types list associated attributes, which could be complex or primitive. If there are no attributes associated with the base type of an attribute, such as for primitive types, an empty array [ ]
is returned.
Field | Description | Type |
---|---|---|
name | The user-given name of the attribute. Must be unique to the dataset. | String |
description | Optional. The description of the attribute. Defaults to an empty string "" . | String |
type | The type of the attribute. Can be primitive or complex. If complex, there will be nested inner and base types, as described in this topic. | Attribute Type |
isNullable | Whether the attribute can be empty. Defaults to false . | Boolean |
{
"name": "zipcodes",
"description": "",
"type": {
"baseType": "ARRAY",
"innerType": {
"baseType": "STRING",
"attributes": []
},
},
"isNullable": true
}
{
"name": "feedback",
"description": "",
"type": {
"baseType": "MAP",
"innerType": {
"baseType": "RECORD",
"attributes": [
{
"name": "username",
"type": {
"baseType": "STRING",
"attributes": []
},
"isNullable": false
},
{
"name": "assignmentInfo",
"type": {
"baseType": "RECORD",
"attributes": [
{
"name": "status",
"type": {
"baseType": "STRING",
"attributes": []
},
"isNullable": true
},
{
"name": "created",
"type": {
"baseType": "LONG",
"attributes": []
},
"isNullable": true
},
{
"name": "lastModified",
"type": {
"baseType": "LONG",
"attributes": []
},
"isNullable": true
}
]
},
"isNullable": false
}
{
"name": "record1",
"description": "",
"type": {
"baseType": "RECORD",
"attributes": [
{
"name": "foo",
"type": {
"baseType": "STRING",
"attributes": []
},
"isNullable": true
},
{
"name": "bar",
"type": {
"baseType": "LONG",
"attributes": []
},
"isNullable": true
},
{
"name": "baz",
"type": {
"baseType": "ARRAY",
"innerType": {
"baseType": "STRING",
"attributes": []
},
"isNullable": true
},
"isNullable": true
}
]
},
"isNullable": false
}