UUIDs y los objetos persistentes

Chema Cortes pych3m4 en gmail.com
Vie Nov 16 01:56:34 CET 2007


El 15/11/07, Chema Cortes <pych3m4 en gmail.com> escribió:

> No sé si tenéis experiencia con estos identificadores, pero antes de
> usarlos me surgen algunas dudas:

Creo que tengo respuestas a mis preguntas gracias a la información de
ésta página:

  http://www.itu.int/ITU-T/asn1/uuid.html


> - ¿qué tan baja es la probabilidad de repetir dos identificadores?
> Asumo que en una organización pequeña es imposible que se repitan los
> uuid; pero con internet es complicado hacerse una idea de lo que es o
> no "posible". Ya sé que son identificadores de 128bits, pero no tengo
> clara cuál es la garantía de unicidad del algoritmo utilizado
> (reconozco que no he entrado de lleno a analizarlo).

Según la página web anterior, se garantiza que ningún UUID generado se
repetirá hasta pasado el año 3603. Así mismo, si fuera necesario se
pueden generar hasta 10 millones de uuids por segundo y máquina, por
lo que se podrían usar los uuids como identificador en entornos
transaccionales,...y sin necesidad de un repositorio centralizado que
los gestione.


> - ¿qué son los "namespaces" (uuid3 y uuid5)? Más bien parecen una
> especie de "seeds" a la hora de generar los hashes (md5 y sha-1), pero
> la especificación RFC-1422 no entra en explicaciones. ¿Existe algún
> criterio para usar un namespace u otro? En un primer momento pensaba
> en usar NAMESPACE_OID para los registros en una base de datos y
> NAMESPACE_URL para los documentos. ¿Sería éso correcto?

Parece ser que el tema de los namespaces tiene que ver con los URN
("uniform resource name"). El uuid forma, en sí mismo, su propio
"espacio de nombres". El incorporar uuid3 y uuid5 es un intento de
"mapear" el resto de espacios (DNS, OID, URL, X.500) en UUID.

En resumidas cuentas, centrándome en mi propósito de hacerme una base
de datos documental, voy a dejar de lado los namespaces y emplearé
sólo uuids aleatorios (uuid.uuid4).
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es