* https://blog.twitter.com/2010/announcing-snowflake
* http://engineering.custommade.com/simpleflake-distributed-id...
* http://boundary.com/blog/2012/01/12/flake-a-decentralized-k-...
* https://blog.twitter.com/2010/announcing-snowflake
* http://engineering.custommade.com/simpleflake-distributed-id...
* http://boundary.com/blog/2012/01/12/flake-a-decentralized-k-...
I imagine this approach could also work on Postgres and other dbs that have made GUID/UUIDs a first class data type. You'd just have to understand how that database applies its indexing algorithm.
Description of the GuidComb approach here: http://www.informit.com/articles/article.asp?p=25862
GuidComb implementation in C# (from NHibernate core) here: https://github.com/nhibernate/nhibernate-core/blob/master/sr...
That said, this appears to be exactly the scheme MongoDB uses (except Mongo IDs are 96 bits).
2 machines can have the same MAC addresses (they are reprogrammable) and can operate at the same microsecond.
"aren't randomly generated" is not practical constraint in a high-speed distributed system (where you don't have time for synchronization overhead).