Я в основном самоучка, когда дело доходит до дизайна базы данных. Я задаю этот вопрос, потому что я остановился на этой общей структуре, но мне интересно, является ли это наиболее эффективным или «отраслевым стандартом» методом.
У большинства баз данных, которые я проектирую, есть таблица пользователей, а затем активность людей отслеживается в другой таблице. Я понимаю, что красота базы данных заключается в том, что она обеспечивает эффективность такого рода, но таблица активности будет собирать достаточно много событий достаточно быстро от каждого пользователя, регулярно ее использующего, таким образом, превращаясь в огромную таблицу довольно быстро при умеренном использовании пользователями. Это лучшая практика, чтобы просто позволить этому расти таким образом? Или это уровень таблиц, или разделение на разные таблицы по датам, количеству пользователей или что-то еще?
+--------------------+ +------------------------+
| UserData | | Activity |
+-=------------------+ +------------------------+
| ID (auto uint) | <--1-to-many-+ | ID (auto uint) |
| UserName (text) | +--> | UserID (uint) |
| Email (text) | | Timestamp (time) |
| additional info... | | Type (ID to elsewhere) |
+--------------------+ | additional info... |
+------------------------+
Я просто хотел бы знать, где я могу улучшить что угодно, чтобы помочь мне учиться.