我正在构建一个大型网络应用程序,它将帮助“区域经理”管理多个地区的多所学校。
总共有大约400,000名学生和教师。
除了管理成绩等显而易见的事情之外,我们还必须管理出勤率(每天)。
我习惯于以较小的规模构建 Web 应用程序,并将其部署到 Heroku。鉴于这种规模的系统,我应该考虑从现在开始使用非关系数据库,还是应该坚持使用 PostgreSQL 并进行特定优化以确保高速和数据完整性?
如果不清楚,主要问题是系统在管理这么多表中的这么多记录时速度太慢 - 在关系数据库系统中。
另外,如果建议使用关系数据库,我可以做哪些常见的优化来确保速度?最大、最明显的一个是对最常访问的信息使用索引......其他类似的东西将不胜感激。
谢谢。
PS 我的团队在我们应该做什么方面存在分歧,所以你们会发出有用的声音来帮助平衡:)