SQL Azure large multi-tenant table / lock escalation issue / partitioning / full text index
I have found a solution.


For the tables that need full text indexing, I create an additional column, computed/persisted from the concatenation of the ProjectKey and an int identity column. This new primary key column is partitioned with PartitionFunction/Scheme A and is used as the single column unique index for the full text index.
All non-full text indexed tables are partitioned with the ProjectKey, using PartitionFunction/Scheme B.


The learning point was: Multiple different partition functions / schemes can be created in SQL Server. If the functions produce equal results, the respective tables will be "splitted" to the same partition. Using (lock_escalation = auto), every project will now be locked separately from the others.