- •2. Понятие экономической информации
- •3. Экономические информационные системы
- •4. Внемашинная организация экономической информации
- •5. Внутримашинная организация экономической информации
- •6. Понятие базы данных. Системы управления базами данных и их функции.
- •8. Иерархическая модель данных
- •7. Трехуровневая модель организации баз данных
- •Внешняя
- •Внешняя
- •Внешняя
- •9. Сетевая модель
- •10. Реляционная модель
- •10. Ключи и связи. Ссылочная целостность.
- •Основное правило реляционной (ссылочной) целостности гласит: Первичный ключ любой таблицы должен содержать уникальные (не повторяющиеся) непустые значения для данной таблицы.
- •11. Операции реляционной алгебры над отношениями.
- •12 . Постреляционная модель
- •12. Объектно-ориентированная и объектно-реляционная модели
- •13. Многомерная модель
- •14. Требования, предъявляемые к базе данных. Этапы жизненного цикла базы данных
- •15. Модель «сущность–связь»
- •15.2 Преобразование er- модели в реляционную
- •Правило 1
- •Правило 2
- •Правило 3
- •Правило 4
- •Связь между указанными таблицами будет иметь вид ф 1 илиал заказ
- •Правило 5
- •Правило 6
- •Ф 1 илиал заказ
- •15.5 Общие сведения о case-средствах.
- •Пример программного окна Erwin показан ниже.
- •16. Нормализация данных в реляционных таблицах
- •17. Этапы проектирования базы данных и их процедуры
- •18. Назначение, стандарты, достоинства языка sql
- •18.1. Структура команды sql. Типы данных. Выражения
- •Действие Предложения Ключевые слова
- •18.2. Функциональные возможности языка sql
- •19. Знания и их виды
- •19.1 Базы знаний. Модели представления знаний
- •19.2 Продукционные модели
- •19.3 Семантические сети
- •19.4 Фреймовые модели
- •9.4 Пример сети фреймов
- •19.5 Формальные логические модели
- •20. Эволюция концепций обработки данных
- •21. Принцип передачи данных по сети
- •22. Удаленная обработка данных
- •23. Архитектура файл/сервер
- •24. Клиент/ серверные системы
- •Представление информации
- •Клиентское приложение 1
- •Клиентское приложение n
- •Клиентское приложение
- •26. Пользователи и администраторы баз данных
- •27. Защита баз данных
- •29. Оптимизация работы базы данных
- •30. Устройства для хранения баз данных
- •31. Индексирование и хеширование
- •32. Сжатие данных
24. Клиент/ серверные системы
В отличие от архитектуры "файл-сервер" по запросу рабочей станции, которая называется теперь «клиент», таблицы полностью по сети не передаются. Клиент непосредственно по сети выбирает из таблицы только те данные, которые соответствуют критериям запроса на выборку (Рис.25).
Сервер
Код клиента
Клиент
Город
Улица
Телефон
АА
БелТур
Минск
Правды 11
2703995
АВ
Сименс
Мюнхен
Лейбница 8
6512345
АС
ПМК –23
Пуховичи
Широкая 1
21134
АD
Атлант
Минск
Захарова 20
2541134
SQL- запросы
Клиент 1
Клиент 2
Клиент N
Рис.25. Обработка данных
в архитектуре клиент/сервер
Такая архитектура называется "клиент/ сервер" (client server system).
Выборка и модификация данных в клиент/ серверных системах осуществляется с помощью непроцедурного языка SQL.
Поскольку в этом случае по сети на клиента и обратно передается не вся таблица, а только необходимые данные из нее, то в сети практически не возникает заторов. При обращении одновременно нескольких клиентов к одним и тем же данным современные клиент/серверные СУБД позволяют разделить их во времени (задержать вторую транзакцию до завершения выполнения первой).
В основе клиент – серверных технологий лежит известная идея распределения обязанностей, разделения труда. Конвейеры Форда сделали в свое время прорыв в автомобильной промышленности, показав наивысшую производительность труда из-за того, что весь процесс сборки был разбит на мелкие и максимально простые операции, и каждый рабочий специализировался на выполнении только одной операции, но эту операцию он выполнял максимально быстро и качественно. В случае клиент серверных технологий клиентское приложение выполняет операции обработки- данных, а сервер хранения, поставки, и модификации данных.
Преимуществом архитектуры «клиент-сервер» является возможность хранения на сервере бизнес-правил (например, правил ссылочной целостности или ограничений на значения данных), что позволяет избежать дублирования кода в различных клиентских приложениях, использующих общую базу данных. Программный код, реализующий указанные бизнес- правила, представляется в виде триггеров и хранимых процедур.
Триггером называется именованный набор команд SQL, хранящийся на сервере, который автоматически выполняется, когда происходит некоторое заданное событие. Например, триггер может выполняться при вставке, изменении или удалении строки в существующей таблице, при наступлении определенного момента времени и т.д.
Хранимой процедурой называется именованный набор команд SQL, который работает точно так же, как и триггер, с той разницей, что он обычно вызывается из программы клиента, а не выполняется автоматически, как реакция на заданное событие.
В настоящее время архитектура клиент/ сервер реализуется в виде либо двухзвенной, либо трехзвенной модели. В зависимости от используемой модели происходит разделение функций обработки данных между сервером и клиентом.
Двухзвенная модель представляет собой вышеописанную классическую структуру, состоящую из компьютера -сервера и компьютера клиента. Двухзвенная модель может быть реализована:
модель удаленного доступа к данным
модель сервера базы данных
модель распределенной функции
В модели удаленного доступа к данным (Remote Data Access -RDA) программы, реализующие функции обработки информации и представления информации совмещены и выполняются на компьютере- клиенте («толстый клиент»). Основное достоинство RDA- модели состоит в большом количестве готовых СУБД (наиболее старая модель) и инструментальных средств, обеспечивающих быстрое создание программ клиентской части.
Недостатками RDA – модели являются, во-первых, довольно высокая загрузка трафика сети, поскольку все данные для обработки направляются на удаленный клиент, во- вторых, модель неудобна для модификации и сопровождения, поскольку все функции обработки и представления тесно взаимосвязаны. При незначительном изменении какой-нибудь функции требуется переделка клиентской части.
Модель сервера базы данных (DataBase Server- DBS) отличается от предыдущей модели тем, что функции компьютера- клиента ограничены функциями представления информации, в то время как функции обработки информации выполняются программами, находящимися на компьютере – сервере «тонкий клиент». Достоинствами модели DBS являются возможность хорошего централизованного администрирования, а также уменьшением трафика сети за счет того, что выполнение программ на компьютере -сервер требует значительно меньших затрат на пересылку данных по сети. К недостаткам модели DBS следует отнести сложность разработки хранимых процедур, так как хранимая процедура сильно зависит от конкретной СУБД, и плохо перемещаются на другие компьютеры- серверы.
В модели распределенной функции обработка данных разделена между компьютером – сервером и компьютером – клиентом. При этом общие функции обработки размещаются на сервере, а специфические функции обработки – на клиенте. Достоинством модели является то, что СУБД с распределенными функциями может использовать информацию с разнородных баз данных. К недостаткам можно отнести повышенную сложность разработки программных средств, учитывающих особенности сервера и клиента.
Модель распределенной базы данных использует мощный компьютер – клиента, при этом данные хранятся как на компьютере- сервере, так и на компьютере- клиенте. Достоинством данной модели является гибкость создаваемой на ее основе информационной системы, позволяющей клиенту обрабатывать локальные и удаленные базы данных. Такая система обладает повышенной живучестью, так как разрыв соединения клиента и сервера не приводит к остановке системы в целом. К недостаткам модели можно отнести большие высокую стоимость как компьютера – клиента, так и компьютера- сервера.
Распределение функций в вышеописанных моделях приведены в таблице.
Модель |
Данные |
Обработка |
Представление |
Удаленный доступ к данным |
Сервер |
Клиент |
Клиент |
Сервер баз данных |
Сервер |
Сервер |
Клиент |
Распределенная функция |
Сервер |
Клиент/ Сервер |
Клиент |
Распределенная база данных |
Сервер/ Клиент |
Клиент |
Клиент |
Трехзвенная модель подразумевает наличие помимо сервера баз данных выделенного сервера приложений (AS-Application Server), содержащего основную часть программ обработки информации. При этом компьютер – клиент осуществляет выборку данных не непосредственно с компьютера- сервера, а через сервер приложений (Рис 26.).
Необходимость создания трехзвенной модели была вызвана попыткой разработчиков, оставаясь в рамках двухзвенной модели, наращивать возможности хранимых процедур в модели «сервер баз данных». Следствием этого стала утеря совместимости между серверами баз данных различных производителей.
Данные
Сервер баз данных
Обработка информации
Сервер приложений
Клиент
