Estoy trabajando en mi primer proyecto basado en nodejs usando Feathersjs como backend y Vue como frontend. Cuando miro en la base de datos, el ID de usuario es una cadena de caracteres que se parece a esto: "IXS1rCoGogkdOOss".
Parece que usará más espacio de almacenamiento del necesario, cuando una identificación de usuario entera sería suficiente.
¿Se puede reducir el requisito de espacio de almacenamiento de alguna manera?
¿Quizás al tener la ID de usuario almacenada como un número entero en la base de datos en lugar de una cadena de texto?
Intenté revisar el código pero no puedo encontrar dónde ocurre la asignación de ID de usuario. Soy nuevo tanto en javascipt como en node.js y simplemente no puedo entender esto. La búsqueda en este sitio y la búsqueda en Google tampoco arrojaron nada.
Y la razón por la que parece una buena idea reducir el tamaño de almacenamiento de la ID de usuario es que se tratará de un SaaS de múltiples inquilinos con menos de 10 000 usuarios pero cerca de mil millones de filas que contienen la ID de usuario.
¡Gracias por la ayuda!
Editar
Usaré Postgres en producción, pero he estado usando NeDB para probar cosas inicialmente.
Las tablas con muchas filas consisten en 3 valores int más la clave principal (que es un int + ID de usuario).
Esto depende completamente de la base de datos que esté utilizando. MongoDB , Mongoose usa MongoDB ObjectIds y NeDB usa un valor similar. Para esas bases de datos, no es trivial cambiar la identificación principal a otra cosa.
Una base de datos SQL, que se puede usar a través de los adaptadores Sequelize o KnexJS , generalmente usa números enteros como clave principal.
En el gran esquema de las cosas, si las entradas de su base de datos consisten en algo más que un único valor, la cantidad de caracteres en la propiedad id realmente no importa mucho cuando se trata del tamaño real.