The CA Database Management for Db2 for z/OS offer several options to assist/automate the conversion of traditional Db2 Tablespaces to UTS. We will cover a couple of use-cases in this article.
Converting simple or segmented tablespaces to PBGs is pretty straightforward. All you have to do is alter the tablespace: ALTER TABLESPACE db.ts MAXPARTITIONS 1, which makes this a pending change. By executing the REORG utility, the pending change will be instantiated.
You can accomplish this task with CA RC/Query for Db2 for z/OS:
So it is pretty easy to handle this task for tablespaces having only ONE table, but it is not possible to use the same process for tables residing in multi-table tablespaces. You will have to execute the DBA nightmare of UDCL (Unload-Drop-Create-Load). If you only have a few it's not that hard, but if you have dozens or hundreds the task can be daunting.
Db2 12 FL508 (Function Level 508) as of late 2020 delivered a new schema ALTER command which will assign a table to a new tablespace. The schema change will result in a PENDING schema change which will be instantiated upon REORG.
Using CA Database Analyzer for Db2 for z/OS you have a few options to choose from. However, here we will only describe one method where we will let PDA find the tablespaces and convert those described here.
You will need an Action Procedure which will use a US-model (User Defined Model). In this case, we created a model member named FL508 in the highlvl.CDBAMDL library. One word of caution, by default CA Database Analyzer operates on the tablespace level and not table level, so it is necessary to modify the highlvl.CDBAPARM(PDA) to have TABLE_COND (Y) so PDA will generate the actions on the table level, and it is also necessary to have a symbolic %TBNAME present in the model.
Thanks Jeff, that is a great point!