Как быть, если нужно показать устройство космического корабля или молекулы? Как быть, если нужно увидеть еще не построенный или давно разрушенный архитектурный ансамбль? Как быть, если нужно испытать работу атомной электростанции в аварийном режиме? В этих и многих других случаях люди используют модели.
Все вы много раз видели материальные (иначе называемые физическими) модели -- объекты, копирующие некоторые характеристики другого объекта. Однако модель может быть и информационной. В этом случае мы не создаем упрощенное подобие реального объекта, а описываем этот объект тем или иным способом. Например, если описать интересующие нас свойства в виде математических формул, получится математическая модель. Решая задачу на уроке физики, вы работаете с информ ационной моделью явления; пользуясь картой на уроке географии или в походе, вы работаете с информационной моделью участка земной поверхности; рассказывая знакомым, как пройти к вам домой -- опять-таки, работаете с информационной моделью (создаете ее). Вообще все наши знания о реальном мире -- это множество информационных моделей.
Итак, модель -- это некоторый упрощенный заменитель реального объекта или системы. Модель воспроизводит только необходимые в конкретной ситуации характеристики оригинала.
При составлении информационной модели нужно не только выбрать признаки объекта, которые в нее будут включены, но и решить как будет организована информация в памяти компьютера. Ведь чтобы данными можно было воспользоваться, они не должны быть "свалены в кучу", их необходимо каким-либо образом упорядочить.
Известны три основные структуры31, определяющие организацию данных и связей между ними.Одна из них удобна при описании систем объектов, в которых можно выделить "главные" и "подчиненные". Ее называют деревом32. На верхнем уровне такой структуры находится один объект (его называют корнем). На следующем (втором) уровне -- несколько объектов, входящих в объект первого уровня или подчиняющихся ему. Каждому из объектов второго уровня подчиняется несколько объектов третьего уровня и т.д. Объекты самого нижнего уровня называют листьями. (Получается, дерево растет... вниз!) С помощью такой структуры можно, например, описать армейское подразделение: корень -- рота; на втором уровне -- взвода этой роты; третий уровень -- отделения, входящие в соответствующий взвод, наконец, "листьями" будут отдельные бойцы. Имея организованную таким образом информацию можно легко узнать не только сведения о конкретном военнослужащем, но и о взводе и роте, в которой он служит; и наоборот, можно получить информацию не только о взводе, но и о каждом из бойцов этого взвода.
Однако, далеко не всегда существует такая однозначная подчиненность. Например, если попробовать организовать в структуру данные об учителях и классах, в которых они преподают, она окажется сложнее: каждый учитель работает с несколькими классами, но и в каждом классе -- несколько учителей. Получается уже не соотношение "один ко многим", а "многие ко многим". Такая структура с перекрестными связями получила название сеть.
На практике (при использовании компьютера) чаще всего используется третья разновидность организации данных. Она называется реляционной33. Такое "страшное" название -- у хорошо всем известного способа представления информации -- в виде самых обыкновенных прямоугольных таблиц, связанных друг с другом. Правда, не любых. Есть некоторые ограничения:
Каждая строка таблицы (ее называют записью) описывает один объект.
Все объекты в таблице -- однотипные (например, одна таблица будет описывать только подразделения фирмы, другая -- только сотрудников, третья -- выполняемые работы34). Таблица содержит только информацию, непосредственно связанную с ее объектами.
Все признаки объектов (их называют атрибутами) выделены в отдельные столбцы -- поля записей. Заголовки столбцов -- имена полей.
В таблице обязательно должен быть столбец (или группа столбцов), значения в котором будут уникальными -- неповторяющимися, его называют первичным ключом.
Информационные структуры, содержащие взаимосвязанные данные о реальных объектах и хранящиеся во внешней памяти компьютера, называются базами данных(БД). Естественно, базы данных также могут быть иерархическими, сетевыми и реляционными. Реляционная база данных состоит из одного или нескольких файлов, каждый из которых соответствует одной таблице35.
Файл (от англ. file -- папка для бумаг, скоросшиватель) -- набор данных (программа, текст, рисунок, звук и т. д.), хранящийся во внешней памяти как одно целое и обозначаемый именем. На устройствах внешней памяти современных компьютеров могут храниться тысячи файлов. Чтобы было удобней работать, их организуют в иерархическую структуру -- дерево каталогов. "Корень" дерева -- корневой каталог36 -- соответствует диску в целом. В корневом каталоге размещается несколько каталогов, каждый из каталогов, в свою очередь, может содержать еще несколько каталогов. В каталогах находятся файлы. Хотя, в большинстве случаев, не важно, в какой каталог помещать файл, для удобства стараются хранить вместе файлы одного назначения.
Сама по себе база данных -- это хранилище информации. Нам же необходимо иметь возможность использовать это хранилище: помещать туда, изменять и, самое главное, находить нужные сведения. Для этого служат специальные программы -- системы управления базами данных (СУБД). Существует множество их разновидностей: от упрощенных, позволяющих создавать "электронные картотеки", до очень сложных, на основе которых строятся системы автоматизации крупных организаций, когда десятки и даже сотни людей одновременно работают с огромными объемами самых разных данных.
Итак, СУБД -- это программное обеспечение для создания и редактирования баз данных, просмотра и поиска информации в них. Рассмотрим эти операции немного подробнее. Прежде всего, можно создать новую базу данных. При этом, в первую очередь, нам необходимо выбрать характеристики объектов, которые будут в нее включены. Названия этих характеристик станут именами полей. Затем следует определить тип каждого поля.
Вы помните, что вся информация в компьютере представляется с помощью двоичных кодов. Один и тот же набор нулей и единиц может соответствовать и числу, и символу, и фрагменту рисунка. Например, если в памяти ЭВМ хранится код "01011010", это может быть число "90", буква "Z", элемент изображения или еще что-нибудь. Но обрабатывать-то эти данные нужно по-разному! Вот здесь и приходит на помощь тип данных. Он определяет:
представление в памяти (в том числе, сколько байт памяти данные будут занимать);
возможные значения и
допустимые действия над ними.
Вот теперь пришло время запустить СУБД и сформировать задуманную структуру (указав имена всех полей, их типы, а при необходимости -- и другие их характеристики). Далее поочередно заносим сведения о каждом объекте -- эта работа хоть и не слишком сложная, но долгая и требующая внимания. Наконец, разрабатываем "макеты вывода" (определяющие, как информация будет представлена на экране и при печати) -- и база данных готова. Естественно, и потом, в процессе работы, мы сможем добавлять новые записи, а также удалять и редактировать старые.
Что же можно делать с готовой БД? Обычно, система управления базами данных позволяет:
выводить информацию на дисплей и принтер;
находить данные определенных объектов по различным признакам (в том числе, по условиям: =, <, >, <>, <=, >=);
сортировать -- расставлять в порядке возрастания или убывания какого-либо атрибута и т. д.
При работе с БД особая роль принадлежит устройствам внешней памяти. От их емкости, скорости и надежности непосредственно зависят характеристики всей системы. Современные устройства внешней памяти используют магнитный или оптический принципы записи. В первом случае каждому биту данных соответствует так или иначе намагниченный участок поверхности диска с покрытием, подобным покрытию магнитофонных лент; во втором -- участок диска, отражающий либо рассеивающий свет.
Накопители на гибких магнитных дисках (дискетах, флоппи-дисках) используют диск из пленки с магнитным покрытием, заключенный в пластмассовый корпус. Сейчас используются, в основном, дискеты диаметром 3,5 дюйма (89 мм) и емкостью 1,44 Мбайт. Гибкие диски сравнительно дешевы, позволяют переносить информацию с одного компьютера на другой, но работают очень медленно и, к тому же, довольно ненадежны.
Дискета Защитный корпус. Фланец привода диска. Защитная шторка. Отверстие запрета записи. Отверстие -- признак дискеты высокой плотности |
Основным устройством внешней памяти современного персонального компьютера является накопитель на жестких дисках (его еще называют "винчестером"). В нем используется один или несколько дисков на алюминиевой основе, закрепленных на оси привода и помещенных в закрытытый корпус.Неразборная конструкция, отсутствие пыли и непосредственного контакта головок с поверхностью диска позволяют получить очень высокую надежность и, быстродействие устройства, а также существенно повысить плотность записи информации. Сейчас емкость жестких дисков достигает десятков гигабайт и постоянно растет.
Магнитный принцип записи используется и в некоторых других разновидностях устройств памяти (Jazz, Zip и др.).
Среди устройств, использующих оптическую запись, наиболее известен накопитель на лазерных дисках (CD-ROM37). Чрезвычайно высокая надежность, большая емкость (в настоящее время -- 650 (700) Мбайт), низкая стоимость -- несомненные его преимущества. Недостатками же являются довольно низкое быстродействие и, главное, невозможность перезаписи38. Поэтому на лазерных дисках хранят информацию, которая не должна изменяться: словари, справочники, различные архивы.