Це залежить, для чого використовується база даних.
У багатьох програмах (веб-додатки чи ні) база даних тісно пов'язана з цим додатком, оскільки вона служить стійким сховищем для неї. Тоді база даних концептуально є частиною програми, тому вона розробляється разом (і ви припускаєте, що жодна інша програма не отримала б значного доступу до цієї бази даних або її оновлення). BTW, наполегливість може бути досягнута іншими способами, ніж база даних, наприклад, звичайні текстові файли, двійкові файли (особливо індексовані файли à la GDBM ), сховища git (або інші VCS), каталоги або дерева файлів, нерозроблені дискові розділи, виділене обладнання (наприклад, спалах), віддалені файлові системи, контрольна точкаприйоми. Для баз даних, розроблених для однієї програми та з однією програмою, вам слід подбати про загальні шаблони пошуку та оновлення та створити схему бази даних (та індексацію!) З ними на увазі.
У деяких ситуаціях база даних сама по собі є основним і незалежним активом, і вона апріорі розроблена для використання кількома різними додатками (і навіть майбутніми). Тоді його слід проектувати самостійно (і набагато ретельніше).
Зокрема, деякі веб-програми - це лише веб-інтерфейси до існуючих баз даних.
У багатьох випадках (подумайте про деякі вікі як приклад), дані є важливішими та ціннішими, ніж додатки, що їх використовують. Ви можете піклуватися про те, як зробити це доказом у майбутньому та мати можливість легко його еволюціонувати (наприклад, використовуючи або визначаючи текстові та універсальні - переважно стандартизовані та документовані формати для резервного копіювання та відновлення).
Я зрозумів, що (PROPER) дизайн бази даних - це не маленьке завдання ...
Читайте також про NoSQL , бази даних документів , орієнтованих на , баз даних ключ-значення , управління знаннями , уявлення знань і міркувань , онтології , експертних систем , бізнес - правила наближаються , ERP , CMS . Можливо, подумайте про використання REDIS , MongoDB тощо.