¿Qué algoritmo de búsqueda utiliza Dynamodb?

Nov 08 2020

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

1 Marcin Nov 09 2020 at 05:25

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.