Введение в системы БД (542480), страница 34
Текст из файла (страница 34)
— 21, № 1. Опыт реализации предыдущего прототипа языка БЕ()()ЕЬ, описанного в [4.1], и результаты проверок практичности, отчет о которых содержится в [8.28], привели к разработке новой версии языка, названной БЕОЫЕЬ!2. Язык, поддерживаемый системой Буыет К [4.2], [4.3], был, в основном, похож на БЕО()ЕЫ2 (с заметным отсутствием возможностей так называемых "утверждений" и "триггеров"; подроб- ности приводятся в главе 8), плюс некоторые расширения, появившиеся в резуль- тате учета опыта пользователей [4.10]. 4.8.
4.9. Ргос. 1пс. Сопб оп РагаЪазе. — АЬегдееп, Бсог!апд, 1Ыу, 1980. (См. также 1ВМ КезеагсЬ КероП К)2767. — Арп1, 1980.) В статье обсуждается ранний опыт использования системы Буыеш К и предлагают- ся некоторые дополнения языка Б НЬ в свете этого опыта. Некоторые из этих до- полнений — операторы ЕХ18ТЕ, ЫКЕ, РЕЕРХЕЕ и ЕХЕСЕТŠ— действительно были реализованы в окончательной версии Буягеш К, Замечание. Подробности приводятся в главе 7 и приложении А, в которых обсуж- даются операторы ЕХ18ТЕ и ЫКЕ соответственно.
4.11. СЬатЪег11п В.Р. ег а!. Бцрроп гог Керегй[не Тгапзасйопз апд Ад Нос Оцепез 1и Буыет КйАСМ ТОРБ. — МагсЬ, 1981. — 6, № 1. В статье приводятся некоторые результаты оценки производительности системы Бугнет К как в среде выполнения произвольных запросов, так и в среде выполнения стандартных транзакций. (Стандартные транзакции — это простое приложение, которое имеет доступ лишь к небольшой части базы данных и перед выполнением предварительно компилируется. Это соответствует тому, что мы называли нланируемым запросам в главе 2 в разделе 2.8) Измерения производились на компьютере 1ВМ Бумет 370 Моде! 158 в системе Бужеш К, выполняющейся под управлением операционной системы ЧМ. Эти измерения названы предварительными.
Тем не менее с учетом этого предупреждения статья, кроме всего прочего, демонстрирует, что компиляция почти всегда превосходит интерпретацию, даже для произвольных запросов, и что система, подобная Бумет К, способна выполнять несколько стандартных транзакций в секунду, если предусмотреть в базе данных соответствующие индексы. Статья достойна внимания, поскольку она была одной из первых статей, показавших несостоятельность заявлений (которые в то время можно было слышать очень часто), что '*реляционные системы никогда не будут иметь хорошие эксплуатационные качества".
Безусловно, со времени этой первой публикации коммерческие 141 Глава 4. Введение в язык ЯДА 4.10. СЬапзЬег1ш Р.Р. А Бшптагу ор Ояег Ехрепепсе а[гЬ гйе Б()Ь Рага БцЫап8ца8е й реляционные продукты достигли такой скорости выполнения транзакций, что за секунду могут выполняться сотни и даже тысячи транзакций. 4.12. СЬапзЬег!!и Р.Р.
е1 а!. А Н!в1огу апд Еча!цайоп об Буввещ К 0 САСМ. — ОсгоЬег, 1981. — 24, № 1О. Описываются три основные фазы развития проекта Бумещ К (предварительный прототип, многопользовательский прототип и оценочный вариант); основное внимание уделяется технологиям компиляции и оптимизации, которые использовались в Бувгещ К впервые. Частично эта статья пересекается с 14.13). 4.13, СЬащЬегйп Р,Р., ОКЬеп А.М., Уом К.А. А Нппогу оГ Бумещ К апб БО / Рава Бумещ // Ргос. 7Й 1пгегп. Сопб оп Чегу Ьагйе Рага Вавев.
— Саппев, Ггапсе, БергещЬег, 1981. Обсуждаются уроки, полученные в результате использования прототипа системы Був1епз К, а также описывается эволюция этого прототипа до первого семейства реляционных продуктов РВ2 компании ! ВМ, а именно — БОЬ/РБ (переименованного впоследствии в РВ2 !Ьг ЧМ апб ЧБЕ). 4.14. Раве С.1. А Сгй!Чце оГ гйе БОЬ РагаЪаве Ьапйцайе 0 АСМ Б!ОМОР Кесогй— !ч!очещЬег, 1984.
— 14, № 3. (Переиздано: С.1. Ваге. Ке!айопа) РагаЬаве: Бе!есвеб 'чЧг!1!пйв. — Кеайпй, Мазал Абйвоп-'чЧев!еу, 1986.) Как уже подчеркивалось в этой главе, язык Б()Ь далек от совершенства. В статье представлен критический анализ его принципиальных недостатков (в основном, исходя из требований к формальному компьютерному языку вообще, а не из требований к языку баз данных). Заиечаиие. Некоторые критические замечания из этой статьи не относятся к стандарту БОЬ/92. 4.15. Раге С3. %марв зЧгоп8 ччйЬ БОЬ? 0 С3. Раге. Ке!айопа! РазаЬаве %г!1!п8в 1985— 1989.
— Кеайп8, Мазал Абб!воп-%ев!еу, 1990. Обсуждаются некоторые недостатки языка БОЬ в дополнение к описанным в 14.14) под заголовками "Недостатки собственно языка БОЬ", "Недостатки стандарта Б()Ь" н "Переносимость приложений". Заиечание. Некоторые критические замечания из этой статьи не относятся к стандарту БОЬ/92.
4.16. Ра1е С3. Б Ь Ров апй Ропйя // С3. Раве. Ке!айопа! Ра1аЬаве %г!г!пйв 1985 — 1989.— Кеайпй, Мавв.: Абб!воп-Фев!еу, 1990. В статье предложены некоторые практические советы по использованию языка БОЬ таким образом, чтобы избежать потенциапьных ловушек, вызванных недостатками этого языка, которые описаны в )4.!4), )4.15), [4.18), и получить максимальные преимущества по продуктивности, переносимости, связности и т.п. 4.17.
Раве С3. Ночч %е МВвед 1Ье Ке!айопа! Воа! // Ке!аг!опа1 РаваЬаве %г!г!пйв !991- 1994. — Кеайпй, Мазал Адб!воп-%ев!еу, 1995, Краткое заключение о недостатках языка Б()Ь, имеющих отношение к поддержке (или отсутствию таковой) некоторых аспектов реляционной модели: структурных, аспектов обработки и поддержки целостности. 4.18.
Ра!е С3. Ог!чоцв Вой!у Напп (в двух частях) 0 РВРАР. — )опе, 1998. — 11, № 5, 6. г !йу й/аув 1о ()негу 0 ЧчеЬ-узел РВРесР ини. 4Ьрб. сов, — )ц!у, 1998. 142 Часть 1. Основные понятии Язык Б()Ь чрезмерно избыточен в том смысле, что если не все, то большинство простых запросов могут быть выражены различными способами.
В статьях это показано на примерах; также в них обсуждаются возможные последствия избыточности языка БОЬ. В частности показано, что предложения ОКООР ВТ, НАЧ1НО и переменные диапазонов можно с пользой исключить из языка, не потеряв при этом никаких функциональных возможностей (то же самое справедливо и для конструкции "1Н <подзвпросул). Зачечание. Все перечисленные выше конструкции поясняются в главе 7 и приложении А. 4.19.
Ра!е С.1., Рагзнеп Н. А ОцЫе 1о бзе БОЬ Б(апбагс$ (4!Ь ей1юп). — Кеайпй, Мазал АсЫ! зоп-Фез!еу, 1997. Полное руководство по стандарту Б()Ь!92, включая средства СЬ1 и РБМ. В частности, в приложении Р приведены "многие аспекты стандарта, которые на сегодняшний день определены неадекватно или даже неверно". Замечание. Публикации (4.4], 14.27) также являются руководствами по стандарту БОЫ92.
4.20.Разе С.1. аост Со!!и 1.ЧЧ. А ОцЫе зо РВ2 (4й ес$!1!оп).— Кеаб(пй, Маьзс Аййзоп-ЧЧез!еу, ! 993. В книге дается обширный и детальный обзор СУБД РВ2 компании !ВМ (по состоянию на 1993 год) и некоторых ее сопутствующих продуктов.
СУБД РВ2, как и БОЬ1РБ, была основана на системе Бузгеш К. 4.21. Р!зйшап 1~. Б()Ь бц )оцг. Д РВРхР. — 1997. — ! О, № 10. Скучный обзор некоторых неточностей, найденных в БОЬ-продуктах, которые были объявлены как "поддерживающие стандарт БОЬ". 4.22. 1пгегпазюпа! Огдапьзайоп Рог Бгапбагйказ!оп (1БО); РагаЬазе Ьапяцайе БОЬ.
Росишепз 1БО/1ЕС 9075, 1992. Также доступно как Ащепсап )Чаг!опа! Бгапоагбз!пзейще (АЬ1Б!) Росшпепг АХБ! ХЗ.!35-1992. Оригинальное определение стандарта!БО/АХБ! БОЬ/92 (также называемое среди знатоков 1БО!1ЕС 9075 или просто 1БО 9075). Первоначальный документ, состоящий из одной части, был со временем расширен до неограниченной серии отдельных частей под общим названием "1пзоппаз!оп Тесйпо!обу — РагаЬазе Ьапйцайез — БОЬ".
На время написания книги были определены следующие части (хотя, конечно, не все завершены). Часть 1. Структура (БОЬ/Ргашеюогк) Часть 2. Основы (БОЬ1Роцпба!1оп) Часть 3. Интерфейс на уровне вызова (БОЬ/СЬ!) Часть 4. Постоянные хранимые модули (БОЬ/РБМ) Часть 5. Связь с базовым языком (БОЬ~В!пйпйз) Часть б, Специализация ХА (БОЬ/Тгапзас11оп) Часть 7. Хронологические функции (БОЬ!Тетрога!) Часть 8. (Этой части нет) Часть 9.
Управление внешними данными (БОЫМЕР) Часть 10. Связь с объектным языком (БОЫОЬВ) Глава 4. Введение в язык ЯДА 143 Проекты 5ОЬЗ, которые, как ожидается, будут утверждены в 1999 году, логически будут входить в части 1, 2, 4 и 5. Рабочие черновики, в которых описаны этн проекты, можно найти на %еЬ-узле сСрс//3еггу.
есе. иваввгЬ еби/саоид3/6Ь1/йабйбосв/рсйэЬ[с. Замечание. Стоит упомянуть, что, хотя язык 5ОЬ часто считается международным стандартом "реляционных" баз данных, в документе стандарта это не утверждается; на самом деле в документе вообще не используется термин "реляционный"! (Как говорилось ранее в сноске, в нем не упоминается и термин "база данных".) 4.23. 1пСегпабопа1 Огйап!хаг!оп Гог бгапбагс)1гаС]оп (!50); 1п(оппабоп ТесЬпосойу — РаСаЬазе Ьапйиа8ез — Я)Ь вЂ” ТесЬп!са! Сопбйепбигп 2.