- •Часть 1. Базы данных, модели данных и субд
- •Тема 1. Хранение и управления данными на базе файловых систем
- •2) В качестве субд использовались механизм файловых систем.
- •1.1. Структуры данных
- •1.2. Основные элементы файловой системы
- •1) Защита файлов
- •2) Режим многопользовательского доступа
- •1.3. Недостатки использования файловых систем
- •1.4. Почему же информационные системы на базе файловых систем существуют?
- •1.5. Области применения
- •1.6. Потребности информационных систем
1) модели данных, использующей простейшие структуры данных,
2) В качестве субд использовались механизм файловых систем.
До сих пор широко применяются – Почему?
1.1. Структуры данных
В информатике определены следующие три основных типа структур данных – линейная, табличная, иерархическая. У структурированных данных появляется новый атрибут – «Адрес».
Линейные структуры (списки, вектора). Обычные списки. Адрес каждого элемента однозначно определяется его номером. Если все элементы списка имеют равную длину – вектора данных.
Табличные структуры (таблицы, матрицы). Отличие таблицы от списка – каждый элемент – определяется адресом, состоящим не из одного, а нескольких параметров. Самый распространенный пример – матрица - адрес – два параметра – номер строки и номер столбца. Многомерные таблицы.
Иерархические структуры. Используются для представления нерегулярных данных. Адрес – определяется маршрутом – от вершины дерева. Файловая система – компьютера. (Маршрут может превысить – величину данных (МВГ), дихотомия – всегда два разветвления – влево и вправо).
1.2. Основные элементы файловой системы
Файл - это именованная область внешней памяти, в которую можно записывать и из которой можно считывать данные.
Файловая система определяет:
структуру хранения этих данных (зависят от конкретной системы управления файлами и, возможно, от типа файла).
правила именования файлов,
Атрибуты, появившиеся именно в связи с реализацией первых ИС:
защита и способ доступа к данным, хранящимся в файле,
Две ключевых функции файловых систем, связанные с реализацией информационных систем.
1) Защита файлов
Системы управления файлами должны обеспечивать авторизацию доступа к данным БД:
В самом общем виде каждому зарегистрированному пользователю данной вычислительной системы для каждого существующего файла указываются действия, которые разрешены или запрещены данному пользователю.
Существовали попытки реализовать этот подход в полном объеме. Но это вызывало слишком большие накладные расходы, как по хранению избыточной информации, так и по использованию этой информации для контроля правомочности доступа.
В большинстве современных систем управления файлами применяется подход к защите файлов, впервые реализованный в ОС UNIX (1974). Каждому пользователю соответствует пара целочисленных идентификаторов: идентификатор группы, к которой относится этот пользователь, и его собственный идентификатор в группе.
Соответственно, при каждом файле хранится полный идентификатор пользователя, который создал этот файл, и отмечается, какие действия с файлом может производить он сам, какие действия с файлом доступны для других пользователей той же группы, и что могут делать с файлом пользователи других групп.
Эта информация очень компактна, при проверке требуется небольшое количество действий, и этот способ контроля доступа удовлетворителен в большинстве случаев.
2) Режим многопользовательского доступа
Если операционная система поддерживает многопользовательский режим, то вполне реальна ситуация, когда два или более пользователей одновременно пытаются работать с одним и тем же файлом.
Если все эти пользователи собираются только читать файл, ничего страшного не произойдет. Но если хотя бы один из них будет изменять файл, для корректной работы этой группы требуется взаимная синхронизация.
Исторически в файловых системах применялся следующий подход. В операции открытия файла (первой и обязательной операции, с которой должен начинаться сеанс работы с файлом) помимо прочих параметров указывался режим работы (чтение или изменение). Нельзя по записям или отдельным полям!
