最好为每个用户帐户创建一个表,或者在MYSQL中为所有用户数据创建一个巨大的表

Kei*_*ith 8 mysql

我正在创建一个 web 目录,它将允许个人用户注册一个帐户并在 mysql 数据库条目中存储本质上的文本文档。

最初可能只有几百个用户,但我们希望在某个时候有 10,000 到 100,000。每个用户将能够上传 100-200 个“文档”。

创建一个由用户编号索引的大表会更有效吗?理论上可以增长到 20,000,000 个条目。或者继续为每个用户创建一个包含他们个人文档的表格?

我假设在数据库中有数千个表是不健康的,但我真的找不到任何具体的数据。

Kár*_*agy 8

如果正确索引,MySQL 可以轻松处理 20M 行。我们有超过 10 亿行的表。

一张桌子更干净。不需要在基于用户(名称)的应用程序中做魔术。也更容易对文档表进行任何统计。

我肯定会采用一张大桌子的方法。如果您担心表(物理)大小,则应考虑对文档表进行分区。http://dev.mysql.com/doc/refman/5.5/en/partitioning-types.html