Encode as integer
My data lineage systems frequently use uniqueidentifiers or hash keys. I have to apply surrogate keys to them which doesn't parallelise well or compress well in the vertipak engine.
I would like to import these fields directly into the analysis services model and mark them "encode as integer". Analysis services should encode and display the columns as an integer. The alpha-numeric code should not be stored in the dictionary. At process time, the original values would be read, coalesced across active and inactive dax relationships (thus part might be tricky) , compiled and then discarded.
My nderstanding is that it already does most of this and I mostly just want to add the extra step of discarding the dictionary.
Dylan Morgan commented
You are going to pay a pretty big price for this. Even encoding a guid as a integer this will be pretty non cardinal, and you are looking at potentially a 16 bit column in the dictionary.
Look at the reason why you need the unique field, and if there is another way to solve: the only time you absolutely need a surrogate key is in type 2 slowly changing dimensions.