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. An example usage is the Pairs Label Feedback Dataset.RECORD
- Records contain a list of attributes, and each of these attributes can be simple or complex. An example usage is the Pairs Deduplication Dataset.
An attribute is described by its base type
. If a base type
is complex, then it will have a nested inner type
. The inner type
is defined by its own base type
, which in turn can be simple or complex.
Types will list associated attributes, whether it is 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 above. | 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
},
"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
}