Возможности SQL в Tarantool
SQL в Tarantool — это крупная новая возможность, впервые появившаяся в версии Tarantool 2.1.
Основные преимущества:
- высокий уровень совместимости с SQL
- простой переход от NoSQL к SQL и обратно
- бренд Tarantool.
«Высокий уровень совместимости с SQL» включает поддержку соединений, подзапросов, триггеров, индексов, группировок, транзакций в многопользовательской среде, а также соответствие большинству обязательных требований стандарта SQL:2016.
«Простой переход» означает, что одни и те же таблицы можно обрабатывать с помощью SQL и с помощью давно существующего продукта Tarantool-NoSQL. Это значит, что стандартные задачи реляционных СУБД можно решать средствами SQL, а при необходимости доступны возможности NoSQL (Tarantool-NoSQL превосходит другие продукты NoSQL в публичных бенчмарках).
«Бренд Tarantool» обеспечивается поддержкой со стороны многомиллиардного провайдера интернет-сервисов / почты / социальных сетей, штатом из десятков профессиональных программистов и специалистов поддержки, сообществом, приверженным лицензии BSD с открытым исходным кодом, а также сотнями корпораций и государственных организаций, уже использующих продукты Tarantool в промышленной эксплуатации.
Статус SQL-возможности Tarantool — «release». Она работает, и в этом можно убедиться, скачав продукт и опробовав все возможности, которые описаны далее в этом документе. Также доступен учебник.
Отличия от других SQL-продуктов: Согласно требованиям к проектированию Tarantool, её SQL соответствует большинству перечисленных обязательных требований базового стандарта SQL:2016. Это подтверждается конкретными заявлениями о соответствии в списке возможностей в разделе «Соответствие официальному стандарту SQL». Возможно, наиболее заметные отклонения, которые обнаружат пользователи: менее строгая проверка типов, а также некоторые операции определения данных необходимо выполнять с использованием синтаксиса NoSQL.
Отличия от других NoSQL-продуктов: Сравнивая попытки других разработчиков добавить относительно небольшие подмножества SQL в NoSQL-продукты, можно прийти к выводу, что SQL в Tarantool обладает заметно большим набором возможностей и функций. Причина в том, что разработчики Tarantool начали с полной кодовой базы работающей SQL СУБД и интегрировали её с Tarantool-NoSQL на нижнем уровне, а не брали NoSQL СУБД и добавляли к ней синтаксис.
Данный документ состоит из следующих частей:
Руководство пользователя SQL описывает, как начать
работу, и разъясняет термины и элементы синтаксиса, применимые ко всем SQL-операторам.
Руководство SQL-операторы и конструкции описывает для
каждого SQL-оператора формат, правила, исключения, примеры и ограничения.
Руководство SQL и Lua содержит
подробности о вызове Lua из SQL, вызове SQL из Lua и использовании одних
и тех же объектов базы данных как в SQL, так и в Lua.
Список Возможности SQL показывает, насколько продукт соответствует
обязательным возможностям стандарта SQL.
Предполагается, что пользователи знают, что такое базы данных; опыт работы с другими SQL СУБД будет преимуществом. Основы реляционных баз данных и SQL в частности можно изучить в Руководстве для начинающих по SQL в разделе Практические руководства.