try to avoid reload table, I found we can upgrade table version, and use rename column command
ALTER TABLE test_id2 SET TBLPROPERTIES (
'delta.columnMapping.mode' = 'name',
'delta.minReaderVersion' = '2',
'delta.minWriterVersion' = '6')
ALTER TABLE test_id2 rename column a to a1;
the last issue looks like no way to avoid recreating the table if we need change the partition. change partition will require a reset identity column, GENERATED ALWAYS option, which is not ideal if the column is a key for a dimension and is being referenced by other tables.