
Ряд аналитиков середины 2010-х отмечали, что язык SQL — один из самых важных и нужных для программистов. Ведь он распространен максимально широко: им пользуется бизнес, государственные учреждения, вузы, финансовые структуры и так далее. В нашей статье — о том, как этот язык появился и какие патенты на него были получены.
История SQL
SQL — один из старых языков запросов к базам данных. Первое упоминание о нем приходится на 70-е годы.
Идеологическая основа языка — научная работа доктора Эдгара Кодда «Реляционная модель данных для больших общих банков данных», вышедшая в 1970 году. Кодд предлагал моделировать данные с помощью математического понятия отношений (они представлены чаще всего в виде таблиц). Концепция ученого позволяла более гибко реагировать на возникающие ситуации: например, новые отношения можно было добавлять даже без изменения уже существующих.
Эта научная позиция понравилась Дональду Чемберлену и Рэймонду Бойсу. Позже Чемберлен вспоминал: «Для Рэя и меня знакомство с реляционной моделью данных на исследовательском симпозиуме Кодда стало откровением. Впервые мы увидели, как запрос, требующий сложной программы на языке DBTG, может быть сведен к нескольким простым строкам с использованием одного из реляционных языков Кодда. Для нас двоих это стало игрой — придумывать запросы и соревноваться друг с другом в их выражении на различных языках запросов».
Используя концепцию Кодда, сотрудники IBM Чемберлен и Бойс придумали SQUARE (который был сложным и многоаспектным), затем появился SEQUEL (Structured English Query Language), который трансформировался в известный всем SQL.
Созданное инноваторами работало неплохо. Поэтому в 1979 году была представлена первая коммерческая реализация SQL под названием Oracle V2. В 1980-м — SQL начал масштабно внедряться в бизнес-секторе.
Что было дальше?
Раз язык охватывал все большее количество секторов, то требовалась его унификация. Это было сделано в 1986 году, когда опубликовали ANSI SQL-86 (или SQL1). Он установил базовые принципы языка (семантику и синтаксис). Через год SQL-86 стал международным.
На этом развитие не остановилось. Через три года, в 1989-м, приняли стандарт SQL-89. В 1992-м появился SQL-92.
Дальше — стандарты разрабатывались по мере необходимости: язык же эволюционировал и требовал отдельных модификаций.
Что с патентами?
Для того, чтобы понять происходящее с патентами, обратимся к профильному поисковому ресурсу. В выдаче — более 100 тысяч наименований защитных документов, касающихся инноваций, связанных с обработкой SQL, базами данных, оптимизацией запросов. При этом ТОП-5 компаний, которым принадлежат эти патенты, выглядит так: на первой позиции — Oracle International Corporation, на второй — International Business Machines Corporation, третье место занимает Microsoft Corporation, на четвертой позиции — Ping An Technology, на пятой — Sap Se.
Поняв расстановку по фирмам, акцентируем внимание на тех патентах, которые в некоторой части характеризуют развитие языка.
В целом патенты можно условно разделить на несколько больших групп.
Первая — период до искусственного интеллекта. Здесь можно выделить, например, патент «Система баз данных на основе SQL с улучшенной методологией индексирования». Автор соединяет концепцию колоночного хранения данных и словарного кодирования, это позволяет сократить затраты памяти, улучшить запросы аналитики, ускорить фильтрацию, группировку и подсчет статистики.

Вторая — постепенное «включение» ИИ. Обратите внимание на патент «Однократное обучение для преобразования текста в SQL». О чем он? Представим себе, что пользователь просит систему показать всех клиентов из города, которые сделали заказ за прошлый месяц. Система строит в автоматическом режиме SQL, основываясь на тысячах примеров. Однако если пользователь формулирует свой запрос иначе или здесь нужен иной (новый) шаблон, с которым система не сталкивалась в обучении, то качество резко падает. Патент помогает не придумывать велосипед с нуля, а использовать уже имеющиеся (готовые) шаблоны.

Третья — акцент на генеративном искусственном интеллекте. Вот и пример патента — «Преобразование естественного языка в SQL для специализированного корпоративного хранилища данных на основе генеративного искусственного интеллекта». Предположим, что пользователь просит составить список клиентов по определенным показателям. Система извлекает основные позиции (сущности и атрибуты) из запроса, определяет бизнес-домен, ищет сведения в нужной части каталога, используя сразу несколько механизмов. Полученные сведения сопоставляются с таблицами и колонками базы данных и ранжируются по релевантности. Далее происходит генерация SQL, ее проверка и объяснение пользователю того, почему были выбраны именно эти таблицы. Новизна указанного патента, конечно, не такая масштабная, как это было в самом начале пути. Однако здесь происходит объединение разных технических элементов в одну корпоративную архитектуру.
Что-то мало патентов. Можно еще примеры?
Конечно.
Расскажем также о нескольких охранных документах.
«Обработка полуструктурированных и неструктурированных данных в сегментированной базе данных». Этот патент помогает решать проблему: как хранить, искать «нестандартные» данные в огромной распределенной базе данных.
«Метод оптимизации запроса, содержащего подзапрос с условием "существует" и подзапрос с условием "не существует"». Здесь — база автоматически переписывает заданный запрос в более эффективную форму. Для пользователя разницы особой нет, но сервер в такой ситуации делает меньше работы.
«Метод оптимизации SQL-запросов, в которых предикат соответствует операндам, допускающим значение NULL». Система анализирует условия, содержащие проверки на значение NULL, а потом переписывает полученное в более эффективную форму.

Также язык популярен в российских компаниях и организациях. Свидетельство тому — сотни свидетельств на программы для ЭВМ, полученные в Роспатенте.
О сервисе Онлайн Патент:
Онлайн Патент — цифровая система № 1 в рейтинге Роспатента. С 2013 года мы создаем уникальные LegalTech‑решения для защиты и управления интеллектуальной собственностью. Зарегистрируйтесь в сервисе Онлайн Патент и получите доступ к следующим услугам:
Онлайн‑регистрация программ, патентов на изобретение, товарных знаков, промышленного дизайна;
Опции ускоренного оформления услуг;
Бесплатный поиск по базам патентов, программ, товарных знаков;
Мониторинги новых заявок по критериям;
Онлайн‑поддержку специалистов.
