版本:v3.1.0
azkaban有17張表,分成6類project,scheduler,triggers,executions,executors,sla.
其中project中最為豐富,project包含有什么工程,工程包括哪些工作流,工程更改記錄,工程版本記錄,以及權(quán)限.
*表project_properties
用于存儲project下所有任務的屬性,比如noop/last.job
type=noop
dependencies=first1,first2,first3
存儲在project_properties就會形成
project_id|version|name |modified_time |encoding_type|property
-------------|----------|----------------|---------------------|--------------------|-----------
33| 8 |noop/last.job |1483669665276| 2| {"type":"noop","dependencies":"first1,first2,first3"}
- 表project_flows
用于存儲project中的所有flow內(nèi)的job之間的關系,一行記錄表示一個flow的job的內(nèi)部關系.
列名 | 解釋
-----------|-------------
project_id | 標識
version | 版本號
flow_id | flow唯一標識
modified_time |修改時間
encoding_type | 存儲格式(GZIP|PLAIN)
json|dag關系
json存儲類型是blob,以下我解析出來的例子:
{
"metadata":{
},
"project.id":33,
"nodes":[
{
"layout":{
"level":1
},
"propSource":null,
"jobSource":"noop/last.job",
"expectedRuntime":1,
"id":"last",
"jobType":"noop"
},
{
"layout":{
"level":0
},
"propSource":null,
"jobSource":"noop/first3.job",
"expectedRuntime":1,
"id":"first3",
"jobType":"command"
},
{
"layout":{
"level":0
},
"propSource":null,
"jobSource":"noop/first2.job",
"expectedRuntime":1,
"id":"first2",
"jobType":"command"
},
{
"layout":{
"level":0
},
"propSource":null,
"jobSource":"noop/first1.job",
"expectedRuntime":1,
"id":"first1",
"jobType":"command"
}
],
"edges":[
{
"source":"first2",
"target":"last"
},
{
"source":"first1",
"target":"last"
},
{
"source":"first3",
"target":"last"
}
],
"failure.email":[
],
"success.email":[
],
"id":"last",
"type":"flow",
"version":7,
"mailCreator":"default",
"props":[
],
"layedout":false
}
內(nèi)嵌流
{
"metadata":{
},
"project.id":3,
"nodes":[
{
"layout":{
"level":1
},
"propSource":null,
"jobSource":"longDemo/flow3.job",
"expectedRuntime":1,
"id":"flow3",
"jobType":"command"
},
{
"layout":{
"level":0
},
"propSource":null,
"embeddedFlowId":"long",
"jobSource":"longDemo/nextflow.job",
"expectedRuntime":1,
"id":"nextflow",
"jobType":"flow"
}
],
"edges":[
{
"source":"nextflow",
"target":"flow3"
}
],
"failure.email":[
],
"success.email":[
],
"id":"flow3",
"type":"flow",
"version":8,
"mailCreator":"default",
"props":[
],
"layedout":false
}