Я хотел бы построить распределенную систему. Мне нужно хранить данные в базах данных, и было бы полезно использовать UUID или GUID в качестве первичного ключа для некоторых таблиц. Я предполагаю, что у этого дизайна есть недостатки, так как UUID / GUID довольно большой, и они почти случайны. Альтернатива - использовать автоматически увеличенный INT или LONG.
Каковы недостатки использования UUID или GUID в качестве первичного ключа для моих таблиц?
Я, вероятно, буду использовать Derby / JavaDB (на клиентах) и PostgreSQL (на сервере) в качестве СУБД.