Pra mim a única vantagem é poder gerar UUID fora do banco sem risco
significativo de colisão. Aliás, o fato de não haver 100% de garantia de que
não haverá JAMAIS uma colisão no longo prazo (imagine dezenas de anos em
centenas de filiais com milhares de transações por segundo) é uma
desvantagem. Qualquer probabilidade maior que 0% pode sempre acontecer -- e
Murphy nos garante que VAI acontecer. E o pior: quando houver uma colisão,
se o UUID não for UNIQUE ninguém ficará sabendo...

Outras desvantagens:
- dificulta o DEBUG (e eventuais auditorias),
Imagine ativar o "log_statement = mod" e acompanhar o resultado. Imagine
tentar rastrear o que um determinado usuário fez num dia e hora específicos
olhando os SQL que ele gerou no período. Sabemos que pode-se modelar a
auditoria, mas os negócios evoluem e o que se quer monitorar hoje é
diferente do que se monitorava ontem. Arquivar o SQL é uma "garantia" de
poder buscar coisas do passado, quando não se gravava a trilha de auditoria
que se grava hoje.

- ocupa BEM mais espaço em disco/memória que integer
Uma UUID ocupa 128 bits. Um inteiro ocupa 32 bits. Em alguns casos pode-se
usar até smallint, que ocupa 16 bits. Numa tabela que represente um
relacionamento N x N com apenas duas colunas, pode-se ter um pulo de 4 (dois
smallint) para 32 bytes (dois UUID) por tupla. Os índices também sofrem um
impacto significativo. Nunca gostei do argumento "memória é barata".

- não pode ser usada em comunicação verbal.
Imagine uma atendente de call center passando uma UUID para o cliente anotar
como "número da transação". Se eu tiver que usar uma sequence pra gerar este
"número da transação", o uso de UUID perde todo o sentido.

Em 5 de março de 2010 10:17, Dickson S. Guedes <[email protected]>escreveu:

> Em 5 de março de 2010 09:30, Alexsander Rosa
> <[email protected]> escreveu:
> >
> > Em 4 de março de 2010 17:40, Leandro DUTRA <[email protected]>
> > escreveu:
> >>
> >> 2010/3/4 Alexsander Rosa <[email protected]>:
> >> > Podem me chamar de ultrapassado, mas nunca simpatizei com UUIDs.
> >>
> >> Mór di quê?
> >>
> >
> > Acho que as desvantagens superam as vantagens.
>
> Em sua opinião quais seriam?
>
> --
> Dickson S. Guedes
> mail/xmpp: [email protected] - skype: guediz
> http://guedesoft.net - http://www.postgresql.org.br
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>



-- 
Atenciosamente,
Alexsander da Rosa
Linux User #113925

"Extremismo na defesa da liberdade não é defeito.
Moderação na busca por justiça não é virtude."
-- Barry Goldwater
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a