Регистрация Войти
Все для самостоятельной подготовки к ЕГЭ
Готовься к ЕГЭ по персональному плану, следи за своим прогрессом, устраняй пробелы, выполняй квесты и получай награды
или
Войти через Вконтакте
Регистрируясь, я принимаю условия пользовательского соглашения
Русский язык
Математика
Обществознание
Физика
История
Биология
Химия
Английский язык
Информатика
География
ОГЭ

Файловая система, поиск, сортировка информации в базах данных

Теория к заданию 4 из ЕГЭ по информатике

Программные средства информационных и коммуникационных технологий

Операционная система: назначение и функциональные возможности

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

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

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

Сейчас на IBM-совместимые компьютеры устанавливаются операционные системы Windows и Linux, а на персональные компьютеры Macintosh — операционная система Mac OS.

Современные операционные системы имеют сложную структуру, каждый элемент которой выполняет определенные функции по управлению компьютером:

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

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

— многозадачность;

— развитой графический пользовательский интерфейс;

— использование всех возможностей современных микропроцессоров;

— устойчивость в работе и защищенность информации;

— поддержку всех видов периферийного оборудования;

— компьютерную безопасность;

— поддержку сетевых функций:

  • совместное использование файлов и принтеров при высокой производительности;
  • эффективное выполнение прикладных программ, ориентированных на архитектуру «клиент—сервер»;
  • дистанционный доступ к сети;
  • интеграция с Интернетом, т. е. поддержка соответствующих протоколов и программного обеспечения Web-сервера;
  • организация внутренней электронной почты, телеконференций;
  • доступ к ресурсам территориально-распределенных многосерверных сетей.

Графический интерфейс

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

Важнейший элемент графического интерфейса — окна. Существуют следующие виды окон: окна папок, окна приложений, окна документов, окна справочной системы. Основными элементами окна являются:

  • рабочая область;
  • заголовок окна;
  • меню управления состоянием окна;
  • кнопки управления состоянием окна;
  • меню окна;
  • панели инструментов;
  • рамка;
  • полосы прокрутки.

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

  • командные кнопки;
  • текстовые поля;
  • списки и раскрывающиеся списки;
  • счетчики;
  • флажки;
  • переключатели;
  • ползунки.

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

Файлы и файловые системы

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

Порядок хранения файлов на носителе информации определяется используемой файловой системой.

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

Для операционных систем семейства DOS и ранних версий Windows использовалась файловая система FAT. FAT — таблица размещения файлов, в которой компьютер запоминает адреса записанных файлов. Если надо считать какой-либо файл, то компьютер по его имени находит в FAT-таблице его адрес и переводит в нужное место магнитную головку дисковода для его считывания. Если таблица размещения файлов будет повреждена, то информация, имевшаяся на диске, будет утрачена. Физически она там, конечно, останется, но к ней нельзя будет обратиться. Поэтому FAT для надежности дублируется. При любых повреждениях компьютер по копии сам восстанавливает эту таблицу. Адрес файла в таблице FAT16 записывается двухбайтным числом (16 битов), т. е. всего имеется 216 разных адресов. Значит, максимальное число файлов на диске — 65536.

Современные жесткие диски имеют очень большие объемы, и им не хватает такого количества адресов. В таблице FAT32 адрес записывается четырехбайтным числом. Понятно, что адресов в этом случае больше. В современных версиях операционной системы Windows наиболее часто используется файловая система NTFS, которая позволяет обеспечить разделение доступа к информации, криптографирование файлов и повышение устойчивости к ошибкам. В процессе форматирования диска под систему NTFS записывается таблица адресов файлов — MFT.

Для однозначного определения местоположения любого файла диск должен иметь четкую физическую и логическую структуру. Эта структура создается в процессе форматирования диска.

Форматирование разделяется на низкоуровневое (физическое) и форматирование верхнего уровня (логическое).

При низкоуровневом форматировании диск разбивается на дорожки — концентрические окружности, пронумерованные от края к центру. Внешняя дорожка (нулевая) содержит служебную информацию.

Жесткие диски, для увеличения объема хранящейся информации, состоят из нескольких магнитных дисков, поверхности которых обслуживаются отдельными головками. Но условно считают, что это все же один диск, у которого не две стороны, а 8 или 16. Каждый из таких дисков тоже разбивается на дорожки. Дорожки с одинаковыми номерами называются цилиндром. Запись информации на диск идет по цилиндрам — от края (нулевого) к центру.

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

При форматировании верхнего уровня производятся следующие действия:

  • Область данных диска разбивается на кластеры — группы смежных секторов. Кластер — это минимальный размер адресуемого пространства. Каждый кластер имеет свой номер. Размер кластера (число секторов) выбирается кратным степени числа 2. Файлу на диске выделяется целое число кластеров, но не меньше одного. Если файл занимает более одного кластера, то все кластеры, занимаемые файлом, организуются в цепочку кластеров.
  • Записывается загрузочный сектор. Он содержит таблицу, описывающую все параметры диска, а также короткую программу, используемую в процедуре начальной загрузки операционной системы. Если диск готовится как системный, то там будет программа загрузки операционной системы. Если нет — там будет программа, которая при попытке загрузки с этого диска операционной системы выведет сообщение, что данный диск не является системным.
  • В зависимости от того, под какую файловую систему форматируется диск, записывается FAT или MFT.

В дальнейшем обслуживание дисков производится с помощью специальных утилит.

Утилита дефрагментации. Длинные файлы занимают несколько кластеров. Если запись производится на незаполненный диск, то кластеры, принадлежащие одному файлу, записываются подряд. Если диск переполнен, на нем может не быть цельной области, достаточной для размещения файла. Но файл все-таки запишется, если на диске много мелких областей, суммарный размер которых достаточен для записи данного файла. В этом случае файл запишется в виде нескольких фрагментов.

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

Перераспределение файлов на диске, при котором они располагаются в непрерывных областях, называется дефрагментацией. Дефрагментация диска представляет собой процедуру наведения порядка на диске, повышающую производительность файловой системы ОС и всего компьютера в целом.

Утилита проверки диска. Программа проверки диска проверяет правильность информации, которая содержится в таблицах распределения файлов, а также осуществляет поиск сбойных блоков диска.

На жестком диске компьютера могут возникать физические дефекты и логические ошибки. Физические ошибки (дефекты) — это нарушения поверхности жесткого диска. Обычно они связаны с естественным износом диска.

Логические ошибки — это нарушения в файловой структуре.

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

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

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

Для того чтобы обратиться к какому-либо файлу, следует указать его полное имя, которое состоит из пути к файлу и имени файла. Путь начинается с имени диска, на котором записан файл, затем ставится двоеточие и обратная косая черта и далее перечисляется последовательность всех имен каталогов, которые необходимо открыть, чтобы получить доступ к файлу.

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

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

В зависимости от используемых алгоритмов архивации данных различают такие форматы архивных файлов: ZIP, RAR, ARJ, CAB, LZH, ACE, ISO и др. Примерами архиваторов являются программы WinZIP, WinRAR, 7-ZIP, Winace, PowerArchiver, ArjFolder, BitZipper, bzip2 и др.

Примеры решения задач

Пример 1. Количество секторов в кластере — 32. Количество кластеров на диске — 228. Определить емкость диска.

Решение. Учитывая, что размер одного сектора 512 байтов, имеем: 512 ⋅ 32 ⋅ 228 = 29 ⋅ 25 ⋅ 228 = 242 = 22 ⋅ 240 байт = 4 Тбайт.

Ответ: 4 Тбайт.

Пример 2. Размер одного кластера диска 1024 байта. На диск записали файлы размером 2750 байт и 324 Кбайт. Сколько кластеров займут эти файлы?

Решение. Файл размером 2750 байт должен занять 2750 : 1024 = 2,68 кластера. Поскольку файлы могут занимать только целое число кластеров, нужно округлить 2,68 до ближайшего большего целого числа кластеров — 3.

Файл размером 324 Кбайт займет 324 ⋅ 210 : 1024 = 324 кластера.

Вместе эти два файла займут 3 + 324 = 327 кластеров.

Ответ: 327 кластеров.

Пример 3. На диске имеется следующая структура папок и файлов:

Записать полные имена всех файлов.

Решение.

С:\Школа\Сочинения\Чехов\Вишневый сад.doc;

С:\Школа\Сочинения\День Победы.doc;

С:\Рефераты\Импрессионизм.txt;

С:\Фото\Крым\f01.jpg;

С:\Фото\Крым\f02.jpg;

С:\Фото\Мой класс\Новый год.jpg;

С:\Фото\Мой класс\Субботник.bmp;

C:\prog1.pas.

Пример 4. В некотором каталоге хранился файл letter1.doc. После того как в этом каталоге создали подкаталог и переместили в него файл letter1.doc, полное имя файла стало D:\Work\Doc\ Letter\letter1.doc. Каково было полное имя файла до перемещения?

Решение. По полному имени файла видно, что он находится в каталоге Letter, следовательно, Letter и есть вновь созданный каталог. Каталог Letter находится в каталоге с полным именем D:\Work\Doc. По условию задачи файл изначально хранился в том каталоге, где был создан подкаталог Letter. Следовательно, полное имя файла было D:\Work\Doc\letter1.doc.

Ответ: D:\Work\Doc\letter1.doc.

Пример 5. Определить, какое из указанных имен файлов удовлетворяет маске ?let*r.c?*.

1) letter.c 2) mletter1.c 3) letr.cpp 4) _letter.cpp

Решение. Поскольку в начале маски стоит знак «?» перед буквой «l», в имени буква «l» должна стоять на втором месте. Следовательно, варианты 1) и 3) не подходят. В расширении после буквы «с» тоже стоит знак «?», значит, после нее должен находиться непустой символ. Этому условию удовлетворяет вариант 4).

Ответ: 4).

Оперирование информационными объектами с использованием знаний о возможностях информационных и коммуникационных технологий

Прикладное программное обеспечение предназначено для выполнения конкретных задач пользователя. Прикладные программы можно разделить на несколько направлений:

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

В зависимости от того, какой информационный объект должен обрабатываться в прикладной задаче, нужно выбирать соответствующее программное средство. Например, для обработки информационного объекта «текст» следует использовать какой-либо текстовый редактор; для обработки информационного объекта «динамические таблицы» — табличный процессор; для обработки графических информационных объектов — графические редакторы и т. д.

Технологии и средства защиты информации от разрушения и несанкционированного доступа

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

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

  • ограничение доступа к информации — использование паролей, биометрических систем идентификации;
  • шифрование (криптография) информации;
  • контроль доступа к аппаратуре: вся аппаратура закрыта и в местах доступа к ней установлены датчики, которые срабатывают при вскрытии аппаратуры;
  • законодательные меры.

Защита от хищения информации, от нелегального копирования и использования программ осуществляется с помощью специальных программных и аппаратных средств:

  • Шифрование файлов, вставка паролей, проверка компьютера по его уникальным характеристикам и т. п. Защищаемая программа предварительно обрабатывается таким образом, чтобы ее код не выполнялся на других компьютерах.
  • Использование программного ключа. Программное обеспечение распространяется фирмами-производителями в форме дистрибутивов на CD-ROM. Каждый дистрибутив имеет свой серийный номер. На CD-ROM может находиться закодированный программный ключ, который теряется при копировании и без которого программа не может быть установлена.
  • Использование электронного (аппаратного) ключа: ключ должен быть присоединен к параллельному порту или к USB-порту компьютера; защищаемая программа обращается к параллельному порту и запрашивает секретный код. Если ключ не присоединен к компьютеру, то программа прекращает выполнение.
  • В качестве физической защиты компьютерных систем используется специальная аппаратура, позволяющая выявить устройства промышленного шпионажа, исключить запись или ретрансляцию излучений компьютера, а также речевых и других несущих информацию сигналов.
  • Для защиты компьютера, подключенного к Интернету, от сетевых вирусов и хакерских атак, между Интернетом и компьютером устанавливается аппаратный или программный межсетевой экран. Он отслеживает передачу данных между Интернетом и компьютером, выявляет подозрительные действия и предотвращает несанкционированный доступ к данным.

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

Существует большое число различных классификаций вирусов:

1. По среде обитания:

  • сетевые — распространяются по сетям; файловые — инфицируют исполняемые файлы с расширениями .exe, .com; к этому класу также относятся макровирусы, которые заражают неисполняемые файлы (например, в MS Word или в MS Excel);
  • загрузочные — внедряются в загрузочный сектор диска (Boot-сектор) или в сектор, содержащий программу загрузки системного диска (Master Boot Record — MBR); некоторые вирусы записывают свое тело в свободные секторы диска, помечая их в FAT как «плохие»;
  • файлово-загрузочные — способны заражать и загрузочные секторы, и файлы.

2. По степени опасности:

  • неопасные — например, выводят на экран сообщения;
  • опасные — уничтожают часть файлов на диске;
  • очень опасные — самостоятельно форматируют жесткий диск.

3. По особенностям алгоритма:

  • вирусы-компаньоны — создают для ехе-файлов новые файлы-спутники, имеющие то же имя, но с расширением com; вирус записывается в com-файл и никак не изменяет одноименный ехе-файл; при запуске такого файла операционная система первым обнаружит и выполнит com-файл, т. е. вирус, который затем запустит и ехе-файл;
  • паразитические — изменяют содержимое дисковых секторов или файлов;
  • репликаторы (черви) — распространяются в сети: проникают в память компьютера из сети, вычисляют сетевые адреса других компьютеров и рассылают по этим адресам свои копии, тем самым уменьшая пропускную способность сети и замедляя работу серверов; могут размножаться без внедрения в другие программы и иметь «начинку» из компьютерных вирусов;
  • невидимки (стелс) — маскируют свое присутствие в компьютере; они перехватывают обращения операционной системы к пораженным файлам или секторам дисков и «подставляют» незараженные участки файлов;
  • мутанты (призраки, полиморфные вирусы) — их копии практически не содержат полностью совпадающих участков кода; это достигается тем, что в программы вирусов добавляются пустые команды («мусор»), которые не изменяют алгоритм работы вируса, но затрудняют его выявление;
  • макровирусы — используют возможности макроязыков, встроенных в системы обработки данных;
  • «Троянские кони» — маскируются под полезную или интересную программу, выполняя во время своего функционирования еще и разрушительную работу (например, стирают FAT), или собирают на компьютере информацию, не подлежащую разглашению.

4. По целостности:

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

Для борьбы с вирусами разрабатываются антивирусные программы.

Виды антивирусных программ:

  • Программы-детекторы (сканеры) — рассчитаны на обнаружение конкретных вирусов. Основаны на сравнении специфической последовательности байтов (сигнатур или масок вирусов), содержащихся в теле вируса, с байтами проверяемых программ. Эти программы нужно регулярно обновлять, т. к. они быстро устаревают и не могут выявлять новые виды вирусов. Если программа не опознается детектором как зараженная, это еще не значит, что она «здорова». В ней может быть вирус, который не занесен в базу данных детектора.
  • Программы-доктора (фаги) — не только находят файлы, зараженные вирусом, но и лечат их, удаляя из файла тело программы-вируса. Полифаги позволяют лечить большое число вирусов. Широко распространены программы-детекторы, одновременно выполняющие и функции программ-докторов, например: AVP (автор Е. Касперский), Aidstest (Д. Лозинский), Doctor Web (И. Данилов), Norton Antivirus (Symantec Corp).
  • Программы-ревизоры — анализируют текущее состояние файлов и системных областей дисков и сравнивают его с информацией, сохраненной ранее в одном из файлов ревизора. При этом проверяются состояние Boot-сектора (загрузочного сектора), FAT, длина файлов, время их создания, атрибуты, контрольные суммы (суммирование по модулю 2 всех байтов файла). Пример такой программы — Adinf (Д. Мостовой).
  • Программы-фильтры (сторожа, мониторы) — программы, которые оповещают пользователя обо всех попытках какой-либо программы выполнить подозрительные действия, а пользователь принимает решение о разрешении или запрещении выполнения этих действий. Фильтры контролируют следующие операции: обновление программных файлов и системной области дисков; форматирование диска; резидентное размещение программ в ОЗУ. Примером служит программа Vsafe. Она не способна обезвредить вирус. Для этого нужно использовать фаги.
  • Программы-иммунизаторы — записывают в вакцинируемую программу признаки конкретного вируса так, что вирус считает ее уже зараженной, и поэтому не производит повторное инфицирование. Эти программы менее эффективны и морально устарели.

Антивирусные средства являются самыми распространенными средствами защиты информации.

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

Для обеспечения большей надежности хранения данных на жестких дисках используются RAID-массивы (Redundant Arrays of Independent Disks — избыточный массив независимых дисков). Несколько жестких дисков подключаются к RAID-контроллеру, который рассматривает их как единый логический носитель информации. При записи информации она дублируется и сохраняется на нескольких дисках одновременно, поэтому при выходе из строя одного из дисков данные не теряются.

Технология хранения, поиска и сортировки информации в базах данных

Структура базы данных (записи и поля)

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

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

Известны три основных типа организации данных в БД и связей между ними: иерархические, сетевые и табличные базы данных.

Иерархическая БД. Элементы в записи упорядочены. Один элемент считается главным, остальные — подчиненными. Примером такой структуры может быть дерево каталогов на диске или генеалогическое дерево. Служба имен доменов в Интернет (DNS) также является собранием иерархических баз данных для перевода имен доменов Интернет из символов в числовые адреса протокола передачи данных IP. Поиск какого-либо элемента данных в такой системе может оказаться довольно трудоемким из-за необходимости последовательно проходить несколько иерархических уровней.

Сетевая БД. Это более гибкая структура, т. к. в ней дополнительно к вертикальным связям устанавливаются горизонтальные связи. Процесс поиска данных в такой базе легче, чем в иерархической. Сетевой базой данных фактически является служба WWW сети Интернет.

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

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

Основными свойствами любого поля являются следующие:

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

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

Подпись. Это та информация, которая отображается в заголовке столбца. Если подпись не задана, то в заголовке отображается имя поля. Разным полям можно задать одинаковые подписи.

Формат. Устанавливает формат данных.

Тип поля определяется типом данных, которые оно содержит.

Основные типы полей:

Текстовое поле — для ввода текста. Максимальный размер — 255 символов.

Числовое поле — для ввода числовых данных.

Дата/время — для ввода даты и времени в определенном формате.

Логическое поле — для ввода логических данных, имеющих только два значения (ДА — 1, НЕТ — 0). Его длина всегда равна 1 байту.

Денежное поле — числа в денежном формате.

Поле объекта OLE — в этом поле можно хранить картинки, музыкальные клипы, видеозаписи.

Счетчик — это числовое поле, имеющее свойство автоматического наращивания. При вводе новой записи в это поле автоматически вводится число, на единицу большее, чем значение того же поля в предыдущей записи. Эти числа не могут быть изменены пользователем. Обычно применяется для нумерации записей.

Поле МЕМО — используется, если нужно вставить длинный текст. В него можно поместить до 65535 символов (64 Кбайт). Особенность поля в том, что сами данные хранятся не в нем, а в другом месте, — в поле хранится только указатель на то, где они расположены.

Гиперссылка — ссылки на информационный ресурс в Интернете.

Запись БД — это строка таблицы, содержащая набор значений свойств, размещенный в полях базы данных.

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

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

Связи между таблицами могут быть одного из трех типов:

  • «один-к-одному» — связанные таблицы имеют одинаковое количество записей и между этими записями установлено взаимнооднозначное соответствие;
  • «один-ко-многим» — каждой записи в одной (главной) таблице могут соответствовать несколько записей в другой (подчиненной) таблице, а запись в подчиненной таблице не может иметь более одной соответствующей ей записи в главной таблице;
  • «многие-ко-многим» — одной записи в первой таблице могут соответствовать несколько записей во второй таблице и наоборот. Две таблицы, находящиеся в отношении «многиеко-многим», могут быть связаны только с помощью третьей (связующей) таблицы.

Для создания, наполнения и обработки баз данных разработаны специальные программные средства — системы управления базами данных (СУБД).

Примеры решения задач

Пример 1. В таблице представлен фрагмент базы данных о клиентах некоторой фирмы.

Код_Клиента Фамилия Адрес Телефон E-mail
К1216Р Карпов ул. Кирова, 25 2892316 KDA@mail.ru
М1347П Маслов ул. Королева, 12 7937847 MaslovN63@rambler.ru

Сколько полей и сколько записей в данной базе?

Решение. Поля — это столбцы базы данных, а записи — это строки. Следовательно, в данной базе 5 полей (Код_Клиента, Фамилия, Адрес, Телефон, E-mail) и 2 записи (о клиентах Карпове и Маслове).

Табличное и картотечное представление баз данных

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

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

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

Сортировка и отбор записей

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

Сортировка — это упорядочивание данных по некоторому признаку. Различают сортировку по возрастанию и по убыванию. Для числовых значений сортировка означает ранжирование по значению, а для текстовых — упорядочивание по алфавиту.

В СУБД Access сортировка осуществляется только по одному полю. Каждая новая сортировка отменяет результаты предыдущей. Вложенные сортировки выполняются с помощью запросов.

СУБД Access позволяет производить поиск записей, в которых значения определенного поля полностью или частично совпадают с заданной величиной. В СУБД Access 2007 поиск информации в таблице осуществляется следующим образом. Установить курсор в поле, в котором будет выполняться поиск, открыть на ленте вкладку Главная и в группе Найти выбрать команду Найти . Откроется окно Поиск и замена. В поле Образец надо ввести значение, которое следует найти. Для этого можно использовать подстановочные знаки (маску):

«*» — любой символ в начале или в конце;

«?» — любой символ в любом месте;

«[ ]» — любой символ из заключенных в скобки (например, маска b[ae]ll найдет ball, bell, но не bill);

«!» — любой символ, кроме заключенных в скобки (например, b[!ae]ll найдет bill, bull, но не ball, bell);

«-» — любой символ из диапазона (например, b[a-c]d найдет bad, bbd, bcd);

«#» — любая цифра.

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

Вкладка Замена этого окна позволяет не только найти какую-либо информацию, но и заменить ее на другую.

Выбор из базы тех записей, которые удовлетворяют требованиям пользователя, также осуществляется с помощью фильтров. Для задания фильтра нужно открыть на ленте вкладку Главная и в группе Сортировка и фильтр выбрать команду Фильтр. Команды этой группы Выделение и Дополнительно предлагают несколько дополнительных видов фильтров. Например, фильтр «по выделенному» позволяет отобрать записи, содержащие выделенный фрагмент; фильтр «исключить выделенное» скрывает записи, содержащие выделенный фрагмент; расширенный фильтр позволяет задать более сложные условия отбора записей, а также сортировку по нескольким параметрам.

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

Использование различных способов формирования запросов к базам данных

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

Для создания запросов к БД существует специальный язык запросов SQL (Structured Query Language) — структурированный язык запросов. Вместо него в СУБД Access есть простое средство, которое называется бланком запроса. С его помощью можно сформировать запрос простыми приемами, перетаскивая элементы запроса между окнами.

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

Последовательность создания простого запроса на выборку в СУБД Access 2007 следующая. На ленте нужно открыть вкладку Создание и в группе Другие выбрать команду Конструктор запросов. При этом на ленте появится вспомогательная вкладка Работа с запросами/Конструктор. Также программа выведет бланк запроса и окно Добавление таблицы. Сначала надо задать таблицы или запросы, на которых будет основываться новый запрос. Это выполняется указанием имени таблицы (запроса) и щелчком на кнопке Добавить в окне Добавление таблицы.

Далее нужно заполнить строки нижней панели бланка, которые определяют структуру запроса, т. е. результирующей таблицы.

Строку Поле заполняют перетаскиванием названий полей из таблиц в верхней части бланка. Каждому полю будущей результирующей таблицы соответствует один столбец бланка запроса по образцу. Строка Имя таблицы заполняется автоматически при перетаскивании поля. Щелчок на кнопке Сортировка выведет кнопку раскрывающегося списка, содержащего виды сортировки. Таким образом, при необходимости можно отсортировать результирующие данные по возрастанию или по убыванию.

Флажок Вывод на экран указывает, надо ли выводить поле на экран.

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

Запуск запроса осуществляется выбором команды Выполнить из группы Результаты на вкладке Работа с запросами/Конструктор. При запуске образуется результирующая таблица, содержащая отобранную информацию.

Пользователь, не имевший отношения к созданию базы, не может изменить параметры, по которым делается запрос на выборку. Но часто пользователю надо предоставить возможность выбора того, что он хочет найти в таблицах БД. Для этого существует специальный запрос — запрос с параметром. В строке Условие отбора бланка запроса в нужном поле надо ввести команду LIKE [] языка SQL

После запуска запроса на экран выведется окно, содержащее текст. В этом окне пользователю предлагается ввести параметр. По щелчку на кнопке ОК появится результирующая таблица.

Например, имеется БД, содержащая сведения о футболистах разных клубов: Фамилия, Имя, Дата Рождения, Рост, Вес, Клуб, Специализация. Требуется выбрать только спортсменов, принадлежащих одному конкретному клубу. А к какому именно клубу — должен выбирать пользователь. При формировании запроса с помощью бланка в строке Условие отбора поля Клуб нужно записать команду LIKE [Введите название клуба]. Тогда при запуске запроса на экран будет выведено окно с текстом Введите название клуба, полем для ввода и кнопкой ОК. Пользователь должен ввести название клуба, например Спартак, и щелкнуть на кнопке ОК. После этого появится результирующая таблица, содержащая записи о спортсменах клуба Спартак.

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

Для создания запроса, производящего вычисления, служит тот же самый бланк запроса. Разница в том, что в одном из столбцов записывают формулу. В нее входят заключенные в квадратные скобки названия полей, участвующих в расчете, а также знаки математических операций. Если формула большая, то с помощью клавиш [Shift]+[F2] можно открыть вспомогательное окно Область ввода. В него можно ввести сколь угодно длинную формулу, а затем щелчком на кнопке ОК перенести ее в бланк запроса по образцу.

Например, имеется БД по итогам командных соревнований. Базовая таблица содержит сведения о проведенных играх команд, количестве побед, поражений, ничьих, о том, сколько забито и пропущено голов. В запросе надо отобразить результативность каждой команды. Для этого надо создать вычисляемое поле. Его название не должно совпадать ни с одним полем таблицы и отделяться от формулы двоеточием. В бланке запроса в строке Поле в свободном столбце нужно ввести формулу:

Результативность : [Забито] / [Игры]

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

Примеры решения задач

Пример 1. К нескольким файлам применялись различные архиваторы и в таблицу записывались исходный размер файлов и размер архивов. Ниже приведен фрагмент этой таблицы:

Имя файла Размер ZIP RAR ARJ
Text1.doc 285 114 106 112
Ref.doc 843 42 34 41

Требуется отобрать файлы, исходный размер которых был больше 2 Мбайт и при использовании WinRAR уменьшился более чем в 4 раза. Какое условие нужно использовать для формирования запроса?

  1. (Размер > 2000) И (Размер/RAR > 4)
  2. (Размер > 2048) И (RAR < 256)
  3. (Размер > 2048) ИЛИ (Размер/RAR > 4)
  4. (Размер > 2048) И (Размер/RAR > 4)

Решение. Исходя из условия задачи, в условии запроса должна использоваться логическая операция «И» (логическое умножение), поэтому вариант 3) не подходит. Кроме того, надо учесть, что 1 Мбайт = 1024 байта. Запрос с условием 1) может отобрать записи о файлах с исходным размером менее 2 Мбайт, следовательно, также не подходит. Правильный вариант — 4).

Ответ: 4).

Пример 2. В таблице представлен фрагмент базы данных, содержащей информацию о странах, их площади (поле Площадь), численности населения (поле Население), расположении в части света (поле ЧС):

Страна Столица Площадь Население ЧС
1 Бельгия Брюссель 30,5 10289 Европа
2 Коста-Рика Сан-Хосе 51,1 3896 Северная Америка
3 Израиль Тель-Авив 20,8 6116 Азия
4 Дания Копенгаген 43,1 5384 Европа

Какое условие нужно использовать для формирования запроса, отбирающего все европейские страны площадью менее 30 тыс. кв. км с численностью населения более 10 тыс. человек?

  1. (Площадь < 30) И (Население > 10000)
  2. (ЧС = Европа) И (Площадь < 30) ИЛИ (Население > 10000)
  3. (Площадь < 30) И (Население > 10000) ИЛИ (ЧС = Европа)
  4. (ЧС = Европа) И (Площадь < 30) И (Население > 10000)

Решение. Исходя из условия задачи, в условии запроса должна использоваться логическая операция «И» (логическое умножение), поэтому варианты 2) и 3) не подходят. Условие 1) также неверно, т. к. в нем не задано расположение страны (Европа), т. е. по такому запросу будут отобраны страны, расположенные в Африке, Азии и т. д. Правильный вариант 4).

Ответ: 4).

Практика: решай 4 задание и тренировочные варианты ЕГЭ по информатике