Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

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




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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Стремительное совершенствование технологии производства персональных ЭВМ привело к тому, что использование для обработки данных больших ЭВМ часто становится нецелесообразным; если сравнивать их с компьютерными системами по критерию типа цена/производительность.

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

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

Клиента определим как процесс, посылающий серверу запрос на обслуживание. В данном контексте мы абстрагируемся от технических средств, на которых реализован процесс клиента. Главной особенностью, отличающей клиента от сервера, является то, что клиент может начать процесс взаимодействия — транзакцию — с сервером, а сервер никогда не начинает транзакцию связи с клиентом. Функциями клиента являются инициирование установления связи, запрос конкретного вида обслуживания, получение от сервера результатов и подтверждение окончания обслуживания. Хотя клиент может запросить синхронное или асинхронное уведомление об окончании обслуживания, он сам не управляет синхронизацией обслуживания и связи.

Основным назначением архитектуры «клиент — сервер» является обеспечение прикладным программам клиента доступа к данным, которыми управляет сервер. Архитектура «клиент — сервер» позволяет нескольким клиентам совместно эффективно использовать один сервер.

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

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

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

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...