Как стать автором
Обновить

Как прикрутить SQL к чему угодно при помощи Apache Calcite

Время на прочтение 11 мин
Количество просмотров 13K
Всего голосов 28: ↑28 и ↓0 +28
Комментарии 5

Комментарии 5

Сама идея делать sql на основе nosql попахивает махровой романтикой. Таких проектов за последние 15 лет было очень много и несмотря на красивые картинки они по-прежнему уступают в рыночной доле традиционным решениям.

Хотя, безусловно, с инженерной точки зрения Calcite впечатляет.

SQL прикручивают совершенно разные проекты, от NoSQL баз данных до no-code платформ для построения веб-сайтов. В большинстве своем, у таких проектов не стоит конкретной цели радикально пошатнуть позиции какого-либо гиганта.

Поддержка SQL - это способ завоевать дополнительных пользователей благодаря его широкому распространению, и возможности интеграций с большим количеством сторонних приложений.

Я в одном из проектов использую Prest/Trino. Мотивация была такая что нужно было делать запросы к двум базам PostgreSQL. Уже после начала проекта узнал что есть еще Apache Drill и Impala. Но не подошли. Одна потому что не поддерживает нестандартные возможности PostgreSQL (json, enum) другая потому что клиент был только java. Оказалось что Trino для моего кейса удобнее. Trino умеет взаимодействовать и с nosql и длеать практичепски немыслимые кросс-платформенные join.
Про calcite ввобще ничего не нахолдил в посиковой выдаче хотя целенапровленно не так давно искал информацию по этой теме.

А trino jsonb понимает? И функции работы с ним?

Да работает. Именно этого не хватает в presto от которого форкнули trino его фактические разработчики после ухода из фб
Но функции работы с ним нет. У trino есть для этого свои методы работы с json. То есть фактически работает но после перекачки на сторону trino. Если select с фильтром по полю jsonb то будет медленно так как будут извлекаться все данные из postgres.
Но другие кроме trino движки jsonb даже прочитать не могут

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.