_ RU.LINUX (2:5077/15.22) ___________________________________________ RU.LINUX _
From : Andrey Sergeev 2:5020/400 15 May 98 12:34:50
Subj : InterBase - История создания
________________________________________________________________________________
From: Andrey Sergeev <asergeev@borland.ru>
В связи с выходом InterBase 4.0 (в России - IB DataBase) для Linux
RedHat 4.2
немного о его истории. ( автор этого эссе Дмитрий Кузьменко
dima@demo.ru)
InterBase SQL Server был создан, разрабатывался и продавался фирмой
Interbase Software Corporation (ISC). В
соответствии со слухами, сотрудник DEC James Starkey, разработавший DSRI
для Rdb, хотел расширить возможности
Rdb, но его предложения были отвергнуты DEC. Поэтому он создал
собственную компанию, разработавшую
собственную RDBMS, первоначальное название которой было Groton Database
System (GDS).
Во время существования ISC дистрибуцией IB (под названием StarBase)
занималась фирма Cognos Inc, и до
настоящего времени являющаяся одной из основных фирм, оказывающей
технические консультации и
сопровождение по InterBase. Впоследствие фирма ISC была приобретена
компанией Ashton-Tate (в этот момент
James Starkey ушел в Harbor Software), и перешла в Borland при
приобретении последним Ashton-Tate.
При создании и развитии InterBase SQL Server было использовано большое
количество нетрадиционных решений и
новых технологий:
UDF - определяемые пользователем функции. Расширяемость SQL-сервера не
за счет увеличения количества
нестандартных встроенных функций, или реализации сложного встроенного
языка программирования, а при
помощи внешних модулей, создаваемых на компилируемых языках 3GL
(изначально C и в настоящий момент
Delphi).
поля типа "массив" - разработаны по просьбе анонимной
самолетостроительной компании (район Сиэтла). По
техническому заданию компании требовалось хранить данные, получаемые
единовременно с большого количества
датчиков в БД, и обрабатывать эти данные по горизонтали и по вертикали.
В настоящее время этой уникальной
возможностью InterBase SQl Server с успехом пользуются
самолетостроительные, исследовательские компании и
финансовые биржи.
каскадные триггеры - позволяют разбивать на отдельные части логику
обработки вставки, изменения и удаления
записей. Фактически каскадные триггеры позволяют реализовать
"процедурное программирование" обработки
данных, допуская изменение порядка выполнения триггеров и
отключение/включение триггеров "на ходу".
фильтры полей типа blob - пользовательские процедуры (UDF),
подсоединяемые к операциям чтения и записи
данных в поля blob, и позволяющие осуществлять преобразование данных "на
ходу", упаковку/сжатие данных и т.д.
Для каждого подтипа blob могут быть написаны свои фильтры. У термина
blob есть тоже своя история. Вот что
рассказывает James Starkey:
"Барри Рабинсон, мой босс в DEC, ходил кругами и бубнил : "blobs,
blobs, у нас должны быть blobs". Когда я
спросил, что это такое, он ответил что именно я являюсь
архитектором и сам должен знать об этом.
Бездельничая в Колорадо Спрингс по причине снежных заносов, я не
мог выехать на работу и решил заняться
blob-ами. Тут-то я и понял, что это должно быть такое - blob.
Ребята, занимавшиеся Rdb/VMS объявили созданным мною blob-ам войну
- во-первых, они сказали, что
никогда не потеряют в продажах из-за отсутствия blob. Во-вторых,
документы и графика не являются частью
БД и должны храниться в отдельных файлах. В третьих, если даже
нужно хранить документ в БД, то его надо
разбить на строки и хранить именно таким образом.
blob-ы были переименованы в "сегментированные строки", и все-таки
стали частью DSRI.
Hамного позже, маркетер Apollo Терри Маккивер, влюбилась в
концепцию blob, но решила что это слово
должно как-то расшифровываться. В первом варианте это было "basic
large objects". Hо Apollo не
зарезервировало за собой такую "расшифровку", и она привлекла
внимание (я думаю) Informix: было объявлено,
что в будущем Informix будет поддерживать "binary large objects". И
началось ...
Кто-то спросил у менеджера по продуктам DEC о том, будут-ли
поддерживаться blob ? Ответ был такой -
"когда-нибудь в будущем". А между тем группа разработчиков уже была
в курсе blob.
Ashton Tate купила Interbase, Borland купил Ashton Tate, и
расшифровываемый термин BLOb начал
использоваться повсюду. Вот так."
сигнализаторы событий - концепция "активного сервера", уведомляющего
клиентов о наступлении события.
Клиент не должен ожидать события от сервера, а должен "подписаться" на
уведомление. Когда событие
произойдет, сервер сам уведомит подписанного на это событие клиента.
Патент N 5,592,664 .
первая коммерческая реализация двухфазного подтверждения транзакций
(2PC)
Механизм генераторов уникальных чисел - независимый от транзакций и
данных в таблицах механизм,
позволяющий пользователям получать гарантированно уникальные
идентификаторы. см. Генераторы и их
использование.
Множественные поколения записей - обеспечение уровней изоляции
пользователей, блокировки на уровне
записи, гарантия отсутствия блокировок по чтению, быстрое восстановление
БД при сбоях (отсутствие лога отката),
обеспечение производительности OLAP и DSS транзакций.
Все эти технологии, объединенные с простотой установки и
конфигурирования SQL-сервера, делают Borland
InterBase черезвычайно мощным и удобным в работе сервером.
Дополнения
Комментарий James Starkey по поводу некоторых сокращений:
"GDML - Groton Database Manipulation Language. GDS - Groton Database
Systems, первоначальное название Interbase
Software Corporation (обратите внимание что фирма начинается с
"Interbase", а продукт называется "InterBase". Именно
так а не иначе). GDML очень похож на встроенный язык манипулирования
данными DEC Rdb/ELN, который
произошел от DEC Datatrieve language, который в свою очередь произошел
от America's Datalanguage фирмы Computer
Corporation.
GPRE - универсальный языковый препроцессор для InterBase. Он принимает
на вход текст, расширенный
операторами обращения к данным (embedded SQL), выдавая на выходе текст
на C, C++, Pascal, PL/I, Cobol, Pascal,
Ada, со вставками обращений к IB API.
В общем-то GPRE - это то что получается у меня когда я пытаюсь ввести с
клавиатуры слово "grep".
Groton, Ma. - это место где располагается Reedy Meadow Research Center
где Джим, Дон, Гектор и Кассандра создали первую версию InterBase.
Вскоре к ним присоединились Анна (которая жила там) и Дэйв.
Джим и Анна до сих пор вместе, Дон стал Знаменитым Ученым Мужем
Промышленности, Дэйв переехал в Beacon
Hill, а Гектор и Кассандра охотятся на мышей и помногу спят.
А вот blob (тоже обратите внимание на регистр букв) не означает вообще
ничего."