Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
учебник Информатика.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
17 Мб
Скачать
☆

Хранение информации

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

Различают структурированные данные, в которых отражаются отдельные факты предметной области (это основная форма представления данных в СУБД), и неструктурированные, произвольные по форме, включающие и тексты, и графику, и прочие данные. Эта форма представления данных широко используется, например, в Интернет-технологиях, а сами данные предоставляются пользователю в виде отклика поисковыми системами.

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

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

Дальнейшее изложение фазы хранения информации относится к структурированным данным.

Модели структурированных данных и технологии их обработки основаны на одном из трех способов организации хранения данных: в виде линейного списка (или табличном), иерархическом (или древовидном), сетевом.

Операции над данными

Процедура доступа к данным может быть инициирована как самим компьютером (для решения каких-либо своих технических задач), так и конечным пользователем. В последнем случае пользователь формирует запрос, куда включает, в частности, обозначение требуемого вида доступа, или действия, и указание на то, над какими данными это действие надо выполнить. Как отмечалось ранее, идентификация данных осуществляется с помощью ключей. В качестве же требуемого действия может быть одно из следующих: добавление, удаление, изменение,  просмотр элемента или обработка данных из элемента.

При добавлении элемента информационный массив пополняется новыми данными в виде записи файла или файла в целом, соответственно, для структурированных и неструктурированных данных. В запросе в этом случае, помимо указанной выше информации, приводится и сам новый элемент. При этом объем информационного массива увеличивается;

Удаление, наоборот, является обратным действием, вызывающим исключение упомянутых данных. Это действие приводит к уменьшению объема информационного массива;

Изменение относится не к элементу, а к его составляющим – полям записи файла или тексту, хранящемуся в файле, и означает, в свою очередь,  удаление прежних значений полей или строк текста и/или добавление новых. В запрос включается дополнительная информация, указывающая на требуемые составляющие изменяемого элемента, а также сами новые значения этих составляющих. Объем информационного массива при этом не меняется для структурированных данных и, возможно, меняется для неструктурированных;

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

Обработка предусматривает выполнение некоторых арифметических операций над данными элемента, например, накопление суммы и т.д., и относится только к структурированным данным, а потому далее не рассматривается. 

Таким образом, запрос q в общем случае имеет структуру:

q = (<действие>, <ключ> [{,<указание на составляющую элемента>[=<значение составляющей элемента>]}] ),

где скобки <> означают, что они и их содержимое в конкретных случаях заменяются некоторыми значениями; скобки [] свидетельствуют о возможном отсутствии их содержимого; скобки {} представляют возможное повторение их содержимого.

Тогда для указанных ранее действий можно определить следующие структуры запросов:

qдобавление = (<ключ> {,<указание на составляющую элемента> = <значение составляющей элемента>}),

qудаление = (<ключ>),

qизменение = (<ключ> {,<указание на составляющую элемента> = <значение составляющей элемента>}),

qпросмотр = (<ключ> [{,<указание на составляющую элемента>}]).

Чтобы выполнить любое их указанных выше действий, нужный элемент должен быть предварительно найден в информационном массиве, для чего выполняется его поиск (для добавления нового элемента тоже делается попытка его поиска, которая заканчивается неудачно, и тогда элемент добавляется). Под поиском элемента понимается определение его местонахождения в информационном массиве. Таким образом, любой доступ включает поиск, что делает эту фазу доступа наиболее значимой.

Технологии доступа при выполнении действий изменения элемента показана на рисунке 1:

Здесь и далее сплошные линии означают управляющие связи, пунктирные - информационные связи.

                       Рисунок 1

Технологии доступа при выполнении действий добавления элемента показана на рисунке 2:

                       Рисунок 2

Технология удаления изображена на рисунке 3:

                       

                       Рисунок 3

Технология просмотра элемента приведена на рисунке 4:

                       Рисунок 4

Различие в схемах состоит в том, что по технологии рисунков 1 и 2 выполняется воздействие на информационный массив с целью его изменения, для чего в него передаются данные, по технологии рисунка 3 воздействие не связано с передачей данных, а по схеме рисунка 4 данные выводятся из информационного массива без его изменения.

При выполнении рассмотренных действий над элементами информационного массива на практике важны два фактора, противоречащие друг другу: временной фактор, в соответствии с которым запрос пользователя должен обрабатываться в минимальные сроки, и фактор минимизации требуемого объема памяти для хранения данных. Для уменьшения времени обработки запроса особые усилия прилагаются к применению таких структур хранения данных, которые бы позволяли оптимизировать поисковые операции, возможно, за счет дополнительных описаний данных. Это, очевидно, повышает расход памяти. Поэтому при проектировании  моделей данных учитывается предполагаемый режим эксплуатации информационного массива: если это интерактивный режим, то основное внимание уделяется минимизации времени доступа к данным, если режим пакетный, то минимизируют требуемую память. Кроме того, на выбор модели влияют особенности той предметной области, которая отражается в структурах хранения.

В силу вышесказанного, основное внимание в данном разделе уделено задачам организации хранения данных разных видов и поиска по ключам, входящим в запросы пользователей, поскольку поисковые операции и определяют, в основном, продолжительность различных действий над информационный массивом. Из  приведенных типов действий в рассмотрение включены добавление и просмотр элемента данных, поскольку добавление связано с воздействием на информационный массив и изменением его объема (напомним, что удаление является обратным действием по отношению к добавлению), а просмотр является наиболее часто выполняемым действием на практике. При этом рассматриваются общие вопросы работы с текстовой и структурированной информацией, методы и модели, используемые при организации хранения, поиска и добавления данных.

Излагаемые модели данных и алгоритмы доступа к ним составляют “brainware” современной информатики, носят универсальный характер и применяются в большинстве систем, связанных с хранением и обработкой информационных массивов.