Введение в системы БД (542480), страница 7
Текст из файла (страница 7)
° Аппаратный процессор (или процессоры) вместе с основной (первичной) памятью, предназначенные для поддержки работы программного обеспечения системы баз данных (подробности — в следующем разделе). 37 Глава 1. Базы данных и управление ими Аппаратной части системы в данной книге уделяется мало внимания.
Во-первых, эти вопросы составляют достаточно обширную тему, которую нужно рассматривать отдельно. Во-вторых, проблемы, которые существуют в этой области, не являются специфическими исключительно для систем баз данных. И, в-третьих, эти проблемы достаточно подробно освещаются в других источниках. Программное обеспечение Между собственно физической базой данных (т.е.
данными, которые реально хранятся) и пользователями системы располагается уровень программного обеспечения, который можно называть по-разному: менеджер базы данных (дасаЬазе шапакег), сервер базы данных (дасаЬазе зегчег) или, что более привычно, система управления базами данных, СУБД (дасаЬазе щапаяешепс зумещ — РВМБ). Все запросы пользователей на доступ к базе данных обрабатываются СУБД.
Все имеющиеся средства добавления файлов (или таблиц), выборки и обновления данных в этих файлах нли таблицах также предоставляет СУБД. Основная задача СУБД вЂ” предоставить пользователю базы данных возможность работать с ней, не вникая в детали на уровне аппаратного обеспечения. (Пользователь СУБД более отстранен от этих деталей, чем прикладной программист, применяющий языковую среду программирования.) Иными словами, СУБД позволяет конечному пользователю рассматривать базу данных как объект более высокого уровня по сравнению с аппаратным обеспечением, а также предоставляет в его распоряжение набор операций, выражаемых в терминах языка высокого уровня (например, набор операций, которые можно выполнять с помощью языка БОЬ, упомянутого выше, в разделе 1.!).
Далее в книге будут подробно обсуждаться обе указанные функции СУБД. Необходимо отметить еше две особенности. ° СУБД вЂ” это наиболее важный, но не единственный программный компонент системы. Среди других компонентов — утилиты, средства разработки приложений, средства проектирования, генераторы отчетов и менеджер транзакций (сгапзасйоп гпапаяег) или диспетчер выполнения транзакций (ТР пюппог). Эти компоненты обсуждаются далее, в главе 2, 3 и (еше подробнее) в части 1Ч. ° Термин СУБД также часто используется в отношении конкретных программных продуктов конкретных изготовителей, например такого, как СУБД 1ВМ "РВ2 ()п!чегза1 РасаЪазе" для системы 0%390. Иногда, в тех случаях, когда конкретная копия подобного продукта устанавливается для работы на определенном компьютере, используется термин экземпляр СУБД.
Как вы, безусловно, понимаете, необходимо строго различать эти два понятия. Замечание. Следует иметь в виду, что в среде изготовителей термин база данных часто используется даже тогда, когда на самом деле подразумевается СУБД (в одном из уже упомянутых толкований), Вот типичный пример: "База данных изготовителя Х превосходит по производительности базу данных изготовителя У в два раза".
Такое небрежное обращение с терминами предосудительно; тем не менее оно очень широко распространено. (Проблема, естественно, заключается в том, что если называть СУБД базой данных, то как же тогда называть саму базу данных?) Предостерегающий лектор. 38 Часть л Основные понятия Пользователи Пользователей можно разделить на три большие и отчасти перекрывающиеся группы. ° Первая группа — прикладные программисты, которые отвечают за написание прикладных программ, использующих базу данных. Для этих целей применимы такие языки, как СОВОЬ, РЬ/1, С++, 5ача или какой-нибудь высокоуровневый язык четвертого поколения (подробности — в главе 2).
Прикладные программы получают доступ к базе данных посредством выдачи соответствующего запроса к СУБД (обычно это некоторый БОЬ-оператор). Подобные программы могут быть простыми пакетными приложениями или же интерактивными приложениями, предназначенными для поддержки работы конечных пользователей (см. следующий абзац). В последнем случае они предоставляют пользователям непосредственный оперативный доступ к базе данных через рабочую станцию или терминал.
Большинство современных приложений относится именно к этой категории. ° Вторая группа — конечные пользователи, которые работают с системой баз данных непосредственно через рабочую станцию илн терминал. Конечный пользователь может получать доступ к базе данных, применяя одно из интерактивных приложений, упомянутых выше, или же интерфейс, интегрированный в программное обеспечение самой СУБД. Безусловно, подобный интерфейс также поддерживается интерактивными приложениями, однако эти приложения не создаются пользователями-программистами„а являются встроенными в СУБД.
Большинство СУБД включает по крайней мере одно такое встроенное приложение, а именно — процессор языка запросов, позволяющий пользователю в диалоговом режиме вводить запросы к базе данных (их часто иначе называют операторами (магегпеп1) или кочандачи (сопцпапдз)), например ЕЕЬЕСТ или 1МЕЕЕТ. Язык БОЬ, упоминавшийся в разделе ! .1, — типичный пример языка запросов базы данных. Замечание. Общепринятый термин "язык запросов" не совсем точно отражает рассматриваемое понятие, поскольку слово "запрос" подразумевает лишь выборку (гегпеча1) информации, в то время как с помощью этого языка выполняются также операции обновления, вставки, удаления и др. Кроме языка запросов, в большинстве систем дополнительно предоставляются специализированные встроенные интерфейсы, в которых пользователь в явном виде не использует команд, подобных оператору ЕЕЬЕСТ.
Работа с базой данных осуществляется за счет выбора пользователем необходимых команд меню или заполнения требуемых полей в предоставленных формах. Такие не- командные интерфейсы, основанные на меню и формах, облегчают работу с базами данных тех, кто не имеет опыта работы с информационными технологиями (ИТ; часто употребляется также сокращение ИС вЂ” информационные системы; эти понятия практически эквивалентны). Командный интерфейс, т.е. язык запросов, напротив, требует некоторого профессионального опыта работы с ИТ (безусловно, не такого большого, какой необходим для написания прикладных программ на языке программирования, подобном СОВОЬ).
Однако командный интерфейс более гибок, чем некомандный, к тому же языки запросов обычно включают определенные функции, отсутствующие в не- командных интерфейсах. Глава 1. Базы данньп и управление илга 39 ° Третья группа (не показана на рис. 1.4) — администраторы базы данных, или АБД. Обсуждение функций администраторов баз данных и связанных с ними (что очень важно) функций администраторов данных отложим до раздела 1.4 и главы 2 (раздел 2.7), На этом мы закончим предварительное описание основных аспектов систем баз данных и приступим к более детальному изучению соответствующих идей. 1.3. Что такое база данных Перманентные данные Обычно данные в базе данных называют перманентными или постоянными (хотя на самом деле они могут недолго оставаться таковыми!).
Под словом перманентные (регзпиеп1) подразумеваются данные, которые отличаются от других, более изменчивых данных, таких как промежуточные результаты, входные и выходные данные, управляюшие операторы, рабочие очереди, программные управляющие блоки и вообше все временные (1гапейеп1) по своей сути данные. Точнее говоря, можно утверждать, что данные в базе остаются "перманентными", поскольку после того, как они были приняты средствами СУБД для помешения в базу, удалить их из нее впоследствии можно лишь с помощью соответствующего явного запроса к базе данных, но не как результат какого-либо побочного эффекта от выполнения некоторой программы. Подобный взгляд на понятие перманентностн позволяет точнее определить термин "база данных".
° База данных — это некоторый набор перманентных (постоянных) данных, используемых прикладными системами какого-либо предприятия. Здесь слово "предприятие" — это общий термин для относительно независимой коммерческой, научной, технической илн любой другой организации нли предприятия. Предприятие может состоять всего из одного человека (с небольшой частной базой данных), быть целой корпорацией или другой крупной организацией (с очень большой обшей базой данных) либо представлять собой нечто среднее между этими крайними случаями.
Вот несколько примеров. 1. Промышленная компания. 2. Банк. 3. Больница. 4. Университет. 5. Министерство. Любое предприятие неизбежно использует большое количество данных, связанных с его деятельностью. Это и есть "перманентные данные*', о которых мы говорили выше. Среди перманентных данных упомянутых предприятий обычно встречаются следуюшие. 1. Данные о продукции. 2. Данные о состоянии счетов.
3. Данные о пациентах. 4. Данные о студентах. 5. Данные о планируемой деятельности. 40 Часть ( Основные понятия Замечание. В первых изданиях этой книги вместо термина "перманентные данные" использовался термин "операционные данные". Старый термин отражал первоначальное особое значение операционных или производственных приложений баз данных, т.е. рутинных, часто выполняюшихся приложений, предназначенных для поддержки каждодневной работы предприятия (например, приложений для поддержки депозитов или изъятия наличных денег в банковской системе).