表中的列最适合的数据类型是什么?

问题描述 投票:0回答:1

目前我正在尝试开发一个 PostgreSQL 数据库模式,它只有 2 个表,其中一个包含用户名。困难在于,由于某些原因我无法直接存储用户名,所以我必须存储哈希值(SHA256)。

Postgres 有一个 bytea 数据类型,它是一个字节数组,技术上是 SHA256。

我的问题是,就搜索用户名是否存在于数据库中的速度而言,是否有更好的类型来存储哈希值。

也许我应该寻找 NoSQL 解决方案,这样的搜索速度更快?

sql database postgresql nosql
1个回答
0
投票

这可能是一个微观优化,但

bytea
会使用更少的空间并更快地进行比较。

如果您最终使用

text
(避免使用
character
),请确保您使用的是
C
排序规则:

hash_value text COLLATE "C"

其他排序规则将导致更昂贵的比较。

© www.soinside.com 2019 - 2024. All rights reserved.