Как спроектировать базу данных «Учитель-родитель», чтобы справиться с масштабом? - PullRequest
0 голосов
/ 19 мая 2018

Мы пытаемся построить платформу для общения учителей и родителей.На первом курсе у нас около 500 школ, 300 000 учеников, 30 000 учителей и 500 000 родителей.

Обзор функций:

  1. Учитель из любой школы может отправлять изображения,видео, текстовая информация для родителей детей этой школы.
  2. Мы должны сохранить посещаемость каждого ученика класса в дБ
  3. Школа может публиковать события, объявления или

Я думаю, что приведенные ниже дизайны

Design 1

All students from all the schools are in one table , Max 300,000 rows
All teachers from all the schools are in one table,  Max 30,000 rows
All events,posts from all the schools are in one table., INCREMETNS BY 1500 every day.
All the schools attendance data in single table.. increments 300,000 per a day.


Design 2
    Separating tables at school level,
    school_1_students table contains only school_1 student details,
    school_2_students table contains only school_2 student details,
    So totally 300 schools * 5 tables = 1500 tables

Design 3
  Separating databases at school level,
  School_1_db contains all the tables of school1, 
so totally 300+ dbs.

Дизайн 1 прост и отличается на уровне строк. Только посещаемость - это таблица, которая фактически добавляет 300 000 строк в день, если мы отделим только эту таблицу от школыуровень или любое предложение?

Design 2 создает более 1000 таблиц в одной базе данных, и почти все схемы таблиц одинаковы.

Design 3 дает хорошее разделение и можем ли мы динамически работать с различнымибазы данных с nodejs и как управлять подключениями к нескольким БД?

Учащиеся и родители будут расти с каждым годом.Таким образом, мы должны думать о будущем выживании системы.Должны ли мы перейти на NOSQL или SQL?

Какова отраслевая практика для такого рода систем?Пожалуйста, предложите некоторые изменения или ссылки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...