我正在尝试使用AWS S3
将数据从 DB2 迁移到Amazon DMS CDC task
。
我想捕获当前的LSN(日志序列号)并将其添加为所有表中的新列。我已经尝试过以下方法,并且对于带有修订包2的 DB2 v9.7.0.2 可以正常工作,但是当我尝试将带有修订包7的 DB2 v10.5.0.7应用于相同的方法时,< / strong>,那么它以我不了解的其他格式提供了价值。
方法
我为所有添加了新列“ LSN_Number”的表添加了以下转换
{
"rule-type": "transformation",
"rule-id": "2",
"rule-name": "2",
"rule-target": "column",
"object-locator": {
"schema-name": "%",
"table-name": "%"
},
"rule-action": "add-column",
"value": "LSN_Number",
"expression": "$AR_H_STREAM_POSITION",
"data-type": {
"type": "string",
"length": 50
}
}
具有具有修订包2的DB2 v9.7.0.2的LSN_Number列的值如下(预期)
0000000000000000006BD1E6BD1ED46BC2
000000000000000000000006BD1ED4AAFF
000000000000000000000006BD1ED54B82
000000000000000000000006BD1ED585CD
000000000000000000000006BD1ED61E74
但是具有带有修订包7的 DB2 v10.5.0.7 的LSN_Number列的值如下
010000000003AD0AD500000000360A8D38|0200000000000000000000002E3808795F
010000000003AD0AFF00000000360A8E38|0200000000000000000000002E3808F81F
010000000003AD133300000000360AF312|0200000000000000000000002E38405DB5
两种格式之间的区别是什么,如何使用PySpark解析(010000000003AD0AD500000000360A8D38 | 0200000000000000000000002E3808795F)。