We're moving some processes from a Sql Server database environment which allows identity columns to a Sql Server database environment that does not allow identity columns. How can we effeciently create unique integer values for surrogate primary keys without using the identity construct?
As for why we can't use an identity column, Microsoft's Parallel Data Warehouse splits tables between physically distinct servers. Microsoft removed the identity feature from the PDW because you would have to communicate between all of the servers to find the new identity value for each insert in a distributed table, which pretty much negates the point of parallelism.