Воссоединение SQL в 1995 г. люди, проекты, политика

Tandem


Джон Науман

: В это время Франко работал на меня в Tandem, и я уверяю вас, что мы никуда не посылали его в качестве двойного агента. Это была действительно драматическая потеря для Tandem. Я пришел в Tandem в 1981 г. сразу после Джима. Это был интересный опыт, потому что в это время в Tandem имелись средство запросов ENFORM и файловая система ENSCRIBE, и у них в стадии производства находилось средство управления транзакциями TMF (Transaction Monitoring Facility). Мы с Джимом много работали над TMF - над подготовкой и запуском; немного - над ENSCRIBE. Кроме того, Джим писал телефонный справочник ...

Джим Грей

: TELE.

Джон Науман ... а я писал программу FULIST. Когда и пришел в Tandem, он сказал мне, что я должен внести свой вклад в области кодирования, и я потратил больше времени, чем хотелось, на изучение причудливых особенностей терминала [6520]. Когда я пришел, то надеялся заняться транзакционной системой, которую они начали делать, и превратить ее в нечто, что, как я думал, мы умеем делать, на основе того, что бы сделали в System R: преобразовать ее в DB2. Я думал, что на основе всего опыта работы с Eagle и менеджерами блокировок и восстановления мы многому научились и можем сделать все это лучше в Tandem для их архитектуры NonStop.

Джим Грей

: И мы были уверены, что IBM никогда не будет это поставлять.

Джон Науман

: Верно.

Джим Грей

: Потому что, вы знаете, организация, я имею в виду, что я не знаю, был ли к этому времени План B преобразован в План A ...

Джон Науман

: Да, был. Но ты был уверен, что система никогда не будет поставляться; как я помню, я думал, что это произойдет в течение шести месяцев. Ты был ближе к правде. Мы привлекли Франко к тому, чтобы написать базовые средства управления данными для реляционной системы баз данных, которую мы хотели построить. И в течение следующих, вероятно, трех лет мы пытались собрать группу NonStop SQL, как стали называть в конце концов завершенный продукт. Это было ужасно, поскольку имелся конкурирующий продукт. Та же история, что и FS в IBM; имелся продукт под названием Rainbow, и Rainbow была развивающейся системой. Rainbow включала все, что только ... там работал Джим, когда я присоединился. Вскоре после моего прихода Джим ушел из Rainbow, переехал и занялся реальной работой. Но проект Rainbow всегда оттягивал ресурсы от того, что мы делали, и, если посмотреть на то, что мы могли бы сделать за шесть месяцев, за пять лет, за десять лет, иногда мешал нашему продвижению. Не могу вспомнить, сколько раз Франко приходил в мой офис и внушал мне, что этот нонсенс с Rainbow следует остановить. Мы должны были стать серьезными и делать продукт. К 1983 г. мы, наконец, смогли накопить критическую массу и, как я думаю, стали добиваться действительно хорошего прогресса. Франко работал с Андреа Борр и еще несколькими людьми ...


Джим Грей

: Луиз Мадрид (Louise Madrid) пришла из Britton-Lee через Esvel.

Джон Науман

: Она пришла после ухода и возвращения Франко. Но в любом случае, достигалась критическая масса группы. Андреа отстранилась от TMF для работы над средствами базовой файловой системы, и мы действительно начали достигать существенного прогресса, и затем Франко ушел. Это было ...

Франко Путцолу

: ???

Джон Науман

: Да, но тогда я этого не знал. Это было действительно неприятно. А потом Франко вернулся, и к нам присоединился Дон [Слац], и все стало происходить гораздо лучше.

К. Мохан

: Почему он ушел?



Джон Науман

: Ему не нравился его менеджер.

Том Прайс

: Капали собирался сделать его богатым.

Джон Науман

: Я думаю, что был соблазн раскрутки работы.

Франко Путцолу

: Да, это так.

Джим Грей

: Нет, все было сложнее. Была эта презентация; я сидел в большой аудитории. Деннис МакЭвой, который теперь является главой инженерного отделения в Sybase, поднялся и рассказал о том, какой замечательной системой будет Rainbow. И прямо в середине собрания Франко встал. Он сидел в центре аудитории; он пробрался между людьми; он прошел через проход; он вышел; он ушел в Esvel и принял задание. Это его окончательно достало.

Джон Науман

: Я покинул Tandem до того, как была сделана система NonStop SQL, но она была сделана, и я слышал ото всех, что это была выдающаяся работа. На основе своего опыта работы над FS в IBM и над Rainbow я понял, что в любой компании, на которую мне приходилось работать, существует одна и та же ситуация: всегда имеется продукт следующего поколения. Всегда имеется грядущий продукт, который должен решить все проблемы, и вы должны вкладывать в него все ресурсы и фактически стопорить то, над чем происходит текущая работа. Не беспокойтесь о механизме смены поколений. Это прошлое; вы должны смотреть в будущее. Я никогда не работал в компании, где бы это сработало. Доводом всегда является то, что имеется в настоящее время - это истина также и System R - у нас была System R; это то, с чем нам следовало работать. Мы не должны были беспокоиться об изменении способа работы SYSGEN и об ее устранении, и о полностью новой аппаратной архитектуре, и о полностью новой архитектуре программного обеспечения, и об объектах, поддерживающих реляционные представления, или сетевые представления, или иерархические представления, или что-нибудь еще. Мы должны были стараться делать несколько более мелкие шаги, но в направлении гораздо более достижимой цели. Ужасно говорить это, посколько настолько привлекательно посмотреть на что-нибудь и сказать: "Мы можем изменить мир. Мы можем сделать нечто действительно важное". Но проблема в том, что лишь немногие из этих попыток удаются. Все наиболее успешные программные продукты - происходят ли они из IBM, Tandem или Microsoft - получились со второй или третьей попытки. Не с первого раза, когда это блестящий предмет, который все любят.



Майк Блазген

: На самом деле, одной из причин, по которой мы здесь собрались, является то, что System R относится к одному из немногих случаев, когда новый поход оказался подходящим.

Джон Науман

: Но не продуктом.

Майк Блазген

: Почти всегда правильно улучшать старый подход. Почти правильно было улучшать IMS. Но изредка возникает возможность сделать что-то новое, и у нас она была.

Джон Науман

: Но отличие в том, что System R не была будущим IBM - будущим IBM была FS, и будущим Tandem была Rainbow, и как только вы делаете ставку на что-то от имени всей компании, вы начинаете терять ... Я рассматриваю System R как очень хорошую идею, которая позволила добиться существенного прогресса за кулисами.

Майк Блазген

: Я понимаю разницу; ты прав.

Джон Науман

: Некоторое время я работал в 3Com, и когда я там работал, Ethernet как раз начал становиться тем, что люди воспринимали как нечто важное. Компания 3Com прошла через ряд различных направлений с этими превосходными новыми системами, которые все порождали в компании проблемы, пока не сосредоточилась на том, что составляло ее реальный бизнес. Это был Ethernet. В некотором роде, они изобрели это, а потом стали продвигать. System R представляла собой нечто, что было изобретено, а потом развивалось в очень логичной, разумной последовательности. Это не была вещь, меняющая мир за одну ночь. Я думаю, что такие попытки очень опасны. Об этом говорит мой опыт в Tandem. Франко, не хочешь ли ты рассказать о том, как была завершена работа над NonStop SQL, и как был произведен выпуск?

Франко Путцолу

: На самом деле, проект завершился достаточно успешно. Посмотрите: мы стартовали в 1984 г. и пришли к бета-версии в 1987 г.; я думаю, что это вполне приемлемо.

Джим Грей

: Могу я тебя перебить и сказать кое-что? В 1984 г. мы сказали: "По-видимому, это займет три или четыре года, и мы не рассчитываем иметь продукт до 1987 г.". И Деннис МакЕвой сказал: "Что? Я должен ждать до 1987 г., чтобы получить SQL-систему? Забудьте об этом." И поэтому мы предоставили ему план с пятьюдесятью процентами уверенности и план с девяноста процентами уверенности. По первому плану работа должна была быть завершена в 1986 г., по второму - в 1987 г. И он сказал: "Ох, OK".



Джон Науман

: Но подход Франко заключался в том, что каждый раз я шел к нему и спрашивал, как долго это будет делаться: "Франко, когда ты собираешься сделать это?" "Я сделаю это, когда сделаю."

Франко Путцолу

: Да, но от нас требовалось завершить работу в 1987 г. Мы отстали месяца на три, что не было слишком плохо, и я думаю, что это была хорошая система, по крайней мере, ее низкоуровневое ядро; возможно, я пристрастен, потому что работал над ним. Я имею в виду, что это действительно было ядро, которое масштабировалось насколько угодно, производило восстановление после сбоев в течение секунд, обладало оперативно доступными утилитами всех сортов, включало правильную реализацию блокировок - ни в одной другой системе блокировки не были реализованы правильно. [смеется] С другой стороны, конечно, имелись и некоторые минусы. Минимальная функциональность: действительно базовый, базовый SQL. Мы сделали несколько серьезных ошибок, и я ответственен за некоторые из них. Мы не очень старались приклеиться к ANSI; мы старались сделать систему интегрированной с GUARDIAN: собственное именование; собственная модель безопасности. Я думаю, что виновен в части именования, и это была серьезная, серьезная ошибка. Было приятно работать над системой. Джим, ты хочешь что-нибудь сказать по этому поводу?

Джим Грей

: Да. Вероятно, ключевой особенностью этой системы было то, что первый выпуск предназначался для OLTP; первый выпуск предназначался для обработки транзакций, и это было в 1987 г. Затем люди пошли дальше и сделали параллельный SQL, который поставлялся примерно в 1989 г., и я думаю, что Майк Понг (Mike Pong) мог бы рассказать об этом. В последние четыре или пять лет они усердно работали, чтобы сделать систему оперативной и высоко доступной. Среди средств, которые они сделали, возможность добавлять индексы на фоне изменений базы данных; реорганизация базы данных на фоне обновлений и выборок. Это интересные алгоритмы. У них не было ссылочной целостности; у них не было триггеров; у них не было внешних ключей; и т.д. Но с другой стороны, они имели много вещей, полезных для повседневных сохранения и выборки данных. Интересно посмотреть, что было потом.



Франко Путцолу

: Ядро было хорошим, и действительно интересно, что в 1989 г. у нас имелось параллелльное выполнение; три или четыре года в Tandem не делалось ничего по поводу параллельного выполнения, а потом они неожиданно обнаружили этот большой рынок DSS. Но было немного поздно; к этому времени такое открытие сделали и другие люди.

Джим Грей

: Майк Понг, ты не хочешь сказать что-нибудь о ...

Майк Понг

: Я присоединился к проекту NonStop SQL для работы над оптимизатором через несколько месяцев после начала проекта в 1984 г. Больше всего мне запомнилось то, что к моему приходу Франко завершил большую часть исполнителя. Это застряло у меня в памяти, потому что никто другой даже и не пытался осознать проект в целом! В первом выпуске мы не использовали возможности параллельной архитектуры Tandem для внутреннего распараллеливания запросов. Вскоре после начала поставок первого выпуска мы с еще одним разработчиком начали работать над внутренним распараллеливанием запросов с помощью Джима и Франко. Проектирование и реализация заняли около двух лет. Когда работа была закончена, мы были очень взволнованы, увидев на самом деле линейное масштабирование и ускорение для больших запросов. К несчастью для Tandem, продвижение этой возможности на рынке началось только два года тому назад.

Пат Селинджер

: Есть ли еще истории про Tandem? Боб Джойллс?

Боб Джойллс

: Мне нечего добавить.

Пат Селинджер

: Отлично. Теперь очередь Oracle.

(69) S. Andler, I. Ding, K. Eswaran, C. Hauser, W. Kim, J. Mehl and R. Williams. "System D: A Distributed System for Availability". Eighth International Conference on Very Large Data Bases, Mexico City (September 8-10, 1982).

(70) Замечание Джима Мехла: "Рон Ревель мог непродолжительное время заниматься исследованиями в области аппаратуры в начале System D, но он несомненно не принимал участие в работе над программным обеспечением, которое стало называться System D." Пояснение Дона: "Я вспомнил, что сначала Рон работал над процессором (и я думал, что он будет использоваться в System D). Когда в System D стали использовать Series 1, Рон переключился на работу над средствами сетевых соединений. Вскоре после того, как эта работа прекратилась, я взял Рона обратно.



(71) D. Bitton and C. Turbyfill. "Benchmarking Database Systems, a Systematic Approach", Proc. VLDB, Florence, Italy (1983).

(72) Rainbow была совершенно новой системой (архитектура, операционная система, база данных и т.д.), предназначенной для замены T16. В конечном счете, этот проект был прекращен, и был запущен проект под названием Crystal для создания маломасштабной, простой для использования системы. В свою очередь, Crystal заменила Catalyst, сильно интегрированная, транзакционная, простая для использованию клиент-серверная система (PC/T16). Около 1990 г. на базе Catalyst была образована новая компания Cooperative Solutions, основанная Деннисом МакЭвоем (Dennis McEvoy), его женой Ким Ворсенкрофт (Kim Worsencroft) (которая была лидером и вдохновителем проекта Catalyst) и еще несколькими людьми из Tandem. В конечном счете, они создали продукт с названием Ellipse, основанный на OS/2 и Sybase. Cooperative Solutions была куплена компанией Bachman Information Systems, которая теперь занимается маркетингом Ellipse.

(73) На самом деле, Ethernet был изобретен в Xerox PARC.

(74) DSS обозначает Decision-Support System.

Страницы: 9


Содержание раздела