|
Программирование >> Хронологические базы данных
сможет получить отформатированный отчет, выполнив обычный запрос к системе. Каждый такой запрос является, по существу, ни чем иным, как небольшим специальным приложением, написанным на языке очень высокого уровня (со специфическим назначением), а именно - на языке выдачи отчетов. Поставляемые инструментальные средства, в свою очередь, делятся на несколько самостоятельных классов. а) Процессоры языков запросов. б) Генераторы отчетов. в) Графические бизнес-подсистемы. г) Электронные таблицы. д) Процессоры обычных языков. е) Статистические пакеты. ж) Средства управления копированием или средства извлечения данных. з) Генераторы приложений (включая процессоры языков четвертого поколения), и) Другие средства разработки приложений, включая CASE-инструменты (CASE или Computer-Aided Software Engineering- автоматизация разработки программного обеспечения), и т.д. Подробное обсуждение этих приложений выходит за рамки данной книги, однако следует отметить, что (как утверждалось ранее) главная задача системы баз данных - поддержка создания и выполнения приложений. Поэтому качество имеющихся клиентских инструментальных средств должно быть главным учитываемым фактором при выборе СУБД, наиболее подходящей для конкретного заказчика. Другими словами, СУБД сама по себе - не единственный и необязательно важнейший фактор, который нужно учитывать в этом случае. Завершим настоящий раздел ссылкой на последующий материал. Так как система в целом может быть четко разделена на две части (сервер и клиенты), появляется возможность работы этих двух частей на разных машинах. Иначе говоря, существует возможность организации распределенной обработки. Распределенная обработка предполагает, что отдельные машины можно соединить какой-нибудь коммуникационной сетью таким способом, что выполнение одной задачи обработки данных можно будет распределить на несколько машин этой сети. Как показала практика, эта возможность настолько заманчива по различным соображениям (главным образом, экономическим), что термин клиент/сервер стал применяться почти исключительно в тех случаях, когда клиенты и сервер действительно находятся на разных машинах. Более подробно распределенная обработка данных рассматривается ниже, в разделе 2.12. 2.11. Утилиты Утилиты - это программы, разработанные для АБД и используемые им при решении различных административных задач. Как упоминалось выше, некоторые утилиты выполняются на внешнем уровне системы и потому представляют собой не что иное, как приложения специального назначения. Одни из них могут быть созданы даже не поставщиком данной СУБД, а определенными сторонними разработчиками программ- ного обеспечения. Однако другие утилиты выполняются непосредственно на внутреннем уровне (т.е. действительно являются частью сервера) и поэтому должны предоставляться поставщиками СУБД. Ниже приводится несколько примеров утилит различных типов, которые часто применяются на практике. Инструменты загрузки, применяемые для создания исходной версии базы данных из одного или более файлов операционной системы. Инструменты выгрузки-перезагрузки, применяемые для выгрузки базы данных или ее части, создания резервных копий хранимых данных и восстановления базы данных из этих копий. (Безусловно, утилита перезагрузки, по существу, идентична упомянутой выше утилите загрузки.) Инструменты реорганизации, применяемые для перераспределения данных в хранимой базе данных, которое выполняется по различным причинам (обычно с целью повышения производительности). В частности, это может быть процедура группирования данных на диске некоторым специальным образом или освобождение пространства, занятого ранее данными, которые больше не используются. Статистические инструменты, применяемые для вычисления различных статистических показателей и показателей производительности, таких как сведения о размерах файлов или значениях данных, счетчики операций ввода-вывода и т.п. Инструменты анализа, применяемые для анализа упомянутой выше статистической информации. Этот список охватывает лишь небольшую часть функциональных возможностей, обычно предоставляемых доступными утилитами. Помимо перечисленных, существует множество других функций. 2.12. Распределенная обработка Как мы определили в разделе 2.10, термин распределенная обработка означает, что разные машины можно соединить в коммуникационную сеть (например, Internet) для организации совместного решения одной задачи обработки данных на нескольких машинах сети. (Термин параллельная обработка используется практически для того же, но в параллельных системах взаимодействующие машины с физической точки зрения расположены рядом, тогда как для распределенной системы это вовсе необязательно и отдельные машины могут быть достаточно удалены географически.) Взаимодействие между различными машинами осуществляется с помощью специального программного обеспечения, предназначенного для управления сетью. Оно может быть некоторым расширением менеджера передачи данных (см. раздел 2.9), но чаще всего является отдельным программным компонентом. Распределенная обработка может быть самой разнообразной и осуществляться на разных уровнях. Как отмечалось в разделе 2.10, один из простейших случаев, представленный на рис. 2.6, - это случай, когда сервер СУБД запускается на одной машине, а клиентское приложение - на другой. Прозрачный удаленный доступ Машина сервера Как уже отмечалось в конце раздела 2.10, термин клиент/сервер , несмотря на то что он, строго говоря, является чисто архитектурным, фактически стал синонимом изображенной на рис. 2.6 структуры, в соответствии с которой клиент и сервер запускаются на разных машинах. И действительно, существует множество аргументов в пользу подобной схемы. Главный аргумент связан с возможностью организации параллельной обработки. В этом случае для решения общей задачи применяется сразу несколько процессоров, поскольку работа сервера (базы данных) и клиента (приложения) осуществляется параллельно, в результате показатели времени реакции системы на запрос и ее производительности должны улучшиться. Кроме того, машина сервера может быть изготовлена по специальному заказу и специально приспособлена для работы с СУБД ( машина базы данных ). Такое решение позволяет дополнительно повысить производительность СУБД. Аналогично машина клиента может представлять собой персональную рабочую станцию, максимально приспособленную к потребностям конкретного конечного пользователя, что позволит предоставить ему наиболее удобный интерфейс и гарантировать высокий уровень готовности, быструю реакцию системы и другие дополнительные удобства при использовании. К одной и той же машине сервера могут иметь доступ несколько разных машин клиентов (что чаще всего и имеет место). Поэтому одна база данных может совместно использоваться несколькими различными клиентскими системами, как показано на рис. 2.7. К сказанному выше можно добавить, что работа сервера и клиента на отдельных машинах отвечает принципам работы многих предприятий. Вполне типичный способ функционирования отдельных предприятий (например, банков) заключается в использовании многих компьютеров, причем данные для одной части предприятия сохраняются на одном компьютере, а данные для другой части - на другом. Несомненно, что пользователям одного компьютера, пусть лишь иногда, обязательно потребуется доступ к данным, хранящимся на другом компьютере. Следуя примеру банка, можно с высокой степенью вероятности утверждать, что пользователям одного отделения банка иногда потребуется доступ к данным, сохраняемым в другом его отделении. Из этого можно сделать вывод, что на машинах клиентов могут сохраняться их данные, а машина сервера может иметь собственные приложения. Поэтому, вообще говоря, каждая машина будет выступать в роли сервера для одних пользователей и в роли клиента для других, образуя систему, представленную на рис. 2.8. Иными словами, в этом случае каждая машина будет поддерживать полную систему баз данных в смысле, который вкладывался в это понятие в предыдущих разделах главы. Рис. 2.6. Вариант распределенной обработки, в котором клиент и сервер запускаются на разных машинах
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |