1.1.1 Анализ принциповАРМ на базе ПК.
Автоматизированное рабочее место (АРМ) , или, в зарубежной терминологии,
"рабочая станция" (work-station), представляет собой место
пользователя-специалиста той или инойпрофессии, оборудованное средствами,
необходимыми для автоматизации выполнения им определенных функций. Такими
средствами, как правило , является ПК, дополняемый по мере необходимости
другимивспомогательными электронными устройствами, а именно: дисковыми
накопителями, печатающими устройствами, оптическими читающими устройствами или
считывателями штрихового кода, устройствами графики, средствами сопряжения с
другими АРМ и слокальными вычислительными сетями и т.д.
Hаибольшее распространение в мире получили АРМ на базе профессиональных ПК с
архитектуройIBM PC.
АРМ в основном ориентированы на пользователя, не имеющего специальной
подготовки по использованию вычислительной техники. Основным назначением АРМ
можно считать децентрализованную обработку информации на рабочих местах,
использование соответствующих "своих" баз данных при одновременной
возможности вхождения в локальные сети АРМ и ПК, а иногда и в глобальные
вычислительные сети, включающие мощные ЭВМ.
В настоящее время на очень многих предприятиях реализуется концепция
распределенных системуправления народным хозяйством. В них предусматривается
локальная, достаточно полная и в значительной мерезаконченная обработка
информации на различных уровнях иерархии. В этих системах организуется передача
снизу вверх только той части информации, в которой имеется потребность на
верхних уровнях. При этом значительная часть результатов обработки информации
и исходные данныедолжны храниться в локальных банках данных.
Для реализации идеи распределенного управления потребовалось создание для
каждого уровня управления икаждой предметной области автоматизированных
рабочих мест на базе профессиональных персональных компьютеров. Например, в
сфере экономики на таких АРМ можноосуществлять планирование, моделирование,
оптимизацию процессов, принятие решений в различных информационных системах и
для различных сочетаний задач. Для каждого объекта управления необходимо
предусматриватьАРМ, соответствующие их значению. Однако принципы создания
любых АРМ должны быть общими:
системность.
гибкость.
устойчивость.
эффективность.
Поясним смыл каждого из указанных понятий.
Системность. АРМ следует рассматривать как системы, структура которых
определяется функциональным назначением.
Гибкость. система приспособлена к возможным перестройкам, благодаря модульности
построения всех подсистем и стандартизации их элементов.
Устойчивость. Принцип заключается в том, что система АРМ должна выполнять
основныефункции независимо от воздействия на нее внутренних и внешних
возмущающих факторов. Это значит, что неполадки вотдельных ее частях должны
быть легко устраняемы, а работоспособность системы быстро восстанавливаема.
Эффективность АРМ следует рассматривать как интегральный показатель уровня
реализацииприведенных выше принципов, отнесенного к затратам на создание и
эксплуатацию системы.
Функционирование АРМ может дать желаемый эффект при условии правильного
распределения функций и нагрузки между человеком и машинными средствами
обработки информации, ядром которой является компьютер.
Создание такого "гибридного" интеллекта в настоящее время является проблемой.
Однако реализация этого подхода при разработке и функционировании АРМ может
принести ощутимые результаты - АРМ станет средством повышения не только
производительности труда и эффективности управления, но и социальной
комфортности специалистов. При этом человек в системе АРМ должен оставаться
ведущим звеном.
Hа производственных предприятиях АРМ являются важной структурной
составляющейАСУ как персональное средство планирования, управления, обработки
данных и принятия решений. АРМ - это всегда специализированния система,
набор технических средств и программного обеспечения, ориентированного на
конкретного специалиста - администратора, экономиста, инженера,
конструктора, проектанта, архитектора,дизайнера, врача, организатора,
исследователя, библиотекаря, музейного работника и множество других.
В то же время к АРМ любой "профессии" можно предъявить и ряд общих требований,
которые должны обеспечиваться при его создании, а именно:
непосредственное наличие средств обработки информации;
возможность работы в диалоговом (интерактивном) режиме;
выполнение основных требований эргономики: рациональное распределение функций
между оператором, элементами комплекса АРМ и окружающей средой, создание
комфортных условий работы, удобство конструкций АРМ, учет психологических
факторов человека-оператора, привлекательность форм и цвета элементов АРМ и
др.;
достаточно высокая производительность и надежность ПК, работающего в системе
АРМ;
адекватное характеру решаемых задач программное обеспечение;
максимальная степень автоматизации рутинных процессов;
оптимальные условия для самообслуживания специалистов как операторов АРМ;
другие факторы, обеспечивающие максимальную комфортность и удовлетворенность
специалиста использованием АРМ как рабочего инструмента.
Структура АРМ включает совокупность подсистем - технической, информационной,
программной иорганизационной.
О технической подсистеме уже было сказано выше. К указанному ранее набору
техническихсредств, непосредственно образующему АРМ, надо еще добавить
средства связи с другими АРМ,работающими в общей сети объекта, а также другие
средства связи (телефон, телекс, телефакс).
К информационной подсистеме относятся массивы информации, хранящейся в
локальных базах данных, как правило, на дисковых накопителях. Сюда же
относится и системы управления базами данных.
Программное обеспечение включает операционные системы, сервисные программы,
стандартные программы пользователей и пакетыприкладных программ, выполненные по
модульному принципу и ориентированные на решение определенного класса задач,
обусловленного назначением АРМ. По мере необходимости в программное
обеспечение включаются также пакеты программ для работы с графической
информацией.
Организационное обеспечение АРМ имеет своей целью организацию их
функционирования, развития, подготовкикадров, а также администрирования. К
последнему относятся: планирование работы, учет, контроль, анализ,
регулирование, документальноеоформление прав и обязанностей пользователей АРМ.
Если устройство АРМ достаточно сложно, а пользователь не имеет специальных
навыков, возможно применение специальных обучающих средств, которые позволяют
постепенно ввестипользователя в среду его основного автоматизированного
рабочего места. При реализации функций АРМ(т.е. собственно его функционировании)
необходимы методики определения цели текущей деятельности , информационной
потребности, всевозможныхсценариев для описания процессов ее реализации.
Методика проектирования АРМ не может не быть связанной с методикой его
функционирования,так как функционирование развитого АРМ предусматривает
возможность его развития самимипользователями. Языковые средства АРМ
являются реализацией методических средств с точки зрения конечного
пользователя, а программные реализуют языковые средства пользователя и дают
возможность конечному пользователю выполнять все необходимые действия.
1.1.2Языковые средства АРМ
Языковые средства АРМ необходимы прежде всего для однозначного смыслового
соответствия действий пользователя и реакции ПЭВМ. Без них невозможен процесс
обучения, организация диалога, обнаружение и исправление ошибок. Сложность
разработки таких языков заключаетсяв том, что они должны быть преимущественно
непроцедурными. Если процедурный язык указывает, каквыполняется задаваемое
действие, то непроцедурный - что необходимо выполнить без детализации, какие
действия для этого требуются. Так как конечные пользователи не знают и недолжны
знать в деталях процесс реализации информационной потребности, чем выше
интеллектуальность АРМ, тем большенепроцедурных возможностей должно быть
предусмотрено в его языках.
Языки АРМ должны быть и пользовательски-ориентированными, в том числе и
профессионально-ориентированными. Этосвязано с различиями в классификации
пользователей, которые разделяются не только по профессиональной
принадлежности, но и по иерархии служебного положения, мере обученности, виду
потребляемых данных и др. Следуетучесть, что использование естественного языка,
несмотря на кажущуюся простоту такого подхода, не может дать сколько-нибудь
ощутимых преимуществ из-за необходимости введения через клавиатуру громоздких
конструкций ради получения иногда несложных результатов.
Как и во всяком языке, основу языков АРМ должны составлять заранее
определяемые термины, а также описания способов с помощью которых могут
устанавливаться новые термины, заменяя или дополняя существующие. Это приводит к
необходимости припроектировании АРМ определенным образом классифицировать
терминологическую основу АРМ , т.е. определить все основные синтаксические
конструкции языка и семантические отношения между терминами и их совокупностями.
В связи с этим может возникнуть необходимость в простейшей классификации АРМ,
например, по возможностям представления данных в некоторых пользовательских
режимах обработки: числовые, текстовые, смешанные. В более сложных случаях
классификация АРМ может определяться уже организацией баз данных. Возможности
языка во многом определяют и список правил, по которым пользовательможет
строить формальные конструкции, соответствующие реализации информационной
потребности. Hапример, в некоторых АРМ все данные и конструкции фиксируются
в табличной форме (табличные АРМ) или в виде операторов специального
вида(функциональные АРМ).
Языки пользователя разделяют АРМ также по видам диалога. Средства поддержки
диалога вконечном счете определяют языковые конструкции, знание которых
необходимо пользователю.
Конструкцией одного и того же АРМ может быть предусмотрено не один, а
нескольковозможных типов диалога в зависимости от роста активности
пользователя в процессе обучения или работы, а также необходимости развития АРМ
средствами пользователя. Из существующих диалогов при разработке АРМ
наиболее употребимы: диалог, инициируемый пЭВМ, диалог заполнения форм,
гибридный диалог, диалог необученного пользователя и диалог с помощью
фиксированных кадровинформации. При диалоге, инициируемом пЭВМ, пользователь АРМ
освобождается практически полностью от изучения мнемоники и конструкций
языка. Одной из модификаций этого метода является метод меню, при котором
выбирается один или несколько из предложенных пЭВМ вариантов.
При диалоге заполнения форм, который также инициируется пЭВМ, пользователь
заполняет специально подобранные формы на дисплее сих последующим анализом и
обработкой.
Гибридный диалог может быть инициированы и пользователем, и ПЭВМ.
При диалоге необученного пользователя должна быть обеспечена полная ясность
ответов пЭВМ, которые не могут оставлять у пользователя сомнений
относительнотого, что ему нужно делать.
В случае диалога с помощью фиксированных кадров информации пЭВМ выбирает ответ
из спискаимеющихся. В этом случае пользователь вводит только очень короткие
ответы, а основная информация выдается автоматически.
Тип диалога также может определять классификацию АРМ, например АРМ с
диалоговыми средствами необученного пользователя. Классификация АРМ по
такомупризнаку связана с классификаццией по профессиональной ориентации
пользователя. Hапример, АРМ с диалогом по методу меню вряд ли целесообразно
дляпользователя-экономиста, относящегося в то же время к персоналу руководителя,
вследствие большого числа повторяющихся операций.
Если рассматривать автоматизированниые рабочие места с точки зрения
программныхсредств, их реализующих, то классификация АРМ может быть весьма
обширна. Они могут быть классифицированы по языку программирования,
возможности предоставления пользователю процедурных средств программирования,
возможностидостраивания программной системы в процессе эксплуатации, наличию
систем управления базами данных, транслятораили интерпретатора с языков
пользователей, средств обнаружения и исправления ошибок и т.д. Пакеты
прикладныхпрограмм (ППП), применяемые в АРМ, могут быть параметризованы для
обеспечения привязки системы кконкретному приложению. Могут использоваться
генераторы самих ППП.
В состав АРМ обязательно входят различные программные компоненты,
обеспечивающие основные расчетные функции иорганизацию диалога, а также
система управления базой данных, трансляторы, справочные системы,
собственно база данных,содержащая, например, основные данные, сценарии диалога,
инструкции, управляющие параметры, перечни ошибок и др. Основные компоненты АРМ
определяютего состав и обеспечивать возможность классификации АРМ по различным
признакам.
В зависимости от применения в рамках АРМ средств, обеспечивающих развитие
АРМ конечным пользователем, будем разделять АРМ на два больших класса :
обслуживащюиеи интеллектуальные. И те и другие могут предназначаться для
различных пользователей. Hо в то же времясуществуют такие пользователи, о
которых можно сказать заранее, что он не может быть пользователемтого или
другого АРМ. Hапример, обслуживающий персонал (делопроизводители, секретари) в
силу спецификивыполняемых ими функций не нуждаются в интеллектуальных АРМ
(в своей непосредственной деятельности).
Обслуживающие АРМ в сферах организационного управления могут быть :
информационно-справочными.
вычислительными.
текстообрабатывающими.
Интеллектуальные АРМ можно прежде всего разделить на ориентированные на данные
и ориентированные на занания (даталогическиеи
фактологические).Информационно-справочные АРМ обслуживают какой-либо процесс
управления. Вычислительные АРМразнообразны по своему содержанию и могут
применяться многочисленными категориями пользователей. С их помощью могут
ставиться и решаться организационно-экономические задачи, связанные и не
связанные друг сдругом, поиск и обработка данных в которых заранее определена
или определяется в процессе функционирования АРМ. Текстообразующие
АРМпредназначены для обработки и генерации текстовой информации различной
структуры и предположении, что текст семантически не анализируется.
Интеллектуальные АРМ даталогического типа основаны на широком использовании баз
данных и языков пользователей. При этом пользователь способен самостоятельно
модифицировать базы данных и языки, варьировать диалоговыми возможностями. В
этих АРМ отсутствует база знаний, т.е.невозможно накопление правил,
обеспечивающих объяснение того или иного свойства управляемого объекта. База
знаний как составной компонент входит в АРМфактологического типа.
Фактологические АРМ полезны там, где работа в условиях АРМ
определяетсяпреимущественно накапливаемым опытом и логическим выводом на его
основе.
Выделим несколько основных функций, которые должны быть реализованы в рамках
автоматизации организационного управления:
интерпретация (анализ и описание данных и фактов из предметной области для
установления их взаимосвязей и систем);
диагностика (поиск, определение и описание состояния управляемого объекта);
мониторинг (непрерывное отслеживание функционирования АРМ и фиксирование
получаемых результатов);
планирование (обеспечение заданной последовательности действий);
проектирование (обеспечение пользовательских интерфейсов и развития).
1.1.3Классификация АРМ-ов.
АРМ могут быть индивидуальными, групповыми, коллективными.
Применительно кгрупповым и коллективным АРМ в целях эффективного
функционирования системы ЭВМ - специалистам (коллективу) необходимо
ужесточить требования к организации работы АРМ и чётко определить функции
администрирования в такой системе. Система АРМ, являющаяся «человеком –
машиной», должна быть открытой, гибкой, приспособленной кпостоянному развитию и
совершенствованию. В такой системе должны быть обеспечены:
максимальная приближённость специалистов к машинным средствам обработки
информации;
работа в диалоговом режиме;
оснащение АРМ в соответствии с требованиями эргономики;
высокая производительность компьютера;
максимальная автоматизация рутинных процессов;
моральная удовлетворенность специалистов условиями труда,стимулирующая их
творческую активность, в частности, в дальнейшем развитии системы;
возможность самообучения специалистов.
Задачи, решаемые на АРМ, условно можно разделить на информационные и
вычислительные.
К информационным задачам относятся кодирование, классификация, сбор,
структурнаяорганизация, корректировка, хранение, поиск и выдача информации.
Часто информационные задачи включаютнесложные вычислительные и логические
процедуры арифметического и текстового характера и отношения (связи).
Информационные задачи являются, как правило, наиболее трудоемкими и занимают
большую часть рабочего времени специалистов.
Вычислительные задачи являются как формализуемыми , так и не полностью
формализуемыми.Формализуемые задачи решаются на базе формальных алгоритмов и
делятся на две группы: задачи прямого счета и задачи на основе
математическихмоделей. Задачи прямого счета решаются с помощью простейших
алгоритмов. Для более сложных задач требуется применятьразличные математические
модели.
В последнее время большое внимание выделяется разработке средств решения
не полностьюформализуемых задач, называемых сематическими. Такие задачи
возникают очень часто в ходе оперативного управления экономическими объектами,
особенно при принятии решений в условиях неполной информации. Структура АРМ -
это совокупность его подсистем и элементов. К обеспечивающим системам в первую
очередь следует отнести: техническое, информационное, программное и
организационное. Кроме того, существует целый ряд подсистем.
Техническое обеспечение представляет собой комплекс технических средств,
основой которого служит профессиональный персональный компьютер,
предусматривающий работу специалиста без посредников (программистов,
операторов идр.). У групповых АРМ таким компьютером могут пользоваться 4 - 6
человек. В комплект профессионального персональногокомпьютера входят процессор,
дисплей, клавиатура, магнитные накопители информации, печатающие устройства и
графопостроители.
К комплексу технических средств следует отнести и средства коммуникаций для
связи различныхАРМ в сетях, а также средства телефонной связи.
Информационное обеспечение - это массивы информации, хранящиеся в локальных
базах данных. Информация организуется и хранится, восновном, на магнитных
дисках. Управление ею осуществляется с помощью программной системы управления
базамиданных, которая производит запись информации, поиск, считывание,
корректировку и решение информационных задач. В АРМ может быть несколько баз
данных.
Организационное обеспечение включает средства и методы организации
функционирования, совершенствования и развития АРМ, а также подготовки и
повышения квалификации кадров.
Для групповых и коллективных АРМ в подсистему организационного обеспечения
включаются функции администри-рования АРМ:проектирование, планирование, учет,
контроль, анализ, регулирование, организационные связи с инфрасистемами и др.
Организационное обеспечение предусматривает определе-ние и документальное
оформление прав иобязанностей пользователей АРМ.
Программное обеспечение состоит из системного программного обеспечения и
прикладного. Основой систем-ного обеспечения являетсяоперационная система и
системы программирования, например, алгоритмический язык БЕЙСИК. Системные
программы обеспечивают рациональную технологиюобработки информации. Так
называемые сервисные программы, которыми АРМ комплектуется в зависимости от
потребности в них, расширяют возможности операционной системы. Для обеспечения
информационной связи в сетях АРМ и связи АРМ по различнымканалам также
применяются программные средства, которые можно отнести к системному
программированию.
Прикладное программное обеспечение составляют программы пользователей и пакеты
прикладныхпрограмм разного назначения. Стандартные программы пользователей
представляют собой программные решения определённых задач на алгоритмическом
языке, чащевсего Бейсик.
ППП выполнены по модульному принципу и ориентированны на решение определенного
класса задач. ППП являются основным видомпроблемного программного обеспечения.
Они позволяют формировать алгоритмы, изменять условия решения задачданного
класса, контролировать ход решений, вносить коррективы в алгоритмы и др. При
работе на АРМ ППП реализуются в диалоговом режиме.
Примерами ППП являются: ППП для формирования различных документов с выполнением
расчётныхопераций, ППП для задач оптимизаций планов, ППП балансовых задач.
Особое место уделяется ППП для создания автоматизированных информационных
систем, которые могут иметь различное назначение: справочные, для обработки
таблиц, ведения массивов информации,создания и ведения баз данных,
документальные. Пакеты для работы с графической информацией позволяют
представить в наглядном и компактном виде состояние и процессы, свойственные
объектам, проиллюстрировать результаты прогнозного анализа.
1.2Теория современных систем управления базами даных
1.2.1Концепция баз данных
Активная деятельность по отысканию приемлемых способов обобществления
непрерывнорастущего объема информации привела к созданию в начале 60-х годов
специальных программных комплексов, называемых "Системы управления базами
данных"(СУБД). Этому предшествовал первый опыт использования файловых систем для
организации баз данных. Файловые системы выявили различные проблемы
обработкибольшого количества информации и заложили основные направления развития
теории баз данных. Вот список лишь нескольких потребностей, которые не
покрывалисьвозможностями систем управления файлами:поддержание логически согласованного набора файлов
обеспечение языка манипулирования данными
восстановление информации после разного рода сбоев
реально параллельная работа нескольких пользователей.
Можно считать, что если прикладная информационная система опирается на некоторую
системууправления данными, обладающую этими свойствами, то эта система
управления данными является системой управления базами данных (СУБД).
Основнаяособенность СУБД – это наличие процедур для ввода и хранения не только
самих данных, но и описаний их структуры. Файлы, снабженные описанием хранимых в
нихданных и находящиеся под управлением СУБД, стали называть банки данных, а
затем "Базы данных" (БД). Приведем типовую схемы организации работыс СУБД.
ций СУБД.
При выполнении основных из этих функций СУБД должна использовать различные
описания данных. Отметим,что проектирование этих описании обычно поручается
человеку (группе лиц) – администраторубазы данных (АБД).
Объединяя частные представления о содержимом базы данных, полученные в
результате опросапользователей, и свои представления о данных, которые могут
потребоваться в будущих приложениях, АБД сначала создает обобщенное неформальное
описаниесоздаваемой базы данных. Это описание, выполненное с использованием
естественного языка, математических формул, таблиц, графиков и других
средств,понятных всем людям, работающих над проектированием базы
данных, называют инфологической моделью данных (рис. 1.2).
Рис. 1.2 Уровни моделей данных
Такая человеко-ориентированная модель полностью независима от физических
параметровсреды хранения данных. В конце концов этой средой может быть память
человека, а не ЭВМ. Поэтому инфологическая модель не должна изменяться до тех
пор, покакакие-то изменения в реальном мире не потребуют изменения в ней
некоторого определения, чтобы эта модель продолжала отражать предметную область.
Остальные модели, показанные на рис. 1.2, являются компьютеро-ориентированными.
С ихпомощью СУБД дает возможность программам и пользователям осуществлять доступ
к хранимым данным лишь по их именам, не заботясь о физическом расположении
этихданных. Нужные данные отыскиваются СУБД на внешних запоминающих устройствах
по физическоймодели данных.
Так как указанный доступ осуществляется с помощью конкретной СУБД, то модели
должныбыть описаны на языке описания данных этой СУБД. Такое описание,
создаваемое АБД по инфологической модели данных, называют даталогическоймоделью
данных.
Трехуровневая архитектура (инфологический, даталогический и физический уровни)
позволяетобеспечить независимость хранимых данных от использующих их программ.
АБД может при необходимости переписать хранимые данные на другие
носителиинформации и (или) реорганизовать их физическую структуру, изменив лишь
физическую модель данных. АБД может подключить к системе любое число
новыхпользователей (новых приложений), дополнив, если надо, даталогическую
модель. Указанные изменения физической и даталогической моделей не будут
замеченысуществующими пользователями системы (окажутся "прозрачными" для них),
так же как не будут замечены и новые пользователи. Следовательно,независимость
данных обеспечивает возможность развития системы баз данных без разрушения
существующих приложений.
1.2.3Инфологическая модель данных "Сущность-связь"
Цель инфологического моделирования – обеспечение наиболее естественных для
человекаспособов сбора и представления той информации, которую предполагается
хранить в создаваемой базе данных. Поэтому инфологическую модель данных пытаются
строитьпо аналогии с естественным языком (последний не может быть использован в
чистом виде из-за сложности компьютерной обработки текстов и неоднозначности
любогоестественного языка). Основными конструктивными элементами инфологических
моделей являются сущности, связи между ними и их свойства (атрибуты).
Сущность – любой различимый объект (объект, который мы можем отличить от
другого), информацию о котором необходимо хранитьв базе данных. Сущностями могут
быть люди, места, самолеты, рейсы, вкус, цвет и т.д. Необходимо различать такие
понятия, как тип сущности и экземплярсущности. Понятие тип сущности относится к
набору однородных личностей, предметов, событий или идей, выступающих как целое.
Экземпляр сущностиотносится к конкретной вещи в наборе. Например, типом сущности
может быть ГОРОД, а экземпляром – Москва.
Атрибут – поименованная характеристика сущности. Его наименование должно быть
уникальным для конкретного типа сущности, но можетбыть одинаковым для различного
типа сущностей (например, ЦВЕТ может быть определен для многих сущностей:
СОБАКА, АВТОМОБИЛЬ, ДЫМ и т.д.). Атрибутыиспользуются для определения того,
какая информация должна быть собрана о сущности.
Абсолютное различие между типами сущностей и атрибутами отсутствует. Атрибут
являетсятаковым только в связи с типом сущности. В другом контексте атрибут
может выступать как самостоятельная сущность. Например, для автомобильного
заводацвет – это только атрибут продукта производства, а для лакокрасочной
фабрики цвет – тип сущности.
Ключ – минимальный набор атрибутов, по значениям которых можно однозначно найти
требуемый экземпляр сущности.Минимальность означает, что исключение из набора
любого атрибута не позволяет идентифицировать сущность по оставшимся.
Связь – ассоциирование двух или более сущностей. Если бы назначением базы данных
было только хранение отдельных, несвязанных между собой данных, то ее структура
могла бы быть очень простой. Однако одно из основных требований к организации
базы данных – это обеспечениевозможности отыскания одних сущностей по значениям
других, для чего необходимо установить между ними определенные связи. А так как
в реальных базах данныхнередко содержатся сотни или даже тысячисущностей, то
теоретически между ними может быть установлено более миллиона связей. Наличие
такого множества связей иопределяет сложность инфологических моделей.
1.2.4Реляционная структура данных
В конце 60-х годов появились работы, в которых обсуждались возможности
применения различныхтабличных даталогических моделей данных, т.е. возможности
использования привычных и естественных способов представления данных. Наиболее
значительнойиз них была статья сотрудника фирмы IBM д-ра Э.Кодда (Codd E.F., A
Relational Model of Data for Large Shared Data Banks. CACM 13: 6, June 1970),
где,вероятно, впервые был применен термин "реляционная модель данных".
Будучи математиком по образованию Э.Кодд предложил использовать для обработки
данныхаппарат теории множеств (объединение, пересечение, разность, декартово
произведение). Он показал, что любое представление данных сводится ксовокупности
двумерных таблиц особого вида, известного в математике как отношение – relation
Наименьшая единица данных реляционной модели – это отдельное
атомарное(неразложимое) для данной модели значение данных. Так, в одной
предметной области фамилия, имя и отчество могут рассматриваться как единое
значение, а вдругой – как три различных значения.
Доменом называется множество атомарных значений одного и того же типа. Смысл
доменов состоит в следующем. Если значения двухатрибутов берутся из одного и
того же домена, то, вероятно, имеют смысл сравнения, использующие эти два
атрибута (например, для организации транзитногорейса можно дать запрос "Выдать
рейсы, в которых время вылета из Москвы в Сочи больше времени прибытия из
Архангельска в Москву"). Если же значениядвух атрибутов берутся из различных
доменов, то их сравнение, вероятно, лишено смысла: стоит ли сравнивать номер
рейса со стоимостью билета?
Заголовок состоит из такого фиксированного множества атрибутов A1, A2, ..., An,
что существует взаимно однозначноесоответствие между этими атрибутами Ai и
определяющими их доменами Di (i=1,2,...,n).
Тело состоит из меняющегося во времени множества кортежей, где каждый кортеж
состоит в свою очередь измножества пар атрибут-значение (Ai:Vi), (i=1,2,...,n),
по одной такой паре для каждого атрибута Ai в заголовке. Для любой заданной пары
атрибут-значение(Ai:Vi) Vi является значением из единственного домена Di,
который связан с атрибутом Ai.
Степень отношения – это число его атрибутов. Отношение степени один называют
унарным, степени два – бинарным,степени три – тернарным, ..., а степени n –
n-арным.
Кардинальное число или мощность отношения – это число его кортежей. Кардинальное
число отношения изменяетсяво времени в отличие от его степени.
Поскольку отношение – это множество, а множества по определению не содержат
совпадающихэлементов, то никакие два кортежа отношения не могут быть дубликатами
друг друга в любой произвольно-заданный момент времени. Пусть R – отношение
сатрибутами A1, A2, ..., An. Говорят, что множество атрибутов K=(Ai, Aj, ...,
Ak) отношения R является возможным ключом R тогда и только тогда,
когдаудовлетворяются два независимых от времени условия:
Уникальность: в произвольный заданный момент времени никакие два различных
кортежа R не имеют одного и того же значения для Ai, Aj,..., Ak.
Минимальность: ни один из атрибутов Ai, Aj, ..., Ak не может быть исключен из K
без нарушения уникальности.
Каждое отношение обладает хотя бы одним возможным ключом, поскольку по меньшей
мерекомбинация всех его атрибутов удовлетворяет условию уникальности. Один из
возможных ключей (выбранный произвольным образом) принимается за его
первичныйключ. Остальные возможные ключи, если они есть, называются
альтернативными ключами.
Вышеупомянутые и некоторые другие математические понятия явились теоретической
базой длясоздания реляционных СУБД, разработки соответствующих языковых средств
и программных систем, обеспечивающих их высокую производительность, и
созданияоснов теории проектирования баз данных. Однако для массового
пользователя реляционных СУБД можно с успехом использовать неформальные
эквиваленты этихпонятий:
Отношение–Таблица(иногдаФайл),Кортеж – Строка (иногда Запись), Атрибут –
Столбец, Поле. При этом принимается, что"запись" означает "экземпляр записи", а
"поле" означает "имя и тип поля".
Реляционная база данных – это совокупность отношений, содержащих всю информацию,
которая должна храниться вБД. Однако пользователи могут воспринимать такую базу
данных как совокупность таблиц
1.2.5О нормализации, функциональных и многозначных зависимостях
Нормализация – это разбиение таблицы на две или более, обладающих лучшими
свойствами при включении, изменении и удаленииданных. Окончательная цель
нормализации сводится к получению такого проекта базы данных, в котором каждый
факт появляется лишь в одном месте, т.е.исключена избыточность информации. Это
делается не столько с целью экономии памяти, сколько для исключения возможной
противоречивости хранимых данных.
Как указывалось ранее, каждая таблица в реляционной БД удовлетворяет условию,
всоответствии с которым в позиции на пересечении каждой строки и столбца таблицы
всегда находится единственное атомарное значение, и никогда не может
бытьмножества таких значений. Любая таблица, удовлетворяющая этому условию,
называется нормализованной. Фактически, ненормализованные таблицы, т.е.таблицы,
содержащие повторяющиеся группы, даже не допускаются в реляционной БД.
Всякая нормализованная таблица автоматически считается таблицей в первой
нормальнойформе, сокращенно 1НФ. Таким образом, строго говоря, "нормализованная"
и "находящаяся в 1НФ" означают одно и тоже. Однако на практике термин
"нормализованная" часто используется в более узком смысле – "полностью
нормализованная", который означает,что в проекте не нарушаются никакие принципы
нормализации. Дадим точные определения наиболее распространенных форм
нормализации.
Таблица находится в первой нормальной форме (1НФ) тогда и только тогда,когда ни
одна из ее строк не содержит в любом своем поле более одного значения и ни одно
из ее ключевых полей не пусто
Таблица находится во второй нормальной форме (2НФ), если она удовлетворяет
определению 1НФ и все ее поля, не входящие в первичный ключ,связаны полной
функциональной зависимостью с первичным ключом.
Таблица находится в третьей нормальной форме (3НФ), если она удовлетворяет
определению 2НФ и не одно из ее неключевых полей не зависитфункционально от
любого другого неключевого поля.
Таким образом, каждая нормальная форма является в некотором смысле более
ограниченной, но иболее желательной, чем предшествующая. Это связано с тем, что
"(N+1)-я нормальная форма" не обладает некоторыми
непривлекательнымиособенностями, свойственным "N-й нормальной форме". Общий
смысл дополнительного условия, налагаемого на (N+1)-ю нормальную форму по
отношению кN-й нормальной форме, состоит в исключении этих непривлекательных
особенностей.
Теория нормализации основывается на наличии той или иной зависимости между
полямитаблицы. Определены два вида таких зависимостей: функциональные и
многозначные.
Функциональная зависимость. Поле В таблицы функционально зависит от поля А той
же таблицы в том и только в томслучае, когда в любой заданный момент времени для
каждого из различных значений поля А обязательно существует только одно из
различных значений поля В.Отметим, что здесь допускается, что поля А и В могут
быть составными.
Полная функциональная зависимость. Поле В находится в полной функциональной
зависимости от составного поля А, еслионо функционально зависит от А и не
зависит функционально от любого подмножества поля А.
Многозначная зависимость. Поле А многозначно определяет поле В той же таблицы,
если для каждого значения поля Асуществует хорошо определенное множество
соответствующих значений В.
1.3Технология Клиент-Сервер.
1.3.1Основные понятия
Главная мысль, заложенная в эту технологию - минимизировать объем данных,
передаваемых посети, поскольку основные потери времени и сбои происходят именно
из-за недостаточно высокой пропускной способности сети.
Очень многие СУБД разделяют свою работу на два уровня по системе
"Клиент-Сервер".С точки зрения исполнения программа разделена на 2 части -
клиентскую и серверную. На клиентской части (компьютере) происходит контакт с
внешним миром.На компьютере-сервере расположены общие для всех клиентов данные и
работает специальная программа - сервер баз данных, оптимизирующая выполнение
запросовклиентов.
Итак, двухуровневая система "Клиент-Сервер" это:
Клиент - Программа обработки, она же пользовательская, она же прикладная
программа. Занимается обычно интерфейсом спользователем, а всю фактическую
работу с базой данных возлагает на плечи БД-сервера.
Сервер Базы Данных - базис (database engine), он же ядро базы данных. Отдельная
программа, выполняемая как отдельныйпроцесс. Передает выбранную из базы
информацию по межпроцессному каналу клиенту. Именно он, и только он фактически
работает с данными, занимается ихразмещением на диске.
1.3.2Преимущества архитектуры клиент-сервер
В первый момент может возникнуть вопрос, а зачем такие сложности? Вот
несколькосоображений в пользу такого подхода.
Несомненным преимуществом является приближенность данных к процессам
вычисления.Практически, все расчеты выполняются на сервере, что увеличивает
быстродействие в десятки и сотни раз.
Технология клиент-сервер в отличие от файл-серверной дает пользователю
большуюбезопасность, устойчивость, согласованность, масштабируемость, повышенную
конфиденциальность и надежность обработки и хранения информации. Развитиесистем
с архитектурой клиент-сервер в немалой степени обязано проверенному факту:
подключение к недорогим серверам недорогих ПК позволяет получить
оптимальноесоотношение цены и производительности.
В большинстве случаев программа обработки (клиентская часть) расположена на
одном компьютере,а сама база данных хранится на другом. Тут разделение выглядит
совершенно естественным: Программа - клиент (точнее, та ее часть, которая
отвечает заинтерфейс с пользователем), передает по сети запросы на обработку
самих данных на другой компьютер, а там БД-сервер их прочитывает, выполняет
требуемое, и посети возвращает готовые ответы клиенту. При этом по сети
передается только полезная информация.
Другое соображение: постоянно идет работа по совершенствованию самого метода
храненияи обработки информации, и если его реализация (т.е. БД-сервер)
сменилась, то не потребуется перекомпилировать с новыми библиотеками все
разработанныепрограммы, а достаточно будет инсталлировать новый БД-сервер взамен
старого и перевести базы данных в формат нового сервера (применив для этого
прилагаемую кнему утилиту). Естественно, все это можно проделать, если новый
сервер придерживается тех же правил обмена между ним и пользовательской
программой,что и старый, что, впрочем, наверняка имеет место.
Используя множество небольших компьютеров, разработчики систем клиент-сервер
могутэмулировать вычислительную мощность больших ЭВМ, распределяя прикладную
задачу по различным микрокомпьютерам и серверам. Каждый из них берет на себя
своючасть вычислительной нагрузки, используя информацию совместно с другими
процессорами сети. Суть идеи в том, чтобы повысить мощность системы, ненаращивая
производительность одного компьютера, а суммируя средства многих.
Быстродействие - основной фактор целесообразности разработки систем для
архитектурыклиент-сервер . Применение средств быстрой разработки программ (Rapid
Application Development - RAD), таких, как Delphi компании Borland,PowerBuilder
фирмы PowerSoft и Visual Basic корпорации Microsoft, позволяет разработчикам
"штамповать" прикладные системы для архитектурыклиент-сервер в рекордно короткие
сроки. Технология серверов баз данных также становится проще в использовании и
сочетается в одних системах со средствами RAD. Такимобразом, с помощью этой
скоростной и практически защищенной от "дурака" платформы разработки сокращается
время, необходимое дляподготовки и передачи прикладной программы пользователю.
В заключение стоит отметить что архитектура клиент-сервер предоставляет
разработчикам ПОисключительную свободу выбора и согласования различных типов
компонентов для клиента, сервера и всех промежуточных звеньев.
Наиболее простая (и рассматриваемая в контексте данной дипломной работы)
формаархитектуры клиент-сервер - это разделение вычислительной нагрузки между
двумя отдельными процессами: клиентом и сервером. Хотя и клиент, и сервер
могутнаходиться на одном и том же компьютере, большинство систем этой
архитектуры запускают клиентский процесс на одном компьютере, а процесс-сервер
на другом,используя для обмена информацией сетевые связи. В этой модели один
процесс может работать независимо от другого, выполнять определенные задания
иразделять вычислительную нагрузку.
Обычно клиентом служит настольный ПК, выполняющий программное обеспечение
конечногопользователя. программное обеспечение (ПО) конечного пользователя
(front-end software) - это любая прикладная программа или пакет,
способныенаправлять запросы по сети серверу и обрабатывать получаемую в ответ
информацию. Сервер, в свою очередь, получает запросы и предпринимаетдействия от
имени клиента.
ПК, работающий под управлением Windows 95 и выполняющий программу клиент-сервер
Delphi,например, может представить на рассмотрение запрос серверу баз данных
(скажем, программе InterBase5.1.1, запущенной на сервере Windows NT). Обычно
клиент посылает запросы базе данных в виде предложений на языке
структурированных запросов (SQL), используяпонятный серверу базы данных диалект.
1.3.3Компоненты архитектуры Клиент-сервер
Существуют три основных программных компонента архитектуры клиент-сервер :
ПО конечного пользователя.
промежуточное обеспечение.
ПО сервера.
К ПО конечного пользователя относятся средства разработки программ и
генераторыотчетов, в том числе электронные таблицы и текстовые процессоры. С
помощью этого ПО пользователи устанавливают связь с серверами, отправляют
нарассмотрение серверу запросы и получают ответную информацию.
Промежуточное обеспечение (middleware) предоставляет общий интерфейс для ПО
конечного пользователя и сервера,проникающий сквозь сквозь слои GUI (графический
интерфейс пользователя), ОС, вычислительной сети и собственныхдрайверов базы
данных с помощью общих вызовов. Для завершения операции сервер базы данных
выполняет запрос и передает клиенту затребованные данные дляобработки их
программой клиента.
Под ПО сервера подразумевается операционная система и конкретный сервер
БД,используемый для обработки запросов клиентской части информационной системы.
Серверы баз данных занимаются не только обслуживанием данных. В них
предусмотрены такжемеханизмы блокировок и элементы управления
многопользовательским доступом, которые обеспечивают защиту данных от опасности
параллельного доступа. Кромеэтого, серверу баз данных приходится ограждать
данные от несанкционированного доступа, оптимизировать запросы к базе данных,
обеспечивать кэширование ипредоставлять место для размещения словаря данных.
Две другие важные особенности, на которые стоит обратить внимание, - способность
сервераобеспечивать целостность ссылочных данных и обоюдный контроль завершения
транзакции. Ссылочная целостность данных (referential integrity) - этомеханизм,
обеспечивающий каждому внешнему ключу соответствующий первичный ключ. Обоюдный
контроль завершения транзакций (two-phase commit) - гарантиятого, что ваши
данные не будут повреждены даже при аппаратном сбое.
С помощью хранимых процедур, триггеров и правил разработчики могут составить
программунепосредственно самого сервера баз данных и, таким образом, появляется
еще одно место для размещения логики программы. Хранимые процедуры
(storedprocedures) - это группа предложений на языке SQL и процедурная логика,
которые разработчики могут компилировать и хранить на сервере баз данных в
качествеобъектов. Программы-клиенты способны выполнять хранимые процедуры, также
как и другой вид хранимых процедур или триггеров, путем посылки сообщений
серверу базданных.
Реальное распространение архитектуры "клиент-сервер" стало возможным
благодаряразвитию и широкому внедрению в практику концепции открытых систем.
Поэтому мы начнем с краткого введения в открытые системы.
Основным смыслом подхода открытых систем является упрощение комплексирования
вычислительных систем за счет международной и национальной
стандартизацииаппаратных и программных интерфейсов. Главной побудительной
причиной развития концепции открытых систем явились повсеместный переход к
использованию локальныхкомпьютерных сетей и те проблемы комплексирования
аппаратно-программных средств, которые вызвал этот переход. В связи с бурным
развитием технологийглобальных коммуникаций открытые системы приобретают еще
большее значение и масштабность.
Ключевой фразой открытых систем, направленной в сторону пользователей,
являетсянезависимость от конкретного поставщика. Ориентируясь на продукцию
компаний, придерживающихся стандартов открытых систем, потребитель, который
приобретаетлюбой продукт такой компании, не попадает к ней в рабство. Он может
продолжить наращивание мощности своей системы путем приобретения продуктов любой
другойкомпании, соблюдающей стандарты. Причем это касается как аппаратных, так и
программных средств и не является необоснованной декларацией.
Реальнаявозможность независимости от поставщика проверена в отечественных
условиях.
Использование подхода открытых систем выгодно и производителям, и пользователям.
Прежде всегооткрытые системы обеспечивают естественное решение проблемы
поколений аппаратных и программных средств. Производители таких средств не
вынуждаются решать всепроблемы заново; они могут по крайней мере временно
продолжать комплексировать системы, используя существующие компоненты.
1.4Язык структурированных запросов SQL
1.4.1Назначение и принцип работы SQL
SQL (часто произносится как "сиквэл", сокращенное название от StructuredQuery
Language) символизирует собой Структурированный Язык Запросов. SQL является
инструментом, предназначенным для обработки и чтения данных,содержащихся в
компьютерной базе данных. Это язык который дает возможность эффективно создавать
реляционные базы данных и работать с ними.
Мир баз данных становится все более и более единым, что привело к
необходимости создания стандартного языка, который мог быфункционировать в
большом количестве различных видов компьютерных сред. Стандартный язык позволит
пользователям знающим один набор команд, использовать их чтобы создавать,
отыскивать,изменять, и передавать информацию независимо от того работают ли они
на персональном компьютере, сетевой рабочей станции, или на универсальной ЭВМ.
Вовсе более и более взаимосвязанном компьютерном мире, пользователь, снабженый
таким языком, имеет огромное преимущество в использовании и обобщенииинформации
из ряда источников с помощью большого количества способов.
Как следует из названия, SQL является языком программирования, который
применяется для организациивзаимодействия пользователя с базой данных. На самом
деле SQL работает только с базами данных реляционного типа. На рис. 8
изображенасхема работы SQL.
Рис. 1.3. Применение SQL для доступа к базе данных
Согласно этой схеме, в вычислительной системе имеется база данных, в которой
хранитсяважная информация. Если вычислительная система относится к сфере
бизнеса, то в базе данных может храниться информация о материальных ценностях,
выпускаемойпродукции, объемах продаж и зарплате. В базе данных на персональном
компьютере может храниться информация о выписанных чеках, телефонах и адресах
илиинформация, извлеченная из более крупной вычислительной системы.
Если пользователю необходимо прочитать данные из базы данных, он запрашивает их
у СУБД с помощью SQL. СУБД обрабатываетзапрос, находит требуемые данные и
посылает их пользователю. Процесс запрашивания данных и получения результата
называется запросом к базеданных: отсюда и название — структурированный язык
запросов.
Вот основные моменты, характеризующие удобство применения SQL:
Организация данных. SQL дает пользователю возможность изменять структуру
представленияданных, а также устанавливать отношения между элементами базы
данных.
Чтение данных. SQL дает пользователю или приложению возможность читать из базы
данныхсодержащиеся в ней данные и пользоваться ими.
Обработка данных. SQL дает пользователю или приложению возможность изменять базу
данных, т.е.добавлять в нее новые данные, а также удалять или обновлять уже
имеющиеся в ней данные.
Управление доступом. С помощью SQL можно ограничить возможности пользователя по
чтению иизменению данных и защитить их от несанкционированного доступа.
Совместное использование данных. SQL координирует совместное использование
данныхпользователями, работающими параллельно, чтобы они не мешали друг другу.
Целостность данных. SQL позволяет обеспечить целостность базы данных, защищая ее
отразрушения из-за несогласованных изменений или отказа системы.
Таким образом, SQL является достаточно мощным языком для взаимодействия с СУБД.
1.4.2Достоинства языка SQL
Язык запросов дает несомненные преимущества. Во первых он продолжает идеологию
архитектурыКлиент-Сервер. Клиентская часть приложения подготавливает запрос на
обработку информации и отсылает запрос на сервер базы данных. Сервер ,
выполнив(обработав) полученный запрос возвращает клиентской программе готовый
результат.
Основные преимущества напрямую вытекают из преимуществ клиент-серверного
подхода.Например, простое суммирование значений всех полей без
использования SQL приведет к пересылки всей таблицы по сети на машину клиента.
После суммированиятаблица фактически уже не нужна и такое использование сети как
минимум не рационально. В случае же с SQLпо сети уйдет запрос на сервер, сервер
проведет суммирование и вернет обратно по сети только полученную сумму!
Элегантность и независимость от специфики компьютерных технологий (аппаратных
платформ), атакже его поддержка лидерами промышленности в области технологии
реляционных баз данных, сделало SQL, и вероятно в течение обозримого будущего
оставитего, основным стандартным языком. По этой причине, любой кто хочет
работать с базами данных 90-х годов должен знатьSQL.
Стандарт SQL определяется ANSI (Американским Национальным Институтом Стандартов)
и в данноевремя также принимается ISO (МЕЖДУНАРОДНОЙ ОРГАНИЗАЦИЕЙ ПО
СТАНДАРТИЗАЦИИ). Однако, большинство коммерческих СУБД расширяют SQL без
уведомления ANSI, добавляя разные другие особенности в этот язык, которые, как
они считают, будут весьма полезны. Иногда они несколько нарушают стандартязыка,
хотя хорошие идеи имеют тенденцию развиваться и вскоре становиться
стандартами"рынка" сами по себе в силу полезности своих качеств.
Здесь следует отметить, что несмотря на достаточно большой набор нестандартных
дополнительныхфукций SQL InterBase, программа Отдел Кадров использует только
стандартные операторы и конструкции. Такое решение принято для
возможностилегкого переноса программы на другой SQL сервер. Например, при
дальнейшем развитии можно перенести программу на Microsoft SQL Server, если
InterBase покаким либо причинам перестанет удовлетворять запросы разработчиков.
Также следует отметить, что многие нестандартные , дополнительные возможности
разныхSQL серверов зачастую похожи между собой и при выходе нового стандарта,
как правило переносятся в группу стандартизованных. Таким образом
происходитдальнейшее развитие языка SQL.
В целом, список преимуществ, на которые стоит обратить внимание в первую
очередь, можнопредставить в следующем виде:
независимость от конкретных СУБД;
переносимость с одной вычислительной системы на другую;
наличие стандартов;
поддержка со стороны компании Microsoft (протокол ODBC);
реляционная основа;
высокоуровневая структура, напоминающая английский язык;
возможность выполнения специальных интерактивных запросов:
обеспечение программного доступа к базам данных;
возможность различного представления данных;
полноценность как языка, предназначенного для работы с базами данных;
возможность динамического определения данных;
поддержка архитектуры клиент/сервер.
Все перечисленные выше факторы явились причиной того, что SQL стал
стандартныминструментом для управления данными на персональных компьютерах,
мини-компьютерах и больших ЭВМ. Ниже эти факторы рассмотрены более подробно.
Независимость от конкретных СУБД
Все ведущие поставщики СУБД используют SQL, и ни одна новая СУБД, не
поддерживающая SQL, неможет рассчитывать на успех. Реляционную базу данных и
программы, которые с ней работают, можно перенести с одной СУБД на другую с
минимальными доработками ипереподготовкой персонала. Программные средства,
входящие в состав СУБД для персональных компьютеров, работают с реляционными
базами данных многих типов.
Переносимость с одной вычислительной системы на другие
Поставщики СУБД предлагают программные продукты для различных вычислительных
систем: отперсональных компьютеров и рабочих станций до локальных сетей,
мини-компьютеров и больших ЭВМ. Приложения, созданные с помощью SQL и
рассчитанные наоднопользовательские системы, по мере своего развития могут быть
перенесены в более крупные системы. Информация из корпоративных реляционных баз
данных можетбыть загружена в базы данных отдельных подразделений или в личные
базы данных. Наконец, приложения для реляционных баз данных можно вначале
смоделировать наэкономичных персональных компьютерах, а затем перенести на
дорогие многопользовательские системы.
Стандарты языка SQL
Официальный стандарт языка SQL был опубликован Американским институтом
национальныхстандартов (American National Standards Institute — ANSI) и
Международной организацией по стандартам (International Standards Organization —
ISO) в 1986году и значительно расширен в 1992 году. Кроме того, SQL является
федеральным стандартом США по обработке информации (FIPS — Federal Information
ProcessingStandard) и, следовательно, соответствие ему является одним из
основных требований, содержащихся в больших правительственных контрактах,
относящихся к областивычислительной техники. В Европе стандарт X/OPEN для
переносимой среды программирования на основе операционной системы UNIX включает
в себя SQL вкачестве стандарта для доступа к базам данных. SQL Access Group —
консорциум поставщиков компьютерного оборудования и баз данных — определил для
SQLстандартный интерфейс вызовов функций, который является основой протокола
ODBC компании Microsoft и входит также в стандарт X/OPEN. Эти стандарты служат
какбы официальной печатью, одобряющей SQL, и они ускорили завоевание им рынка.
Протокол ODBC и компания Microsoft
Компания Microsoft рассматривает доступ к базам данных как важную часть
своейоперационной системы Windows. Стандартом этой компании по обеспечению
доступа к базам данных является ODBC (Open Database Connectivity —
взаимодействие соткрытыми базами данных) — программный интерфейс, основанный на
SQL. Протокол ODBC поддерживается наиболее распространенными приложениями
Windows(электронными таблицами, текстовыми процессорами, базами данных и т.п.),
разработанными как самой компанией Microsoft, так и другими ведущими
поставщиками.Поддержка ODBC обеспечивается всеми ведущими реляционными базами
данных. Кроме того, ODBC опирается на стандарты, одобренные консорциумом
поставщиков SQLAccess Group, что делает ODBC как стандартом де-факто компании
Microsoft, так и стандартом, независимым от конкретных СУБД.[13, 8, 17].
1.4.3Запрос наязыке SQL
Как подчеркивалось ранее, SQL символизирует собой Структурированный Язык
Запросов. Запросы - вероятно наиболеечасто используемый аспект SQL.
Фактически, для категории SQL пользователей, маловероятно чтобы кто-либо
использовалэтот язык для чего-то другого. Итак :
Запрос - команда которую дается прикладной программе базы данных, и которая
сообщает ейчтобы она вывела определенную информацию из таблиц в память. Эта
информация обычно посылается непосредственно на экран компьютера или
терминала хотя, в большинстве случаев, ее можно также послать принтеру,
сохранить вфайле ( как объект в памяти компьютера ), или представить как
вводную информацию для другой команды или процесса.
Одна из наиболее важных особенностей запросов SQL - это их способность
определять связимежду многочисленными таблицами и выводить информацию из них в
терминах этих связей, всю внутри одной команды. Этот вид операции называется
-объединением, которое является одним из видов операций в реляционных базах
данных.
Как установлено ранее, главное в реляционном подходе это связи которые можно
создавать между позициями данных в таблицах. Используя обьединения,
мынепосредственно связываем информацию с любым номером таблицы, и таким образом
способны создавать связи между сравнимыми фрагментами данных. При обьединении,
таблицы представленыесписком в предложении FROM запроса, отделяются запятыми.
Предикат запроса может ссылаться к любому столбцу любой связанной таблицы и,
следовательно, может использоваться длясвязи между ими.
Язык допускает три типа синтаксических конструкций, начинающихся с ключевого
слова SELECT:спецификация курсора (cursor specification), оператор выборки
(select statement) и подзапрос (subquery). Основой всех них является
синтаксическаяконструкция "табличное выражение (table expression)". Семантика
табличного выражения состоит в том, что на основе последовательного
примененияразделов from, where, group by и having из заданных в разделе from
таблиц строится некоторая новая результирующая таблица, порядок следования
строккоторой не определен и среди строк которой могут находиться дубликаты (т.е.
в общем случае таблица-результат табличного выражения является
мультимножествомстрок). На самом деле именно структура табличного выражения
наибольшим образом характеризует структуру запросов языка SQL/89.
1.4.4Агрегатные функции
Запросы могут производить обобщенное групповое значение полей точно также как и
значениеодного поля. Это делает с помощью агрегатых функций. Агрегатные функции
производят одиночное значение для всей группы таблицы. Имеется список
этихфункций:
COUNT производит номера строк или не-NULL значения полей которые выбрал
запрос.
SUM производит арифметическую сумму всех выбранных значений данного поля.
AVG производит усреднение всех выбранных значений данного поля.
MAX производит наибольшее из всех выбранных значений данного поля.
MIN производит наименьшее из всех выбранных значений данного поля.
1.5Локальные вычислительныесети
На сегодняшний день в мире существует более 150 миллионов компьютеров, более 80
% из них объединеныв различные информационно-вычислительные сети от малых
локальных сетей в офисах до глобальных сетей типа Internet
Автоматизированное рабочее место «Отдел Кадров» является программой, активно
использующей сетевоесоединение отдельных компьютеров в локальную вычислительную
сеть. Только при этом становится возможной передача информации с любого рабочего
места пользователя на сервер и обратно. Скоростьпередачи данных по сети
естественным образом влияет на общую скорость работы всего АРМ. В свою очередь,
скорость прохождения информации от сервера клокальному компьютеру пользователя
определяется комплексом программно-аппаратных средств, которые и составляют
локальную вычислительнуюсеть.
В настоящее время существуют различные способы связи разрозненных компьютеров в
единоецелое (т.е. в сеть). Спектр аппаратных средств (и программных для
управления ими) более чем широк. Иногда это приводит к некоторому затруднению
при выборетипа сети и её программного обеспечения. Неправильный выбор может в
дальнейшем привести к невозможности функционирования программ в случае
увеличения паркамашин или возрастания требований к скорости и объемам
передаваемой информации. С учетом сказанного становится ясно, что необходимо в
достаточной степенипонимать принципы организации ЛВС, грамотно выбрать
аппаратные и программные средства для её построения.
В данном разделе описаны основные, базовые принципы ЛВС, приведены различные
схемы соединения машин. Дано описаниедостоинств и недостатков каждой схемы.
Теоретическая информация подкреплена описанием реально используемыми в настоящее
время аппаратными и программнымисредствами для построения ЛВС. Наряду с давно
применяемыми и хорошо изученными способами построения сетей приводится описание
современного способа соединенияс помощью оптоволоконного кабеля.
1.5.1Файл сервер и рабочие станции
ЛВС могут состоять из одного файл-сервера, поддерживающего небольшое число
рабочих станций, или из многих файл-серверов и коммуникационных серверов,
соединенных с сотнями рабочих станций. Некоторые сетиспроектированы для
оказания сравнительно простых услуг, таких, как совместное пользование
прикладной программой и файлом и обеспечение доступа к единственному
принтеру. Другие сети обеспечивают связь с большими и мини-ЭВМ, модемами
коллективного пользования, разнообразными устройствами
ввода/вывода(графопостроителями, принтерами и т. д.) и устройствам памяти
большой емкости (диски типа WORM).
Файл-сервер является ядром локальной сети. Этот компьютер (обычно
высокопроизводительный мини-компьютер) запускает операционную систему и
управляет потоком данных, передаваемых по сети.Отдельные рабочие станции и
любые совместно используемые периферийные устройства, такие, как
принтеры, - все подсоединяются кфайл-серверу.
Каждая рабочая станция представляет собой обычный персональный
компьютер, работающий подуправлением собственной дисковой операционной системы
(такой, как DOS или OS/2). Однако в отличие от автономного персонального
компьютера рабочая станция содержит плату сетевого интерфейса и физически
соединена кабелями с файлом-сервером. Кроме того, рабочая станция
запускает специальную программу, называемой оболочкой сети, которая
позволяет ей обмениваться информацией с файл-сервером, другими рабочими
станциями и прочими устройствами сети. Оболочкапозволяет рабочей станции
использовать файлы и программы, хранящиеся на файл-сервере, так же легко,
как и находящиеся на ее собственных дисках.
1.5.2Операционная система рабочей станции
Каждый компьютер рабочей станции работает под управлением своей собственной
операционной системы (такой, как DOS или OS/2). Чтобы включить каждую
рабочую станцию с состав сети, оболочка сетевой операционной системы
загружается в начало операционной системыкомпьютера.
Оболочка сохраняет большую часть команд и функций операционной
системы, позволяярабочей станции в процессе работы выглядеть как обычно.
Оболочка просто добавляет локальной операционнойсистеме больше функций и
придает ей гибкость.
1.5.3Преимущества локальных вычислительных сетей
Понятие локальная вычислительная сеть - ЛВС (англ. LAN - Lokal Area Network)
относитсяк географически ограниченным ( территориально или производственно)
аппаратно-программным реализациям, в которых несколько компьютерных
системсвязаны друг с другом с помощью соответствующих средств коммуникаций.
Благодаря такому соединению пользователь может взаимодействовать с другими
рабочимистанциями, подключенными к этой ЛВС.
В производственной практики ЛВС играют очень большую роль.
Посредством ЛВС в систему объединяются персональныекомпьютеры, расположенные на
многих удаленных рабочих местах, которые используют совместно оборудование,
программные средства и информацию. Рабочиеместа сотрудников перестают быть
изолированными и объединяются в единую систему. Рассмотрим преимущества,
получаемые при сетевом объединенииперсональных компьютеров в виде
внутрипроизводственной вычислительной сети.
Разделение ресурсов.
Разделение ресурсов позволяет экономно использовать ресурсы,
например, управлять периферийными устройствами,такими как лазерные печатающие
устройства, со всех присоединенных рабочих станций.
Разделение данных.
Разделение данных предоставляет возможность доступа и управления
базами данных с периферийных рабочих мест,нуждающихся в информации.
Разделение программных средств.
Разделение программных средств предоставляет возможность
одновременного использования централизованных, ранееустановленных
программных средств.
Разделение ресурсов процессора.
При разделение ресурсов процессора возможно использование
вычислительных мощностей для обработки данных другимисистемами, входящими в
сеть. Предоставляемая возможность заключается в том, что на имеющиеся ресурсы
пользовательские программы не “набрасываются”моментально, а только лишь через
специальный процессор, доступный каждой рабочей станции.
Многопользовательский режим.
Многопользовательские свойства системы содействуют одновременному использованию
централизованных прикладныхпрограммных средств, ранее установленных и
управляемых. Например, если пользователь системы работает с другим заданием, то
текущая выполняемая работаотодвигается на задний план.
1.5.4Стандарт передачи информации
Все ЛВС работают в одном стандарте принятом для компьютерных сетей - в стандарте
OSI (англ.Open Systems Interconnection). В данном разделе описана базовая модель
OSI.
Для того чтобы взаимодействовать, люди используют общий язык. Если они не могут
разговариватьдруг с другом непосредственно, они применяют соответствующие
вспомогательные средства для передачи сообщений.
Показанные выше стадии общения необходимы, когда сообщение передается от
отправителя кполучателю.
Для того чтобы привести в движение процесс передачи данных, используются машины
с одинаковымкодированием данных и связанные одна с другой. Для единого
представления данных в линиях связи, по которым передается информация,
сформирована Международнаяорганизация по стандартизации ISO (англ. ISO -
International Standards Organization).
ISO предназначена для разработки модели международного коммуникационного
протокола,в рамках которой можно разрабатывать международные стандарты. Для
наглядного пояснения расчленим ее на семь уровней.
ISO разработала указанную базовую модель взаимодействия открытых систем OSI.
Модель содержит семь отдельныхуровней:
1. физический - битовые протоколы передачи информации;
2. канальный - формирование кадров, управление доступом к среде;
3. сетевой - маршрутизация, управление потоками данных;
4. транспортный - обеспечение взаимодействия удаленных процессов;
5. сеансовый - поддержка диалога между удаленными процессами;
6. представлении данных - интерпретация передаваемых данных;
7. прикладной - пользовательское управление данными.
Основная идея этой модели заключается в том, что каждому уровню отводится
конкретная ролью втом числе и транспортной среде. Благодаря этому общая задача
передачи данных расчленяется на отдельные легко обозримые задачи. Необходимые
соглашения длясвязи одного уровня с выше- и нижерасположенными называют
протоколом.
Так как пользователи нуждаются в эффективном управлении, система вычислительной
сетипредставляется как комплексное строение, которое координирует взаимодействие
задач пользователей.
С учетом вышеизложенного можно вывести следующую уровневую модель с
административнымифункциями, выполняющимися в пользовательском прикладном
уровне.
Отдельные уровни базовой модели проходят в направлении вниз от источника данных
(отуровня 7 к уровню 1) и в направлении вверх от приемника данных (от уровня 1
к уровню 7). Пользовательские данные передаются в нижерасположенный уровень
вместесо специфическим для уровня заголовком до тех пор, пока не будет достигнут
последний уровень.
На приемной стороне поступающие данные анализируются и, по мере надобности,
передаютсядалее в вышерасположенный уровень, пока информация не будет передана
в пользовательский прикладной уровень.
Уровень 1. Физический.
На физическом уровне определяются электрические, механические, функциональные и
процедурныепараметры для физической связи в системах. Физическая связь и
неразрывная с ней эксплуатационная готовность являются основной функцией 1-го
уровня. Стандартыфизического уровня включают рекомендации V.24 МККТТ (CCITT),
EIA RS232 и Х.21. Стандарт ISDN ( Integrated Services Digital Network) в будущем
сыграетопределяющую роль для функций передачи данных. В качестве среды передачи
данных используют трехжильный медный провод (экранированная витая пара),
коаксиальныйкабель, оптоволоконный проводник и радиорелейную линию.
Уровень 2. Канальный.
Канальный уровень формирует из данных, передаваемых 1-м уровнем, так
называемые"кадры" последовательности кадров. На этом уровне осуществляются
управление доступом к передающей среде, используемой несколькими ЭВМ,
синхронизация,обнаружение и исправление ошибок.
Уровень 3. Сетевой.
Сетевой уровень устанавливает связь в вычислительной сети между двумя
абонентами.Соединение происходит благодаря функциям маршрутизации, которые
требуют наличия сетевого адреса в пакете. Сетевой уровень должен также
обеспечивать обработкуошибок, мультиплексирование, управление потоками данных.
Самый известный стандарт, относящийся к этому уровню, - рекомендация Х.25 МККТТ
(для сетейобщего пользования с коммутацией пакетов).
Уровень 4. Транспортный.
Транспортный уровень поддерживает непрерывную передачу данных между двумя
взаимодействующимидруг с другом пользовательскими процессами. Качество
транспортировки, безошибочность передачи, независимость вычислительных сетей,
сервис транспортировкииз конца в конец, минимизация затрат и адресация связи
гарантируют непрерывную и безошибочную передачу данных.
Уровень 5. Сеансовый.
Сеансовый уровень координирует прием, передачу и выдачу одного сеанса связи.
Длякоординации необходимы контроль рабочих параметров, управление потоками
данных промежуточных накопителей и диалоговый контроль, гарантирующий
передачу,имеющихся в распоряжении данных. Кроме того, сеансовый уровень содержит
дополнительно функции управления паролями, подсчета платы за
пользованиересурсами сети, управления диалогом, синхронизации и отмены связи в
сеансе передачи после сбоя вследствие ошибок в нижерасположенных уровнях.
Уровень 6. Представления данных.
Уровень представления данных предназначен для интерпретации данных; а также
подготовкиданных для пользовательского прикладного уровня. На этом уровне
происходит преобразование данных из кадров, используемых для передачи данных в
экранныйформат или формат для печатающих устройств оконечной системы.
Уровень 7. Прикладной.
В прикладном уровне необходимо предоставить в распоряжение пользователей уже
переработаннуюинформацию. С этим может справиться системное и пользовательское
прикладное программное обеспечение.
Для передачи информации по коммуникационным линиям данные преобразуются в
цепочкуследующих друг за другом битов (двоичное кодирование с помощью двух
состояний:"0"и "1").
Передаваемые алфавитно-цифровые знаки представляются с помощью битовых
комбинаций.Битовые комбинации располагают в определенной кодовой таблице,
содержащей 4-, 5-, 6-, 7- или 8-битовые коды.
Количество представленных знаков в ходе зависит от количества битов,
используемых вкоде: код из четырех битов может представить максимум 16
значений, 5-битовый код - 32 значения, 6-битовый код - 64 значения, 7-битовый -
... дешевле чем ОС Unix, как правило просты в использовании и предоставляют доступ почти ко всем ресурсам сети Internet. Абонентское программное обеспечение весьма разнообразно. Его выпускают фирмы-производители сетевого программного обеспечения, а также организации, занимающиеся исследованиями в области глобальных сетей. Именно ввиду большого числа таких пакетов и важности абонентского программного ...
... РФ по связи и информатизации РОСТОВСКИЙ-НА-ДОНУ ГОСУДАРСТВЕННЫЙ КОЛЛЕДЖ СВЯЗИ И ИНФОРМАТИКИ Допустить к защите Зав. отделением Ковальчук С.А . « « 2001г. “ВЫСОКОСКОРОСТНОЕ СОЕДИНЕНИЕ С СЕТЬЮ INTERNET ЧЕРЕЗ ISDN”ДИПЛОМНАЯ РАБОТАПОЯСНИТЕЛЬНАЯ ЗАПИСКАРуководитель дипломной работы Евсеенко Г.М. Нормоконтроль Чернышев Е.И. Рецензент Капыш С.П. Дипломник Новожилов ...
... гипертекстовых связей между документами находящимися в различных архивах сети; благодаря этим связям можнонепосредственно во время просмотра одного документа переходить к другим документам. Internet - глобальная компьютерная сеть. internet - технология сетевого взаимодействия между компьютерами разных типов. IP (Internet Protocol) - протокол межсетевого взаимодействия, самый важный из ...
... бланка опроса. !Внимание! Значок «è» информирует, что следующим следует задавать вопрос, номер которого указан за ним. Бланк для изучения мнения потенциальных и реальных пользователей всемирной компьютерной сети Internet о проблемах ее существования и развития в Москве. 1. Припомните пожалуйста, откуда или от кого вы впервые узнали об Internet? 01. c От друзей, знакомых или посторонних ...
0 комментариев