En el siguiente ejemplo se muestra la estructura para la creación de un trabajo de Teradata a Hadoop:
{
"jobName":"tdToHadoopJob",
"sourceLogin":{
"teradata":{
"tdpid":"dmdev",
"username":"dbc",
"password":"dbc",
"sessionCharset":"UTF8",
"passwordEncrypted":"false"
}
},
"targetLogin":{
"hadoop":{
"webhcatURL":"http://zircon1.labs.teradata.com:50111",
"fileSystemURL":"http://zircon1.labs.teradata.com:50070",
"oozieURL":"http://zircon1.labs.teradata.com:11000",
"username":"hive",
"passwordEncrypted":"false"
}
},
"settings":{
"priority":"MEDIUM",
"overwriteExistingObjects":"true",
"freezeJobSteps":"false",
"compareDDL":"true",
"tdHadoopSettings":{
"forceUtility":"TDCH",
"fileOptions":"text",
"columnDelimiter":"|",
"batchInsertSize":0,
"mappers":10
}
},
"jobSecurity":
{
"ownerName": "user10",
"readPermission": {
"users" : [ "user1", "user2", "user3" ],
"roles" : [ "role1", "role2", "role3" ]
},
"writePermission": {
"users" : [ "user1", "user2", "user3" ],
"roles" : [ ]
},
"executePermission": {
"users" : [ "user1", "user3" ],
"roles" : [ "role1"]
}
},
"objects":{
"database":[
{
"name":"sourceDb",
"compareDDL":"false",
"journaling":"false",
"replaceDatabase":"false",
"selection":"unselected",
"table":[
{
"name":"srcTableA",
"targetName":"tgtHadoopTableA",
"compareDDL":"false",
"useExistingTargetTable":"false",
"selection":"included",
"exportWithoutSpool":"false",
"column":[
{
"name":"lastName",
"targetName":"surname",
"targetType":"String",
"allowNull":"false",
"allowDuplicate":"false",
"primaryIndex":"false"
},
{
"name":"Street number",
"targetType":"int",
"allowNull":"false",
"allowDuplicate":"false",
"primaryIndex":"false"
}
],
"partialTableParameters":{
"sqlWhereClause":"WHERE id > 4"
}
}
]
}
],
"view":[
{
"name":"sourceViewA",
"database":"sourceDB",
"viewDataTable":{
"targetTable":"targetTableToStoreViewData",
"targetDatabase":"targetDB"
},
"validateRowCount":"PARTIAL",
"useSourceStagingTable":false,
"forceTargetStagingTable":false,
"partialTable":{
"sqlWhereClause":"WHERE id>1"
},
"selection":"unselected",
"copyData":true
}
]
}
}