stringtranslate.com

Схема базы данных

Схема базы данных MediaWiki 1.28.0. Многие программные инструменты FOSS позволяют моделировать макет/схемы БД, подобные этой. Визуальное представление часто может также экспортироваться в виде готового к производству исходного кода, созданного на языках, совместимых с БД, таких как SQL .

Схема базы данных — это структура базы данных, описанная на формальном языке , обычно поддерживаемом системой управления реляционными базами данных (СУРБД). Термин «схема» относится к организации данных как к чертежу того, как построена база данных (разделенная на таблицы базы данных в случае реляционных баз данных ). Формальное определение схемы базы данных — это набор формул (предложений), называемых ограничениями целостности , налагаемых на базу данных. [ необходима цитата ] Эти ограничения целостности обеспечивают совместимость между частями схемы. Все ограничения выражаются на одном и том же языке. Базу данных можно считать структурой в реализации языка базы данных . [1] Состояния созданной концептуальной схемы преобразуются в явное отображение, схему базы данных. Это описывает, как реальные сущности моделируются в базе данных.

«Схема базы данных определяет, на основе знаний администратора базы данных о возможных приложениях, факты, которые могут войти в базу данных, или те, которые представляют интерес для возможных конечных пользователей ». [2] Понятие схемы базы данных играет ту же роль, что и понятие теории в исчислении предикатов . Модель этой «теории» близко соответствует базе данных, которую можно рассматривать в любой момент времени как математический объект . Таким образом, схема может содержать формулы, представляющие ограничения целостности, конкретно для приложения, и ограничения, конкретно для типа базы данных, все выраженные на одном и том же языке базы данных. [1] В реляционной базе данных схема определяет таблицы , поля , отношения , представления , индексы , пакеты , процедуры , функции , очереди , триггеры , типы , последовательности , материализованные представления , синонимы , ссылки на базы данных, каталоги , схемы XML и другие элементы.

База данных обычно хранит свою схему в словаре данных . Хотя схема определяется на языке текстовых баз данных, этот термин часто используется для обозначения графического изображения структуры базы данных. Другими словами, схема — это структура базы данных, которая определяет объекты в базе данных.

В системе баз данных Oracle термин «схема» имеет несколько иное значение.

Идеальные требования для интеграции схемы

Перечисленные ниже требования влияют на детальную структуру создаваемых схем. Некоторые приложения не требуют выполнения всех этих условий, но эти четыре требования являются наиболее идеальными.

Сохранение перекрытия
Каждый из перекрывающихся элементов, указанных во входном отображении, также находится в отношении схемы базы данных. [3]
Расширенное сохранение перекрытия
Элементы, специфичные для источника, которые связаны с перекрывающимися элементами источника, передаются в схему базы данных. [3]
Нормализация
Независимые сущности и отношения в исходных данных не должны группироваться вместе в одном отношении в схеме базы данных. В частности, элементы схемы, специфичные для источника, не должны группироваться с перекрывающимися элементами схемы, если группировка совместно размещает независимые сущности или отношения. [3]
Минимальность
Если какие-либо элементы схемы базы данных удалены, то схема базы данных не идеальна. [3]

Пример интеграции двух схем

Предположим, нам нужна опосредованная схема для интеграции двух баз данных путешествий: Go-travel и Ok-flight.

Go-travelимеет два отношения:

Вылет (номер рейса, время, еда(да/нет))Go-price(номер рейса, дата, цена)

Ok-flightимеет только одно отношение:

Ok-flight(номер рейса, дата, время, цена, прямой перелет(да/нет))

Перекрывающаяся информация в схемах Go-travel и Ok-flight может быть представлена ​​в опосредованной схеме: [3]

Рейс(номер рейса, дата, время, цена)

Специфика базы данных Oracle

В контексте баз данных Oracle объект схемы представляет собой логическую структуру хранения данных . [4]

База данных Oracle связывает отдельную схему с каждым пользователем базы данных . [5] Схема включает в себя набор объектов схемы. Примеры объектов схемы включают:

С другой стороны, объекты, не входящие в схему, могут включать: [6]

Объекты схемы не имеют однозначного соответствия физическим файлам на диске, в которых хранится их информация. Однако базы данных Oracle хранят объекты схемы логически в табличном пространстве базы данных. Данные каждого объекта физически содержатся в одном или нескольких файлах данных табличного пространства . Для некоторых объектов (таких как таблицы, индексы и кластеры) администратор базы данных может указать, сколько дискового пространства Oracle RDBMS выделяет для объекта в файлах данных табличного пространства.

Не существует необходимой связи между схемами и табличными пространствами: табличное пространство может содержать объекты из разных схем, а объекты для одной схемы могут находиться в разных табличных пространствах. Однако специфика базы данных Oracle обеспечивает распознавание платформой негомогенизированных дифференциалов последовательностей, что считается решающим ограничивающим фактором в виртуализированных приложениях. [7]

Microsoft SQL-сервер

В Microsoft SQL Server схемой по умолчанию для каждой базы данных является схема dbo. [8]

Смотрите также

Ссылки

  1. ^ ab Рыбински, Х. (1987). «О базах данных логики первого порядка». ACM Transactions on Database Systems . 12 (3): 325–349. doi : 10.1145/27629.27630 . S2CID  2439329.
  2. ^ Имелински, Т.; Липски, В. (1982). "Систематический подход к теории реляционных баз данных". Труды международной конференции ACM SIGMOD 1982 года по управлению данными - SIGMOD '82 . Нью-Йорк, Нью-Йорк: ACM. стр. 8–14. doi :10.1145/582353.582356. ISBN 978-0897910736. S2CID  2034345.
  3. ^ abcde Pottinger, P.; Berstein, P. (2008). "Слияние схем и создание отображений для реляционных источников". Труды 11-й международной конференции по расширению технологии баз данных: достижения в технологии баз данных . Нью-Йорк, Нью-Йорк: ACM. стр. 73–84. CiteSeerX 10.1.1.405.2990 . doi :10.1145/1353343.1353357. ISBN  9781595939265. S2CID  15742995.
  4. ^ Эшдаун, Лэнс; Кайт, Том (февраль 2010 г.). Oracle Database Concepts 11g Release 2 (11.2). et al . Oracle Corporation. Архивировано из оригинала 29 января 2010 г. Получено 14 апреля 2010 г. Схема базы данных — это логический контейнер для структур данных, называемых объектами схемы. Примерами объектов схемы являются таблицы и индексы.
  5. ^ Oracle Database Concepts 10g Release 2 (10.2) Part Number B14220-02 . Получено 26 ноября 2012 г. . Схема — это набор логических структур данных или объектов схемы. Схема принадлежит пользователю базы данных и имеет то же имя, что и этот пользователь. Каждый пользователь владеет одной схемой. Объекты схемы можно создавать и управлять ими с помощью SQL.
  6. ^ Эшдаун, Лэнс; Кайт, Том (февраль 2010 г.). Oracle Database Concepts 11g Release 2 (11.2). и др. Корпорация Oracle. Архивировано из оригинала 29 января 2010 г. Получено 14 апреля 2010 г. Другие типы объектов также хранятся в базе данных и могут быть созданы и обработаны с помощью операторов SQL, но не содержатся в схеме. Эти объекты включают пользователей базы данных, роли, контексты и объекты каталогов.
  7. ^ Макдугалл, Р. (2010). «Производительность виртуализации: перспективы и предстоящие проблемы». Обзор операционных систем ACM SIGOPS . 44 (4). doi :10.1145/1899928.1899933. S2CID  16112550.
  8. ^ VanMSFT (9 мая 2024 г.). «Разделение собственности и пользователя-схемы в SQL Server — SQL Server». learn.microsoft.com . Получено 31 октября 2024 г. .

Внешние ссылки