Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Электронные средства сбора и обработки информации. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
а при передаче единицы потенциал инвертируется на противоположный (рис. 3.9, в). Это позволяет решить проблемы с синхронизацией и низко­частотной составляющей. Кроме того, в отличие от метода биполярного кодирования с альтернативной инверсией, он требует всего двух уровней потенциала в линии связи. К недостаткам этого метода можно отнести необходимость увеличения полосы пропускания линии связи.
Манчестерский код является импульсным кодом. Для передачи дан­ных каждый такт делится на две части и информация кодируется перепа­дами потенциала, происходящими в середине каждого такта (рис. 3.9, г). Единица кодируется перепадом от низкого уровня сигнала к высокому, а ноль – обратным перепадом. В начале каждого такта может происходить служебный перепад сигнала, если нужно представить несколько единиц или нулей подряд. Так как сигнал изменяется по крайней мере один раз за такт передачи одного бита данных, то манчестерский код обладает хоро­шими самосинхронизирующими свойствами.
Потенциальный код 2B1Q имеет четыре уровня сигнала (рис. 3.9, д). Название этого кода описывает принцип его работы. За один такт сигнал, имеющий четыре состояния, передает два бита. Это позволяет увеличить скорость передачи, но сильно снижает помехозащищенность линии связи.
3.6.3. Логическое кодирование
Логическое кодирование позволяет улучшить различные потенциаль­ные коды. Как было сказано выше, одним из недостатков потенциальных кодов является отсутствие синхронизации и наличие низкочастотной со­ставляющей. Применение логического кодирования позволяет заменять длинные последовательности одинаковых бит, приводящие к появлению низкочастотой составляющей, вкраплениями их инверсных копий. Логи­ческое кодирование делится на два типа – избыточные коды и скрэмбли­рование.
Избыточные коды основаны на разбиении исходной последователь­ности бит на символы. Затем происходит замена исходного символа на новый, имеющий большее количество бит, чем исходный. Например, логический код 4В/5В, используемый в технологиях Fast Ethernet, заменя­ет исходные символы длиной в 4 бита на символы длиной в 5 бит. Соот­ветственно результирующие символы содержат большее количество бито-
81
вых комбинаций, чем исходные. Так, в коде 4В/5В результирующие сим-
35iii i
BAB B
−−
=⊕⊕
33 35 35
()
iiii iii iii
CBBB ABB BBA
−− −− −−
=⊕⊕=⊕⊕ ⊕⊕ =
волы могут содержать 32-битовые комбинации, в то время как исходные символы – только 16. Поэтому в результирующем коде можно отобрать 16 таких комбинаций, которые не содержат большого количества нулей, а остальные считать запрещенными кодами (code violation). Кроме того, из­быточное кодирование позволяет приемнику распознавать ошибки пере­дачи. Если приемник принимает запрещенный код, значит, на линии про­изошла ошибка передачи.
Скрэмблирование – это перемешивание данных скрэмблером перед
передачей их в линию с помощью потенциального кода [9].
Метод скрэмблирования основан на побитном вычислении результи­рующего кода по определенным правилам, включающим биты исходного кода, полученные в предыдущих тактах, и биты результирующего кода. Например, скрэмблер может реализовывать следующее соотношение:
,
где Bi – результирующий двоичный код, полученный на i-м такте работы скрэмблера; Ai – исходный двоичный код, поступающий на i-м такте на вход скрэмблера; B на три такта ранее текущего такта; B
– результирующий двоичный код, полученный
i-3
– результирующий двоичный код,
i-5
полученный на пять тактов ранее текущего такта; ⊕– операция исключа­ющего ИЛИ (сложение по модулю 2).
Для получения исходной посылки полученные данные передаются дескрэмблеру. Дескрэмблер восстанавливает исходную посылку на осно­вании обратного соотношения:
.
Различные алгоритмы скрэмблирования отличаются количеством сла­гаемых, дающих цифру результирующего кода, и сдвигом между слагае­мыми. Так, в сетях ISDN при передаче данных от сети к абоненту исполь­зуется преобразование со сдвигами в 5 и 23 позиции, а при передаче дан­ных от абонента в сеть – со сдвигами 18 и 23 позиции.
82
4. БАЗЫ ДАННЫХ
4.1. ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ
Информационная система (ИС) – это некий механизм для хранения,
модификации и поиска информации.
База данных (БД) – это набор структурированной информации (т. е.
имеется некоторая логическая структура, схема, модель, которая связыва­ет между собой разные данные), предназначенный для совместного ис­пользования несколькими пользователями одновременно.
Система управления базами данных (СУБД) – инструментальные про-
граммные средства, предназначенные для разработки базы данных.
Прикладные программы (Приложения) – программные средства,
предназначенные для доступа пользователей к базе данных.
Схема базы данных – описывает структуру, взаимоотношение и взаи­мозависимость между отдельными компонентами, а также правила моди­фикации данных.
Модель данных – принципы, на основе которых построена схема базы данных.
Основные задачи и функции базы данных:
1. Обеспечивать просмотр и модификацию данных.
Это основная задача любой информационной системы. Механизм ре­ализации этих возможностей обычно скрыт от пользователя.
2. Обеспечивать одновременный доступ нескольких пользователей к
базе данных.
При одновременной работе нескольких пользователей в информаци­онной системе не должны возникать конфликты при редактировании од­ной и той же информации, в то же время недопустима ситуация, когда один пользователь, работая с той или иной информацией, делает невоз­можной работу других пользователей.
3. Предоставлять возможность администратору системы выполнять различные действия для поддержания информационной системы в рабо­чем состоянии.
Информационная система должна позволять выполнять различные административные действия и настройки, т. е. настраиваться на новые ап­паратные ресурсы, добавлять или удалять пользователей и т. д.
83
4. Обеспечивать идентификацию пользователей, ограничивать их
Файл-сервер
Данные Программа
Программа
Программа
права на доступ к различным данным, защищать данные от несанкциони­рованного доступа.
Любая информационная система должна разграничивать права досту­па к различным данным. Например, одни пользователи могут просматри­вать и модифицировать данные, а другие могут только просматривать. Кроме того, некоторые пользователи видят всю информацию, хранящуюся в базе данных, некоторые видят только часть информации. Также инфор­мационная система должна иметь механизмы защиты от попыток полу­чить несанкционированный доступ к данным.
5. Обеспечивать целостность и непротиворечивость данных в случае
аппаратных и программных сбоев.
Информационная система должна быть максимально устойчива к ап­паратным и программным ошибкам (или к злому умыслу). В случае выхо­да аппаратуры или программного обеспечения из строя, вирусной или ха­керской атаки должна существовать возможность восстановить работо­способность системы с минимальными потерями информации.
4.2. АРХИТЕКТУРЫ БАЗ ДАННЫХ
4.2.1. Архитектура на основе разделяемых файлов
Суть этой архитектуры сводится к тому, что на каждом персональном компьютере, подключенном к компьютерной сети, запускается приложе­ние, использующее общие файлы, находящиеся на файловом сервере (рис. 4.1). Данная архитектура получила широкое распространение на начальных этапах развития локальных сетей. Центральным звеном этих локальных сетей являлся файловый сервер.
Рис. 4.1. Архитектура на основе разделяемых файлов
84
Преимуществом такой архитектуры является возможность очень
быстро и относительно недорого запустить какое-либо однопользователь­ское приложение в многопользовательском режиме. Каждая запущенная копия программы работает с общими данными так, как будто это ее соб­ственные персональные данные.
Кроме преимуществ, эта архитектура имеет и недостатки:
1. Большой трафик сети при работе нескольких пользователей, что
замедляет работу системы. Кроме того, существенно замедляется вся остальная работа по сети, как, например, печать файлов, загрузка про­грамм и т. д.
2. Нет никаких специальных возможностей для многопользователь-
ского доступа, что приводит к затруднению или полной невозможности для пользователей работать с одними и теми же данными.
3. При случайном аппаратном сбое файловый сервер не проверяет корректность имеющихся на нем данных. Проверкой и восстановлением информации в этом случае занимается администратор системы, что зани­мает большое количество времени.
4. При аппаратном сбое возникала проблема незакрытых транзакций, т. е. действий, которые нельзя прерывать до их окончания, а в случае их прерывания все выполненные действия должны быть отменены (напри­мер, денежный перевод).
Если некоторые недостатки использования архитектуры на основе разделяемых файлов можно устранить, то недостатки, связанные с низкой производительностью при интенсивной работе нескольких пользователей, и проблемы по обеспечению целостности данных устранить невозможно.
В настоящее время данная архитектура используется в системах с не­большим количеством пользователей, с небольшими объемами данных и некритичной, недорогой информацией.
4.2.2. Архитектура «хост-терминал»
В архитектуре «хост-терминал» на рабочем месте пользователя, назы­ваемом терминалом, производятся только отображение и ввод информа­ции, а все программы и данные хранятся и выполняются на центральном компьютере, который называется хостом (рис. 4.2). Такая архитектура ис­пользовалась в многотерминальных системах на основе больших компью-
85
теров (мэйнфреймов) и была особенно распространена в 70-х и начале
Хост
Программы
Данные
Терминал
Терминал
Терминал
Терминал
80-х годов двадцатого века.
Рис. 4.2. Архитектура «хост-терминал»
На хосте работает общее, единое для всех пользователей приложение. Это приложение работает со своими данными, хранящимися также на хо­сте. Каждый из пользователей подключается к информационной системе через систему удаленного терминального доступа. На рабочем месте поль­зователя производятся ввод информации, ее пересылка на хост, получение и отработка команд на вывод данных.
Операционные системы и программы, работающие на таких компью­терах, как и сами компьютеры, были изначально разработаны для много­пользовательского доступа, поэтому неразрешимых проблем с одновре­менной работой нескольких пользователей на таких системах не возника­ет. Не возникает также и особых проблем с пропускной способностью ли­ний связи, так как передавалась только та информация, которая необхо­дима пользователю.
Однако администрирование и сопровождение хост-терминальных информационных систем очень дорогое. Также существенной проблемой является масштабируемость терминальных систем. Увеличение числа пользователей в какой-то момент приводило к необходимости очень су­щественных финансовых вложений, связанных с модернизацией аппарат­ного комплекса в целом.
86
4.2.3. Архитектура «клиент-сервер»
Сервер
Программа-сервер
Данные
Программа-
клиент
Программа-
клиент
Программа-
клиент
На сегодняшний день это самая распространенная архитектура баз
данных (рис. 4.3). Архитектура «клиент-сервер» основана на двух типах программ – на программе-клиенте и программе-сервере. Программа­клиент устанавливается на компьютер пользователя и формирует запросы для программы-сервера. Также этой программой формируется интерфейс пользователя и организация ввода-вывода информации. Программа-сервер находится на компьютере, выполняющем функции сервера, и обеспечива­ет обработку запросов программы-клиента.
Рис. 4.3. Архитектура «клиент-сервер»
Положительными характеристиками архитектуры «клиент-сервер»
являются:
− пониженный сетевой трафик относительно архитектуры на основе
разделяемых файлов;
− уменьшенная сложность программы-клиента (большая часть
нагрузки ложится на серверную часть), вследствие чего снижаются требо­вания к аппаратным мощностям клиентских компьютеров;
− наличие программы-сервера повышает целостность и безопас-
ность базы данных.
Недостатками этой архитектуры являются более высокие финансовые затраты на аппаратное и программное обеспечение, а также то, что боль­шое количество клиентских компьютеров, расположенных в разных ме­стах, вызывает определенные трудности со своевременным обновлением клиентских приложений на всех компьютерах-клиентах.
87
Программа-сервер базы данных является основной программой
с точки зрения доступа к данным. Поэтому основная часть функций, которая должна быть реализована в базе данных, ложится на программу-сервер. Программа-сервер выполняет следующие основные функции:
1. Обрабатывает клиентские запросы по извлечению и модификации
данных. Это является основной функцией сервера баз данных. Чаще всего механизм реализации этой функции скрыт от пользователя, то есть поль­зователь просто формулирует, а сервер базы данных исполняет запрос.
2. Обеспечивает одновременный доступ к данным нескольких поль- зователей. Один из аспектов многопользовательского доступа – это воз­можность параллельного доступа к данным нескольких пользователей. Сервер базы данных работает таким образом, что обработка нескольких запросов происходит одновременно, то есть если два пользователя одно­временно обратились к серверу баз данных со своими запросами, то сер­вер обрабатывает эти запросы одновременно.
3. Обеспечивает идентификацию пользователей, ограничивает их права на доступ к различным данным, а также защищает данные от не­санкционированного доступа. В реальных базах данных существует раз­граничение по правам доступа к данным. Какие-то пользователи могут и читать, и модифицировать данные, какие-то – только читать, а кто-то во­обще может не видеть определенные данные.
4. Обеспечивает целостность и непротиворечивость данных в случае аппаратных и программных сбоев. В случае внезапной перезагрузки или выключения компьютера, на котором работает сервер базы данных, ин­формация не должна быть искажена или потеряна. Также при внезапном отключении или перезагрузке компьютера, на котором работает програм­ма-клиент, сервер базы данных должен снять блокировки установленные программой-клиентом, отменить незавершенные транзакции и, возможно, выполнить какие-то другие действия.
5. Обеспечивает защиту данных от несанкционированного доступа. Сервер базы данных должен обеспечивать защиту от попыток получения доступа к данным тем лицам, которые не являются пользователями ин­формационной системы.
6. Предоставляет дополнительные средства администрирования базы данных. База данных должна позволять добавлять или удалять пользова-
88
телей, настраиваться на новые ресурсы, предоставлять инструменты архи­вирования и восстановления информации.
Если сравнить функции, выполняемые программой-сервером, с функ-
циями базы данных, то можно увидеть, что они практически не отличают­ся. Из этого можно сделать вывод, что большую часть задач по обработке данных и команд пользователя выполняет программа-сервер. Поэтому к компьютеру, на котором устанавливается программа-сервер, предъявля­ются высокие требования как по производительности, так и по надежности.
Программа-клиент в системах управления базами данных отвечает
за интерфейс пользователя, при помощи которого осуществляется взаимо­действие пользователя с базой данных. Взаимодействие строится на осно­ве каких-либо экранных форм или диалога. На основе команд, введенных пользователем, программа-клиент формирует запрос к серверу базы дан­ных. После того как запрос будет отработан, данные передаются програм­ме-клиенту, и программа-клиент выдает их на экран.
Существуют программы-клиенты, которые не ведут никакого диалога с пользователем, а выполняют системные задачи, например принимают сообщения по почте, извлекают из них данные и заносят в базу данных.
4.3. УРОВНИ ВОСПРИЯТИЯ ДАННЫХ
При работе с СУБД разные пользователи видят СУБД по-разному. Конечный пользователь работает в приложении и ничего не знает о внут­ренней структуре базы данных. Приложение, используемое пользовате­лем, видит и использует только ту часть базы данных, которую ему раз­решено видеть. Администратор, устанавливающий права доступа пользо­вателям, видит всю схему базы данных, но не видит физической реализа­ции базы данных, то есть как и в каком формате сохраняются файлы, как осуществляется связь между различными таблицами и т. д. Программи­сты, разрабатывающие ядро исполнителя запросов (SQL-сервер) и предо­ставляющие администратору возможность создавать схему базу данных, реализуют отображение базы данных на внешние устройства и в память.
В соответствии с этим выделяют три уровня представления данных.
Прикладной (пользовательский) уровень – это уровень конечного пользователя. Пользователь видит базу данных в виде взаимосвязанных полей и таблиц в форме набора меню и команд, выполняя которые, он ре­шает свою задачу.
89
Концептуальный уровень – это уровень программиста и администра-
Склад
Наименование
Адрес Товар
Наименование
Изготовитель
Цена
Кадры
Отдел
Должность
Транспорт
Тип
Отдел
Водители
ФИО
Категория
Менеджеры
ФИО
Стаж работы
тора. На этом уровне работает программист, создающий прикладные про­граммы и разрабатывающий схему базы данных.
Физический уровень – это уровень реализации. На этом уровне опре-
деляется, как хранятся данные и в каком формате, как осуществляется до­ступ к ним. На этом уровне работают разработчики различных СУБД. Ча­ще всего физическое представление не только скрыто от посторонних глаз, но и является коммерческой тайной разработчиков СУБД.
4.4. МОДЕЛИ ДАННЫХ
4.4.1. Иерархическая модель данных
Иерархическая модель данных – одна из первых моделей представле-
ния сложной структуры данных. Данные в иерархической модели пред­ставлены в виде коллекций записей и организованы по принципу древо­видной структуры – в виде отношения «предок-потомок». Каждая запись имеет не более одной родительской записи и может иметь несколько под­чиненных записей. Связи записей реализуются в виде физических указа­телей с одной записи на другую. Такая модель может быть представлена как древовидный граф, где узлы представлены записями, а связи множе­ствами (рис. 4.4).
Рис. 4.4. Иерархическая модель данных
90
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]