![](/user_photo/2706_HbeT2.jpg)
- •Основные понятия информационных систем
- •Компоненты информационных систем
- •Информационная база как основа современной технологии управления
- •Информационный менеджмент. Стратегический информационный менеджмент.
- •Локальные вычислительные сети
- •1. Сетевые адаптеры (сетевые карты)
- •2. Кабельные системы лвс
- •3. Топология сети, одноранговые сети и сети с выделенным сервером.
- •4. Сетевые операционные системы.
- •Принципы функционирования лвс: протоколы и адресация.
- •1. Протоколы транспортного уровня tcp и udp.
- •2. Протоколы прикладного уровня http, ftp, smtp, imap, pop3, telnet.
- •3. Система доменных имен dns.
- •Сетевое оборудование.
- •1. Повторитель (концентратор, hub).
- •2. Мост (bridge).
- •Удаленные мосты.
- •3. Коммутатор (switch).
- •4. Маршрутизатор (router).
- •Автономные системы, протоколы внешней маршрутизации.
- •5. Корпоративные модульные концентраторы.
- •6. Шлюз (gateway), межсетевой экран (firewall), прокси-сервер, nat.
- •Файловая система ntfs.
- •Распределенная файловая система dfs.
- •Технологии глобальных сетей.
- •1. Выделенные и коммутируемые каналы – физическая основа построения глобальных сетей.
- •1.1. Аналоговые телефонные линии.
- •1.2. Цифровые выделенные линии pdh и sonet/sdh.
- •1.3. Цифровые коммутируемые линии isdn (сети isdn).
- •1.4. Ассиметричные цифровые абонентские линии adsl.
- •2. Глобальные сети с коммутацией пакетов
- •2.1. Сети X.25.
- •2.2. Сети Frame Relay.
- •2.3. Сети atm.
- •2.4. Сети tcp/ip.
- •Базы данных.
- •1. Иерархические, сетевые и реляционные модели данных.
- •2. Архитектуры субд.
- •3. Oltp-системы и olap-системы.
2.4. Сети tcp/ip.
Принципы построения и функционирования сетей TCP/IP аналогичны принципам функционирования ЛВС. Необходимо отметить, что в отличии от рассмотренных выше сетей, сеть TCP/IP не работает с установлением виртуального канала. Маршрутизация осуществляется не на основании номера виртуального канала, а на основании полного IP-адреса, помещаемого в пакет.
Протокол IP работает без установления предварительного соединения и не гарантирует доставку пакета. Подтверждение приема пакета и повторная передача утерянных пакетов – дело протоколов более высокого транспортного уровня (TCP), которые, тем не менее, все равно «передают» повторные пакеты «ненадежному» протоколу IP. Если в сетях ATM пропускная способность и качество обслуживания гарантированы, то в сетях TCP/IP (IPv4) таких механизмов нет. Все пакеты в сети TCP/IP доставляются в режиме, аналогичному режиму UBR (не задана битовая скорость, доставка «по возможности») сетей ATM.
Глобальная компьютерная сеть Internet началась с сети ARPAnet – оборонного проекта, который финансировался Агентством Перспективных Исследований Министерства Обороны США (Advanced Research Projects Agency, ARPA). Целью проекта являлась разработка компьютерной сети, призванной обеспечить устойчивое функционирование системы управления страной в условиях ядерной войны.
В модели ARPAnet предполагалось, что любая часть сети может исчезнуть в любой момент. Несмотря на это сеть должна продолжать работать (насколько это возможно). Первые документы, описывающие технические требования к системе появились в 1964 году, а в 1969 году первые четыре компьютера были объединены в реально действующую сеть ARPAnet. В 1971 году сеть насчитывала уже 14 компьютеров, а в 1972 году – 37. В 1982 году были опубликованы протоколы Transfer Control Protocol (TCP) и Internet Protocol (IP). С этого момента и появился термин TCP/IP.
Непосредственно сама сеть Internet появилась как результат большой компьютерной программы Национального научного Фонда США (National Science Foundation, NSF). Для проведения научных исследований NSF организовал по всей стране несколько центров вычислений и оснастил их суперкомпьютерами, подключив к центрам вычислений американские университеты, и объединив все компьютеры в единую глобальную сеть.
Лекция №12.
Базы данных.
1. Иерархические, сетевые и реляционные модели данных.
Базы данных (БД) – это данные, организованные в виде набора записей определенной структуры и хранящиеся в файлах, где, помимо самих данных, содержится описание их структуры.
Система управления базами данных (СУБД) – система, обеспечивающая ввод данных в БД, их хранение и восстановление в случае сбоев, манипулирование данными, поиск и вывод данных по запросу пользователя.
По моделям представления, базы данных делятся на:
- иерархические;
- сетевые;
- реляционные;
- объектно-реляционные.
Иерархические базы данных – это самая первая модель представления данных, в которой все записи базы данных представлены в виде дерева, с соотношением предок-потомок (рис. 30).
Фактически данные отношения реализуются в виде указателей на предков и потомков, содержащихся в самой записи. Такая модель представления данных связана с тем, что на ранних этапах, базы данных часто использовались для планирования производственного процесса: каждое выпускаемое изделие состоит из узлов, каждый узел из деталей и т.д.
Для того, чтобы знать сколько деталей каждого вида надо заказать, строилось дерево. Поскольку список составных частей изделия представлял собой дерево, то для его хранения в базе данных наилучшим образом подходила иерархическая модель организации данных.
Рис. 30. Иерархическая база данных.
Однако иерархическая модель не является оптимальной. Допустим, что один и тот же тип болтов используется в автомобиле 300 раз в различных узлах. При использовании иерархической модели, данный тип болтов будет фигурировать в базе данных 1 раз, а 300 раз (в каждом узле - отдельно). В данном случае, будет прослеживаться дублирование информации. Чтобы устранить этот недостаток была введена сетевая модель представления данных.
Сетевая база данных – это база данных, в которой одна запись может участвовать в нескольких отношениях предок-потомок (рис. 31). Т.е. фактически, база данных представляет собой не дерево, а граф.
Рис. 31. Сетевая база данных.
Физически данная модель также реализуется за счет хранящихся внутри самой записи указателей на другие записи, только, в отличие от иерархической модели, число этих указателей может быть произвольным.
И иерархическая и сетевая модели достаточно просты, однако они имеют общий недостаток: для того, чтобы получить ответ даже на простой вопрос, программист должен был написать программу, которая просматривала базу данных, двигаясь по указателям от одной записи к другой. Написание программы занимало некоторое время, и часто к тому моменту, когда такая программа была написана, необходимость в получении данных уже не требовалась. Поэтому в середине 80-х годов 20 века произошел практически повсеместный переход к реляционным базам данных.
В реляционной базе данных вся информации представляется в виде таблиц, и любые операции над данными – это операции над таблицами. Таблицы строят из строк и столбцов. Строки – это записи, а столбцы представляют собой структуру записи (каждый столбец имеет определенный тип данных и длину данных). Строки в таблице не упорядочены – не существует первой или десятой строки. Однако поскольку на строки необходимо как-то ссылаться, то вводится понятие «первичный ключ».
Первичный ключ – это столбец, значение которого во всех строках разные. Используя первичный ключ, можно однозначно ссылаться на любую строку таблицы. Первичный ключ может состоять и из нескольких столбцов (составной первичный ключ).
Некоторые СУБД требуют в явном виде указать первичный ключ таблицы, а некоторые позволяют пользователю не задавать для таблицы первичный ключ – в таком случае СУБД сама добавляет в таблицу столбец – первичный ключ, не отображаемый на экране (так, например, в СУБД Oracle у любой таблицы существует псевдо-столбец ROWID, формируемый Oracle, который содержит уникальный адрес каждой строки). Отношения предок-потомок в реляционных БД реализуются при помощи внешних ключей.
Внешний ключ – это столбец таблицы, значения которого совпадают со значениями первичного ключа некоторой другой таблицы.
Так, например, на рис. 32 столбец «Ответственный» таблицы «Мероприятия» является внешним ключом для таблицы «Сотрудники» (первичный ключ – столбец «Фамилия»).
Рис. 32. Отношения предок-потомок в реляционных базах данных.
Важным моментом является также использование значения NULL в таблицах реляционной базе данных. NULL – это отсутствующее значение, отсутствие информации по данной позиции. Не допускается использование 0 или пробела вместо NULL: понятно, что «нулевой» объем продаж – это не тоже самое, что «неизвестный» объем продаж. По этой же причине, ни одно значение NULL не равно другому значению NULL. В реляционной базе данных, при запросах, группировке, сравнениях, и т.д., значения NULL обрабатываются особым образом.
Объектно-реляционные базы данных появились в последнее время у значительного числа производителей СУБД (Oracle, Informix, PostgreSQL) и сочетают в себе реляционную модель данных с концепциями объектно-ориентированного программирования (полиморфизм, инкапсуляция, наследование).