减少 Nodejs/Expressjs/Feathersjs 中用户 ID 所需的存储空间 space

Reduce storage space needed in Nodejs/Expressjs/Feathersjs for the user ID

我正在开发我的第一个基于 nodejs 的项目,使用 Feathersjs 作为后端,使用 Vue 作为前端。当我查看数据库时,用户 ID 是一个看起来像这样的字符串:"IXS1rCoGogkdOOss".

这似乎会使用比需要更多的存储空间 space,而整数用户 ID 就足够了。

存储空间 space 的要求能以某种方式降低吗?

也许通过将用户 ID 作为整数而不是文本字符串存储在数据库中?

我试图查看代码,但找不到用户 ID 分配发生的位置。我是 javascipt 和 node.js 的新手,我无法理解这个问题。搜索此站点和谷歌搜索也没有任何结果。

减少用户 ID 的存储大小似乎是个好主意的原因是,这将是一个多租户 SaaS,用户少于 1 万,但包含用户 ID 的行接近十亿。

感谢您的帮助!

编辑

我将在生产中使用 Postgres,但最初一直在使用 NeDB 进行尝试。

多行表由3个int值加上主键(int+user ID)组成。

这完全取决于您使用的数据库。 MongoDB, Mongoose use MongoDB ObjectIds and NeDB 使用相似的值。对于这些数据库,将主 ID 更改为其他内容并非易事。

SQL 数据库 - 可以通过 Sequelize or KnexJS 适配器使用 - 通常使用整数作为主键。

在宏伟的计划中,如果您的数据库条目包含的不仅仅是一个其他值,那么 id 属性 中的字符数在实际大小方面并不那么重要.