1

我正在开发一个网站,允许用户跟踪个人工艺品的销售数字。它的工作方式是用户将能够提交/编辑每周销售数据,然后一旦数据被存储,就能够以各种形式的表格或图表查看它,跟踪趋势等。

我担心的是,随着用户群的增长,如果它增长,我想要一个能够随其扩展并且易于管理的数据库设计。当涉及到像这样的适当的网络应用程序时,我是自学的,虽然我拥有组装网站所需的所有 PHP 和 JS 知识,而且我以前使用过 jQuery,但我不太确定这一点。

我最好将用户的每周报告存储在一个大表中,还是创建一个单独的数据库,其中每个用户都有自己的表,依次包含该用户的每周报告?为完成的图表提取这些数据要比更改或添加数据要多得多,所以我的目标主要是存储/调用数据的效率和简单性。

最让我难过的是处理不同用户将拥有不同数量的产品这一事实的最佳方法,并且这些数量会发生变化。在用户的第一周,他们可能会记录 2 件商品的销售记录,但到了第三周,他们会将新商品添加到他们正在销售的商品列表中。数据库需要以低开销允许这种事情,因为大多数用户将拥有超过 1 个产品。

你将如何构建这个数据库?

4

1 回答 1

2

我建议使用一个带有 innoDB 引擎的大表来进行行级锁定而不是表锁定。然后在用户名和进入时间上创建一个索引。

我建议每个用户的表有点多,你会浪费为用户可能不需要的表分配的硬盘和数据库空间。如果您的表甚至变得那么大,mySQL 支持 5+ 百万行是没有问题的。

简单是最好的。

于 2012-06-07T17:04:24.243 回答