小编典典

MySQL数据库设计中的常见做法是在其中包含数百万个表和数百万行吗?

sql

我正在为一个即将到来的Web应用程序进行数据库设计,我想知道是否有人在他们当前的Web应用程序中大量使用mysql,这种设计对于一个可以说80,000个用户的Web应用程序是否有效。

1个DB

在DB中,每个用户的功能都有数百万个表,并且在每个表中可能有数百万行。

尽管此设计非常动态并且可以很好地扩展,但我想知道两件事。

  1. 这是当今Web应用程序中的常见设计吗?
  2. 如果查询数百万行,这在时间上将如何执行。
  3. 如果数据库包含数百万个表,该数据库如何执行?(再次,在时间上明智,这甚至有可能吗?)
  4. 如果它在上述条件下表现良好,那么如果所有80,000个用户每天访问数据库20-30次,每天访问10 -15分钟,那么它将如何在繁重的负载下运行?
  5. 一般来说,这将需要多少服务器空间(重申,数百万个表,每个表可能包含数百万行,其中10-15列填充文本)

任何帮助表示赞赏。


阅读 220

收藏
2021-03-23

共1个答案

小编典典

1-绝对不是。您询问的几乎每个人都会告诉您数百万张桌子,这是一个糟糕的主意。

2-数百万的ROWS很常见,所以很好。

3-可能非常糟糕, 特别是如果查询是由认为拥有数百万张表的人编写的 ,则 尤其如此 。这告诉我这是一个不太了解数据库的人。

4-参见#3

5-不可能说。额外的表会带来很多额外的开销,因为它们都需要额外的元数据。所需的空间将取决于索引以及表的宽度以及许多其他因素。

简而言之,这是一个非常非常非常糟糕的主意,您不应该这样做。

2021-03-23