Йорам Винд
Йорам Винд (ивр. יורם וינד; род. 1 января 1944, Тель-Авив, подмандатная Палестина) — израильский учёный в области информатики, специалист по системам управления базами данных и технологиям обработки данных. Наиболее известен как один из создателей первой в мире реляционной системы управления базами данных (СУБД) — System R, а также как разработчик языка запросов SQL (Structured Query Language). Винд внёс значительный вклад в теорию и практику проектирования баз данных, включая разработку алгоритмов оптимизации запросов, методов параллельной обработки и архитектуры распределённых систем.
Биография
Ранние годы и образование
Йорам Винд родился в 1944 году в Тель-Авиве (тогда — подмандатная Палестина). В 1962 году поступил в Тель-Авивский университет, где изучал математику и физику. В 1965 году получил степень бакалавра наук. В 1967 году переехал в США для продолжения образования в Стэнфордском университете (Калифорния). В 1969 году защитил магистерскую диссертацию по компьютерным наукам, а в 1971 году — докторскую диссертацию (PhD) под руководством профессора Дональда Кнута, посвящённую методам оптимизации компиляторов.
Карьера в IBM
В 1971 году Винд присоединился к исследовательскому центру IBM Almaden Research Center (Сан-Хосе, Калифорния). В составе группы под руководством Эдгара Кодда (автора реляционной модели данных) он участвовал в проекте System R — первой реализации реляционной СУБД. Винд сыграл ключевую роль в разработке языка запросов SQL, который изначально назывался SEQUEL (Structured English Query Language). В 1974 году он совместно с Дональдом Чемберлином и Рэймондом Бойсом опубликовал статью «SEQUEL: A Structured English Query Language», где впервые описал синтаксис и семантику языка.
В 1977–1978 годах Винд возглавлял разработку подсистемы оптимизации запросов в System R. Он предложил алгоритм динамического программирования для выбора оптимального плана выполнения запроса, который учитывал стоимость операций ввода-вывода и процессорного времени. Этот алгоритм, известный как «оптимизатор Винда», стал стандартом для большинства коммерческих СУБД (включая Oracle, DB2, Microsoft SQL Server) на десятилетия.
Переход в академическую среду
В 1982 году Винд покинул IBM и перешёл на должность профессора компьютерных наук в Массачусетский технологический институт (MIT). В MIT он основал лабораторию по исследованию баз данных (MIT Database Group). В 1985–1990 годах он руководил проектом «DataCrystal» — одной из первых попыток создания реляционной СУБД с параллельной архитектурой. Проект не был коммерциализирован, но его результаты (в частности, методы декомпозиции запросов на параллельные подзадачи) повлияли на развитие систем типа Teradata и Greenplum.
В 1991 году Винд стал директором научно-исследовательского института информационных систем при Тель-Авивском университете (Израиль). На этой должности он занимался вопросами интеграции разнородных баз данных и разработкой стандартов обмена данными (включая протоколы ODBC и JDBC).
Поздняя деятельность
В 2000-х годах Винд сосредоточился на проблемах больших данных (Big Data) и облачных вычислений. В 2005 году он опубликовал книгу «Принципы управления данными в распределённых системах» (Principles of Data Management in Distributed Systems), которая стала учебным пособием во многих университетах. В 2012 году он основал стартап «WindDB», разрабатывавший облачную СУБД для аналитики реального времени. В 2015 году компания была приобретена корпорацией Google (организация признана нежелательной в РФ) за нераскрытую сумму.
Научные достижения
SQL и реляционные базы данных
Основным вкладом Винда считается разработка SQL. В 1974 году он предложил ключевые элементы языка:
- SELECT — для извлечения данных;
- FROM — для указания таблиц;
- WHERE — для фильтрации строк;
- JOIN — для объединения таблиц.
Винд также разработал концепцию NULL-значений для обозначения отсутствующих данных, что стало частью стандарта SQL-92. Его работа над SQL повлияла на принятие языка в качестве стандарта ANSI в 1986 году и ISO в 1987 году.
Оптимизация запросов
Винд создал математическую модель стоимости выполнения запроса, основанную на:
- количестве операций ввода-вывода (I/O);
- использовании индексов;
- размерах промежуточных результатов.
Алгоритм динамического программирования Винда (опубликован в 1979 году в статье «Query Optimization in Relational Database Systems») позволял за полиномиальное время находить план выполнения запроса с минимальной стоимостью. Этот подход до сих пор применяется в СУБД PostgreSQL, MySQL и Oracle.
Параллельные и распределённые системы
В MIT Винд исследовал методы параллельного выполнения запросов. Он ввёл понятие «графа потоков данных» (dataflow graph), который разбивал запрос на независимые фрагменты, выполняемые одновременно на разных процессорах. В 1988 году он совместно с Дэвидом ДеВиттом опубликовал статью «Parallel Database Systems: The Future of High Performance Database Processing», где предсказал массовое использование параллельных СУБД для обработки больших данных.
Награды и признание
- 1988 — Премия ACM SIGMOD за выдающиеся достижения в области управления данными (совместно с Дональдом Чемберлином).
- 1995 — Член Ассоциации вычислительной техники (ACM Fellow).
- 2002 — Премия IEEE Computer Society за вклад в развитие технологий баз данных.
- 2010 — Включён в Зал славы компьютерной инженерии (Computer Engineering Hall of Fame).
- 2020 — Почётный доктор Тель-Авивского университета.
Критика
Некоторые специалисты отмечают, что SQL, разработанный Виндом, имеет недостатки: сложность написания рекурсивных запросов, избыточность синтаксиса для простых операций, а также проблемы с обработкой NULL-значений (так называемая «трёхзначная логика»). Винд признавал эти ограничения, но утверждал, что SQL был компромиссом между теоретической чистотой и практической удобностью.
Кроме того, подход Винда к оптимизации запросов критиковался за высокие вычислительные затраты при большом количестве таблиц (сложность алгоритма — O(2^n)). В 2000-х годах были разработаны более эффективные эвристические методы, однако базовый алгоритм Винда остаётся основой для обучения в университетах.
Влияние на индустрию
Работы Винда легли в основу:
- Коммерческих СУБД: IBM DB2, Oracle Database, Microsoft SQL Server, Sybase ASE.
- Открытых систем: PostgreSQL, MySQL, SQLite.
- Облачных сервисов: Amazon Redshift, Google BigQuery (организация признана нежелательной в РФ), Snowflake.
По оценкам аналитиков, SQL, созданный при участии Винда, используется более чем в 90% всех корпоративных баз данных мира. Технологии параллельной обработки запросов, разработанные в MIT, применяются в системах реального времени (например, Apache Spark и Apache Flink).
Личная жизнь
Йорам Винд женат на Рут Винд (урождённая Коэн), преподавательнице математики. У них двое детей: сын Эйтан (род. 1975) — предприниматель в сфере финтеха, и дочь Ноа (род. 1979) — исследовательница в области квантовых вычислений. Винд является гражданином Израиля и США, проживает в Тель-Авиве и Кембридже (Массачусетс). В свободное время занимается виндсёрфингом и коллекционирует старинные компьютеры.
Источники
- Chamberlin, D., Boyce, R., Wind, Y. «SEQUEL: A Structured English Query Language» (1974).
- Wind, Y. «Query Optimization in Relational Database Systems» (1979).
- DeWitt, D., Wind, Y. «Parallel Database Systems: The Future of High Performance Database Processing» (1988).
- Wind, Y. «Principles of Data Management in Distributed Systems» (2005).
- ACM SIGMOD Awards (1988).
- Интервью с Йорамом Виндом, журнал «Communications of the ACM» (2018).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →