Термин «схема базы данных» может означать как наглядное представление базы данных, так и набор правил, которым она подчиняется, либо полный комплект объектов, принадлежащих конкретному пользователю. Если вы хотите лучше познакомиться со схемами баз данных и узнать, где и как они применяются, читайте нашу статью.
Читается за 4 мин.
Хотите создать схему базы данных самостоятельно? Попробуйте Lucidchart! Быстро, удобно и совершенно бесплатно.
Что такое схема базы данных?
Схема базы данных представляет собой логическую конфигурацию либо целой реляционной базы данных, либо ее части. Схема может существовать как в виде наглядного представления базы данных, так и в виде набора формул (также именуемых «условиями целостности»), которые регулируют ее устройство. Эти формулы выражаются с помощью языка описания данных, например, SQL. Будучи частью словаря данных, схема показывает, как связаны между собой сущности, из которых состоит база данных (таблицы, представления, хранимые процедуры и так далее).
Схема обычно создается проектировщиком базы данных, чтобы помочь программистам, чье ПО будет взаимодействовать с данной базой. Процесс создания схемы базы данных называется моделированием данных. Если вы пользуетесь трехсхемным подходом к проектированию базы данных, этот шаг будет следовать за созданием концептуальной схемы. Стоит отметить, что в центре внимания концептуальной схемы находится не структура базы данных, а информационные нужды организации.
Выделяют два основных типа схем баз данных:
- Логическая схема базы данных демонстрирует логические ограничения, которые распространяются на хранимые данные. В ней отражаются условия целостности, представления и таблицы.
- Физическая база данных показывает, как хранятся данные в системе с точки зрения файлов и индексов.
Схема базы данных простейшего уровня показывает, из каких таблиц и связей состоит база данных, а также какие поля входят в состав каждой таблицы. Поэтому понятия «схема базы данных» и «схема "сущность-связь"» часто взаимозаменяемы.
Схематизация баз данных в системе Oracle
В системе управления базами данных Oracle термин «схема базы данных» (или «SQL-схема») имеет иное значение. В данном случае у базы данных может быть несколько схем (которые также именуются более изысканным термином «схематика»). В каждой из них содержатся все объекты, созданные конкретным пользователем базы данных. Этими объектами могут быть таблицы, представления, синонимы и не только. Некоторые объекты не допускаются в состав схемы. К ним относятся пользователи, контексты, роли и объекты директорий.
Отдельные пользователи могут получить доступ к конкретным схемам, причем право доступа разрешается передавать. Поскольку каждый объект закреплен за определенной схемой (которая служит своеобразным пространством имен), целесообразно пользоваться синонимами, так как они позволят получить доступ к тому или иному объекту, не обращаясь к содержащей его схеме.
Подобные схемы необязательно отражают то, как на самом деле хранится физическая база данных. Вместо этого объекты схемы располагаются в табличном пространстве логически. Администратор базы данных может указать, сколько именно места отведено на конкретный объект в файле данных.
И, наконец, схемы и табличные пространства необязательно полностью совпадают: объекты из одной схемы можно найти в нескольких табличных пространствах, и наоборот: одно табличное пространство может включать в себя объекты из разных схем.
Хотите создать схему базы данных самостоятельно? Попробуйте Lucidchart! Быстро, удобно и совершенно бесплатно.
Создать схему базы данныхСхема и экземпляр базы данных: в чем различие?
Хотя эти понятия связаны между собой, они означают далеко не одно и то же. Схема — всего лишь набросок запланированной базы данных. Самих по себе данных в ней нет.
Для сравнения, под понятием «экземпляр» подразумевается «снимок» базы данных в определенный момент ее существования. Таким образом, экземпляр базы данных может со временем меняться, тогда как схема базы данных, как правило, статична (поскольку изменить структуру базы данных, когда она уже введена в эксплуатацию, довольно сложно).
Схемы и экземпляры баз данных могут оказывать друг на друга влияние посредством системы управления базами данных (СУБД). Задача СУБД — проследить, чтобы каждый экземпляр базы данных подчинялся ограничениям, заданным проектировщиками в ее схеме.
Необходимость интеграции
Разные источники целесообразно интегрировать в одну схему. Успешная интеграция должна отвечать следующим требованиям:
Учет перекрывающихся объектов
Все перекрывающиеся объекты в интегрируемых схемах должны отображаться в таблице схем базы данных.
Расширенный учет перекрывающихся объектов
Элементы, которые присутствуют лишь в одном источнике, но при этом так или иначе связаны с перекрывающимися объектами, необходимо скопировать в полученную схему базы данных.
Нормализация
Независимые связи и сущности не следует смешивать в одной таблице схемы.
Минимальность
В идеале ни один из элементов, независимо от его источника, не должен быть утерян.
Типы схем баз данных
В проектировании схем баз данных сформировался свой набор моделей.
«Звезда» — не только широко распространенная, но и простейшая модель схемы. В ней одна или несколько таблиц фактов соединяются с любым количеством размерных таблиц. Такая модель лучше всего подходит для обработки несложных запросов.
Родственная «звезде» схема «снежинка» также используется для изображения многомерных баз данных. Однако в этом случае размеры нормализуются при помощи наборов отдельных таблиц, в результате чего схема, растущая из центра, приобретает структуру, которая внешне напоминает снежинку.