ВУЗ: Томский государственный университет систем управления и радиоэлектроники
Категория: Учебное пособие
Дисциплина: Базы данных
Добавлен: 28.11.2018
Просмотров: 7728
Скачиваний: 53
6
Соглашения, принятые в учебном пособии
Для улучшения восприятия материала в данном учебном пособии исполь-
зуются пиктограммы и специальное выделение важной информации.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Эта пиктограмма означает определение или новое понятие.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Эта пиктограмма означает «Внимание!». Здесь выделена важ-
ная информация, требующая акцента на ней. Автор может поде-
литься с читателем опытом, чтобы помочь избежать некоторых
ошибок.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
В блоке «На заметку» автор может указать дополнительные
сведения или другой взгляд на изучаемый предмет, чтобы помочь
читателю лучше понять основные идеи.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
· · · · · · · · · · · · · · · · · · · · · · · ·
Пример
· · · · · · · · · · · · · · · · · · · · · · · · · ·
Эта пиктограмма означает пример. В данном блоке автор может привести
практический пример для пояснения и разбора основных моментов, отражен-
ных в теоретическом материале.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Контрольные вопросы по главе
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
7
1 Введение в теорию баз данных
1.1 Данные и информация
Во все времена решение большинства задач было непосредственно связа-
но с получением и анализом необходимой для этого информации. Однако сам
термин «информация» использовался не столь часто. Ещё позже появился тер-
мин «данные», который во многих случаях применялся как синоним информа-
ции, т. е. термин близкий к ней по смыслу. Сегодня термины «информация» и
«данные» употребляются в повседневной жизни практически повсеместно, од-
нако различия между этими понятиями для многих являются неочевидными.
Из теории информатики известны и наиболее часто употребляются сле-
дующие определения данных:
• данные – это зарегистрированные сигналы, которые несут в себе све-
дения об окружающем нас мире;
• данные – информация, подлежащая вводу в ЭВМ;
• данные – это информация о событиях, произошедших в материальном
мире, представленная в формализованном виде, пригодном для хране-
ния, передачи и обработки.
Как видно, данные не совсем тождественны информации, хотя эти терми-
ны зачастую встречаются в определениях друг друга.
Для понимания различий рассмотрим пример: «наблюдая излучения да-
леких звезд, человек получает определенный поток данных, но станут ли эти
данные информацией, зависит от целого ряда других обстоятельств» [1].
В дальнейшем в ходе изучения предмета «Базы данных» для однозначной
интерпретации терминов вводятся следующие определения:
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Данные – это сведения об объектах окружающего мира, вве-
денные на специальный носитель и предназначенные для хранения,
передачи и обработки.
Информация – это совокупность сведений о фактических
данных и зависимостях между ними.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
8
1.2 Базы данных и СУБД
Понятие «база данных» (БД) можно применить практически к любой свя-
занной между собой по определенному признаку информации, хранимой и ор-
ганизованной особым образом, чаще всего в виде набора таблиц. По сути БД –
это некоторое подобие электронной картотеки или хранилища данных, распо-
ложенное в компьютере в виде одного или нескольких файлов [2].
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
База данных – поименованная совокупность взаимосвязанных
данных, отображающая состояние объектов и их связей в некото-
рой предметной области и находящаяся под управлением специаль-
ного программного комплекса.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Очень часто базу данных называют информационной моделью некоторой
предметной области, поскольку любая БД хранит в себе информацию опреде-
ленного назначения одной из областей жизнедеятельности человека. Например,
БД для отдела кадров, бухгалтерии, магазина, поликлиники, столовой и т. д. Ба-
зы данных в разных областях, несмотря на существенные различия в объектах и
связях этих областей, организованы по одним и тем же правилам и предостав-
ляют по сути одни и те же возможности при эксплуатации.
Рассмотрим ещё один часто употребляемый термин.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Программный комплекс, реализованный для сбора, хранения и
обработки информации для принятия решений и реализации функ-
ций управления, называется информационной системой (ИС).
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Несмотря на схожесть понятий «база данных» и «информационная систе-
ма», важно понимать различия между ними. Зачастую информационная модель
предметной области в дальнейшем реализуется именно в виде автоматизиро-
ванной информационной системы (АИС), основным компонентом которой яв-
ляется база данных. Например, заходя на сайт интернет-магазина, мы стано-
вимся пользователями информационной системы, которая большинство своих
данных хранит в базе данных. Однако сам сайт назвать базой данных нельзя,
поскольку для его функционирования используется также целый ряд других
программных средств.
9
В любом случае при взаимодействии человека с информацией из БД все-
гда возникает необходимость в выполнении ряда обязательных операций,
например:
• добавление новой информации;
• изменение информации;
• поиск информации;
• обработка информации;
• удаление информации и т. п.
Весь этот набор операций, а также процессы, связанные с созданием БД,
её поддержкой и обеспечением доступа пользователей осуществляется с помо-
щью специального программного инструментария – системы управления база-
ми данных (СУБД) [2].
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Система управления базами данных – это совокупность
программных и языковых средств, предназначенных для создания,
ведения и совместного использования базы данных многими пользо-
вателями и обеспечения её взаимодействия с прикладными про-
граммами.
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
СУБД представляет собой инструмент сбора и хранения больших масси-
вов информации и эффективного управления ими, позволяющий сохранять
данные в целости и безопасности на протяжении длительного времени.
В общем случае под СУБД можно понимать любой программный про-
дукт, поддерживающие процессы создания и ведения БД [3]. Однако у любого
программного продукта, претендующего на звание СУБД, должны быть реали-
зованы функции, позволяющие пользователю взаимодействовать с базой дан-
ных, а также быть уверенным в сохранности и безопасности хранимых данных.
К базовым функциям СУБД относятся следующие [3–5]:
1. Средства постоянного хранения данных.
СУБД, как и файловые системы, поддерживают возможности хранения
больших фрагментов данных, которые существуют независимо от каких бы то
ни было процессов их использования. Однако СУБД значительно превосходят
файловые системы в отношении гибкости представления информации, предла-
гая структуры, обеспечивающие эффективный доступ к большим порциям дан-
ных.
10
2. Поддержка языков доступа к данным.
СУБД позволяет пользователю или прикладной программе обращаться к
данным и изменять их посредством команд развитого языка запросов.
3. Управление данными.
СУБД обеспечивает выполнение операций создания и манипулирования
данными (выбор, вставка, обновление, удаление данных и т. п.) и одновремен-
ное отображение (выполнение) этих операций над физическими данными. Та-
ким образом, пользователя или разработчика не должны волновать особенности
расположения файлов БД и их организации на физическом носителе, эти функ-
ции в полной мере реализуются инструментами СУБД.
Помимо базовых функций СУБД также можно выделить ряд дополни-
тельных функций, связанных с проблемами безопасности, целостности и эф-
фективности функционирования СУБД:
1. Управление одновременным доступом к БД.
СУБД должна обеспечивать одновременный доступ к данным многих
пользователей таким образом, чтобы действия, осуществляемые пользователя-
ми с объектами БД, не препятствовали друг другу и не нарушали целостности
БД.
2. Обеспечение безопасности данных.
Под функцией безопасности (или физической защиты) данных подразу-
мевается предотвращение разрушения или искажения данных в результате про-
граммного или аппаратного сбоя. Обеспечение безопасности во многих случаях
является внутренней задачей СУБД, поскольку связано с её нормальным функ-
ционированием и решается на уровне компонентов СУБД. Цель восстановления
базы данных после сбоя – обеспечение сохранности результатов всех операций
в восстановленной БД и скорейшее возвращение к нормальному продолжению
работы.
3. Обеспечение защиты от несанкционированного доступа.
Под функцией понимается защита данных от преднамеренного искажения
и/или доступа пользователей или посторонних лиц. Рассматривая техническую
сторону обеспечения защиты данных в БД от несанкционированного доступа,
можно выделить общий принцип управления доступом к БД: СУБД не должна
разрешать пользователю выполнение какой-либо операции над данными, если
он не получил на это права.