A major question with Teradata tables is what columns to choose when a primary index must be created.
I understand that 4 different arguments might be used:
1: Is the column often accessed? If it is often accessed, best usage is made of the distibution of records over the different amps.
2: Is the column used in joins: in that case a similar argument holds. If the column is used in a join condition, usage is made of the distribution of records over the different amps.
3: Is the column often updated. If a culumn is updated, the record might be re-allocated to another amp. Hence, the less updates, the better it is to have it included in a primary index.
4: Is the cardinality high. In that case, it is possible to distribute the records over many amps, enabling Teradata to make optimal usage of the primary index capability.