¿Qué algoritmo de búsqueda utiliza Dynamodb?
El motivo de esta pregunta es:
Estamos planeando tener un UUID como clave de partición para una identificación de un usuario, empresa y tablas de carga para un proyecto de tablero de carga y estamos usando DynamoDB.
La cosa es cuando tenemos miles de registros en un DynamoDB supuestamente una tabla de usuarios y quiero buscar un usuario con su identificación de usuario.
¿Será la búsqueda más eficiente con UUID (ff44393c-bec6-4005-a966-15050fd9bb77) o la identificación normal de Interger como (001,002 .....)? Como clave de partición.
También pude ver que el formato UUID es un estándar que mantiene la mayoría de la aplicación, pero no estoy seguro de si sus casos de uso coinciden con los nuestros.
Respuestas
Hay un blog de AWS que ofrece recomendaciones sobre la clave de partición:
- Elección de la clave de partición adecuada de DynamoDB
Una de las recomendaciones dadas es:
Utilice atributos de cardinalidad alta . Estos son atributos que tienen valores distintos para cada elemento, como e-mailid, employee_no, customerid, sessionid, orderid, etc.
Además, escriben que usar secuencias es un anti-patrón. Por lo tanto, creo UUIDque sería mejor en su caso.