gpt4 book ai didi

database - 将 "votes"存储在数据库中

转载 作者:太空狗 更新时间:2023-10-30 01:42:11 26 4
gpt4 key购买 nike

我正在编写一个内联网应用程序,其功能之一大致类似于内容投票 - 与 SO、Amazon 和许多其他网站所做的没什么不同。

假设每个可投票的内容都有一个唯一的 ID,并且每个用户(他们经过身份验证)都有一个唯一的 ID,最简单的方法似乎是拥有一个“投票”表......

ContentID int
UserID int
VoteValue int

但这会为每次投票创建一行 - 有数百万条内容和数万名用户,该表将会非常巨大。这是最好的方法吗?我的意思是,如果一个 int 占用 4 个字节,则每行占用 12 个字节。如果一百万条内容获得一百票,那就是 400MB 以上的存储空间,是吗?似乎...很多 :)。即使 VoteValue 是一个 tinyint(可能没问题)并且只有 1 个字节,表中仍然有几百兆字节。我是说 sheesh。

有没有更聪明的方法?我是否应该将此“投票”表存储在单独的数据库中(忽略潜在的数据完整性问题),以便在存储和性能方面将其与“主要”数据分开?

(我确实意识到在当今世界 400MB 不是一吨 - 但它似乎只是为了存储选票,是吗?)

最佳答案

嗯,是的,但你需要放眼大局。拥有一百万条内容:

(内容大小)>>(投票大小):其中“>>”表示“更大”。

如果您有一百万条内容,那么这可能是一个 TB 的数据,而投票是 400MB。很重要吧?

我还要补充一点,如果您担心可扩展性,请查看此博客:

http://highscalability.com/

关于database - 将 "votes"存储在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/342609/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com