【发布时间】:2011-07-11 15:36:04
【问题描述】:
我想为卡车司机建立一个在线日志。目标是在卡车司机登录后,他/她立即看到他/她今年/月/日的驾驶总数的快照,以及每年/月/日的其他一些总数。 因此,存储在数据库中的信息仅与每个用户(卡车司机)相关。我个人不需要整个数据库中的任何统计数据(仅针对每个用户)。
假设有 10,000 个用户。
我的问题与 mySQL 数据库的设计有关。
由于存储的信息仅与每个用户相关,而不是大量相关,因此将数据存储在每个用户的表中是否有意义...导致 10,000 个表?这会导致最有效/最快的数据库吗? 或我是否应该将所有行转储到一个大的“日志”表中,并将其与另一个表“用户”相关联......即使只针对每个用户进行分析?
以下是每个用户需要存储的一些信息(最多大约 30 列): 日期 - 卡车品牌/型号 - 卡车 ID - 路线编号 - 从 - 到 - 总时间 - 停靠点 - 耗油量 - 夜间 - 船员(第二名司机) - ......
【问题讨论】:
-
我会选择“一个表来统治所有人”,并有一个用户表,使您能够识别卡车司机及其日志。使用明确定义的架构和良好的查询,您不应该有任何性能问题:) --- 编辑您可能还希望有一个卡车表。否则,您的“日志”表中会出现大量重复的卡车数据
-
看我的回答,或许能帮到你更多。
-
经验法则:就关系数据库而言,“每个用户一个表”几乎从来都不是一个好主意。我写“几乎”是因为可能会有一些极端情况,但我还没有听说过。
-
我也读过这个。谢谢输入!
标签: php mysql database-design multi-tenant