关闭。这个问题是基于意见的。它目前不接受答案。
**想改进这个问题吗?**更新这个问题,这样就可以通过编辑这篇文章用事实和引文来回答。
两年前关门了。
改进这个问题
我为自己的需要建立了一个学校管理系统。表的大小从~200行到~30000行/学年末/不等。
我的一些朋友看到了这个系统,他们敦促我把它提供给其他学校。我想尝试一下,至少现在有几所学校。考虑到我目前的架构和共享主机,我不得不将所有学校存储在一个数据库中,因此有两个问题困扰着我:
mysql能轻松处理>300000行的表吗?
该系统是基于yii2目前,我已经优化了它的最大性能-你认为这是明智的尝试或更好的解决方案与一个专门的服务器和单独的数据库为每个学校?
我不知道将我和其他10所学校的所有学生、出勤率、付款等信息存储在一个数据库的共享表中是否明智。与其自找麻烦,不如自问。。
任何建议都是非常受欢迎的:)
1条答案
按热度按时间dsekswqp1#
过早的优化是编程中万恶之源(至少是大部分)
你现在不应该担心这个。开始运行您的应用程序,并在扩展时确定瓶颈,然后尝试找出解决方案。
mysql能轻松处理>300000行的表吗?
首先,使用最佳规范化原则来构造表和关系。mysql非常擅长处理多达10000000行的数据。但这也取决于如何索引/查询数据。对经常用于查找的列使用适当的db索引。一个大的“不喜欢”的查询,但如果你必须,然后使用一个搜索引擎,如(弹性,solr)。
该系统是基于yii2目前,我已经优化了它的最大性能-你认为这是明智的尝试或更好的解决方案与一个专门的服务器和单独的数据库为每个学校?
我对yii2知之甚少,但肯定有更好的php框架可用,您可以尝试一下,例如larvel(这将给您一个更好的想法)。当然,最好将此应用程序托管在专用服务器上。为什么要浪费钱,当你可以有私人副总裁只要5美元从数码海洋。
我不知道将我和其他10所学校的所有学生、出勤率、付款等信息存储在一个数据库的共享表中是否明智。与其自找麻烦,不如自问。。
在同一个数据库中存储学生、出勤、付款信息绝对没有问题,只要正确地构造表就可以了。