Проектування баз даних: етапи та засади

У світ плавних форм від точних прямокутників

З приходом у світ об’єктно-орієнтованого програмування, сериализация даних отримала друге дихання. Дійсно, все навколо – лише рядки, бажано невизначеної довжини. Числа і дати – теж рядка символів.

Міць і об’єктивність реляційних відносин – безперечна, але хіба динаміка колонок і рядків завдає шкоди їх репутації? Таблиця – це просто дані, які можуть мати шапку (список колонок) або не мати рядків. Нехай таблиця – це просто сукупність даних, не обов’язково іменована.

Сукупність може бути однорідною і в ній можна виявити дані різної структури. Принципово, однорідність даних свідчить про опрацювання області застосування. Розподіл даних за типами та видами – ознака системності та об’єктивного підходу, але допустити ймовірність динаміки структур все ж доцільно.

Якщо вивести проектування та створення бази даних за межі жорстких конструкцій і припустити, що таблиця – це сукупність рядків не обов’язково однотипних і схожих за семантикою один на одного, то проектування БД кардинально зміниться.

Цікаве:  Дружина виганяє з дому: поради психолога

Предметом роботи стане не опис структури бази даних, а динаміка руху інформації. Етапи робіт розподіляться на три центру ваги:

  • вхідний інформаційний потік;
  • перетворення і рух інформації всередині бази даних;
  • вибірка даних для використання.

Поняття структури таблиці відсутня. Немає ні рядків, ні стовпців. Є абстракція – це, визначеної структури задовольняє конкретній точці в алгоритмі. Якщо більш конкретно, то функція обробки інформації вимагає певну інформацію в конкретному обсязі.

Обов’язкова вимога рекурсивности всіх функцій обробки інформації та орієнтація на функції, а не на дані, дозволяє проектувати базу даних у динаміці накопиченої інформації та вхідного потоку даних, які використовуються за ініціативою користувача, процесу або іншої функції.

Фактично: прийшов сигнал на користування, отриманий запит на вибірку, спрацював тригер в додатку і вхідна інформація через те, що вже є, надала потрібне рішення.