Моделирование хранилищ данных - общие понятия. Часть 1
Потихоньку подбираемся к хранилищам :)
Чтобы не сломаться в самом начале пути, вспомним что такое данные и почему их хранят в специализированных системах - Базах данных. А потом перейдём к таким понятиям как нормализация, реляционность и т.д.
Подробно про данные можно почитать в более ранней статье - что это такое, где они живут и какие они бывают. Если кратко, то данные - это вся цифровая информация, которая окружает нас с вами: файлы на компьютере, видео на экране, музыка в наушниках, тексты в интернете и, конечно, документы и отчеты, которые вы готовите на работе.
База данных - это цифровое пространство, которое содержит всю эту информацию. Главная и отличительная черта базы данных в том, что она должна уметь не только хранить данные, но также позволять быстро находить и извлекать те данные, которые вам потребуются в тот или иной момент. А это значит, что информация должна быть структурирована и уложена так, чтобы её всегда можно было достать.
Вопросами структурирования и упорядочивания информации внутри базы данных занимается раздел знаний - Моделирование. Модель данных - описывает предметную область. Что такое моделирование данных и какими бывают модели - читаем тут.
Элементами описания модели данных являются сущности, атрибуты и связи (отношения). Для описания предметной области на концептуальном уровне или на логическом этого будет достаточно.
Чтобы правильно спроектировать структуру базы данных, т.е. конкретную реализацию в информационной системе на физическом уровне, потребуется применение принципов нормализации. Нормализация устранит избыточность данных и минимизирует связанные с этим проблемы, например, дублирование данных. Нормализация - это принцип, лежащий в основе проектирования реляционных баз данных.
В интернете большое количество обучающих статей, книг и видео-курсов по теме баз данных. Выбирайте то, что вам больше нравится. От себя могу предложить пару вариантов:
- "Основы реляционных баз данных" Ребекки М. Райордан
- "Базы данных" Мана Такахаси/Сёко Адзума
Вот определение БД из книги "Основы реляционных баз данных" Ребекки М. Райордан:
База данных - это средство для рационального и эффективного хранения информации, иными словами, база данных обеспечивает надежную защиту данных от случайной потери или порчи, экономно использует ресурсы (как людские, так и технические) и снабжена механизмами поиска информации, удовлетворяющими разумным требованиям к производительности.
А это определение из манги "Базы данных" Мана Такахаси/Сёко Адзума:
База данных - это система, в которой данными может пользоваться каждый, она позволяет легко обмениваться информацией, избегая её искажения и дублирования.
Что вам ближе по духу - классическая подача или игровая, то и выбирайте, обе книги интересные и лёгкие к освоению, каждая со своими особенностями )) Обе рассчитаны на начинающих.
А подробнее про нормализацию и реляционность поговорим в следующий раз!
А вот по этой ссылке можно полистать книгу "Основы реляционных баз данных" Ребекки М. Райордан
(Rebecca M. Riordan designing relational database systems)