- PVSM.RU - https://www.pvsm.ru -

Над RethinkDB сгущаются тучи?

Над RethinkDB сгущаются тучи? - 1

Подозреваю, что у нас мало кто использует продукты этой компании. Хотя, как минимум, их одноимённая СУБД стоит внимания. На хабре видел пару [1] статей [2] всего.

К сожалению, компания RethinkDB, развивающая одноимённую СУБД и web-платформу Horizon, объявила о закрытии. После 7 лет разработки из-за неспособности организовать устойчивый бизнес основатели были вынуждены свернуть свою деятельность. СУБД RethinkDB и платформа Horizon передаются в руки сообщества. Код RethinkDB распространяется под лицензией AGPLv3, а Horizon под лицензией MIT.

Немного про RethinkDB

RethinkDB — это open source NoSQL база данных (сорсы на гитхабе [3]), располагающая встроенной системой уведомления об изменениях [4]. Вместо запросов к базе на наличие изменений, вы можете «подписываться» на потоковые обновления, что устранит ненужные запросы к базе.

RethinkDB является безсхемным хранилищем JSON документов, но также поддерживает и некоторые особенности реляционных БД. RethinkDB также поддерживает кластеризацию, что делает её очень удобной в расширении. Вы можете настроить шардинг и копирование через встроенный веб-интерфейс. Последнии версия RethinkDB также включает в себя автоматический «fail-over [5]» для кластеров с тремя и более серверами. (прим. переводчика: подразумевается возможность продолжения работы с БД в случае падения одного из серверов.)

Язык запросов в RethinkDB, который называется ReQL, нативно встраивается в код на том языке, на которым вы пишите своё приложение. Если, например, вы кодите на Python, то при написании запросов к БД будете использовать обычный для Python синтаксис. Каждый запрос составляется из функций, который разработчик собирает в цепочку, чтобы точно описать необходимую операцию.

Horizon

Horizon — это сервис поверх RethinkDB, состоящий их консольной утилиты horizon (hz), авторизации и ACL, клиентской JS библиотекы horizon.js для работы с БД на клиенте. Будет полезно для тех, кто не хочет много мучаться с бекендом (не хочет писать его полностью сам).

Компания RethinkDB закрывается

Slava Akhmechet заверил [6], что они продолжат работать с сообществом и проекты будут доступны и дальше (в том числе сайты rethinkdb.com [7] и horizon.io [8]).

Компания не смогла построить устойчивый бизнес, именно поэтому и закрывается, судя по словам Slava Akhmechet:

We worked very hard to make RethinkDB successful, but in spite of all our efforts we were ultimately unable to build a sustainable business. There is a lot of information to unpack – over the next few months, I’ll write about lessons learned so the startup community can benefit from our mistakes

В обсуждениях треда люди предлагают присоединиться к The Eclipse Foundation [9] или Linux Foundation [10]. Если сообщество не забросит проект, то он будет развиваться и дальше. Вероятно, будет это намного медленнее, но всё же. Как минимум, если вы сейчас использует в проде эту СУБД, то, мне кажется, нет смысла её менять, если она вас устраивает. С другой стороны, API, вероятно, не будет сильно меняться больше. Это будет хорошей новостью для тех, кто пишет драйвера под Rethink.

Сама команда ищет новое место, куда бы приложить свой энтузиазм. В данный момент они рассматривают идею о присоединении к Stripe [11]. Как я понимаю, из поста с Hacker News [12], Stripe уже сделали им офер. Быть может получится под крылом Stripe продолжать развивать Rethink и дальше, хоть не в таком темпе как раньше. Gotta Believe!

P.S. мы лично используем RethinkDB для онлайн игры. Храним в нём все игровые данные. В своё время переехали на него с Riak и до сих пор не пожалели. База довольно шустрая. Механизм подписок позволяет получать изменения, не делая лишних телодвижений. В контексте нашей игры, например, мы подписываем на изменения профилей игроков (рейтинг и т.п.), а затем после небольшой обработки добавляем в Redis, а уже к нему делаем запросы на получение рейтингов.

Сейчас там к тому же автоматический failover, так что кластер не развалится от падения пары нод (в зависимости от того, сколько у вас всего нод, конечно).

Ссылки:

  1. RethinkDB is shutting down [6].
  2. RethinkDB на crunchbase [13].
  3. Обсуждение на Hacker News. [12]
  4. Horizon — realtime JavaScript бэкэнд [2].
  5. Строим real-time веб-приложения с RethinkDB [1].
  6. Введение в RethinkDB [14].

Автор: Suvitruf

Источник [15]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/bazy-danny-h/197639

Ссылки в тексте:

[1] пару: https://habrahabr.ru/post/266085/

[2] статей: https://habrahabr.ru/post/308766/

[3] сорсы на гитхабе: https://github.com/rethinkdb/rethinkdb/

[4] встроенной системой уведомления об изменениях: https://rethinkdb.com/docs/changefeeds/javascript/

[5] fail-over: http://rethinkdb.com/docs/failover/

[6] заверил: https://rethinkdb.com/blog/rethinkdb-shutdown/

[7] rethinkdb.com: https://rethinkdb.com/

[8] horizon.io: http://horizon.io/

[9] The Eclipse Foundation: https://eclipse.org/projects/handbook/#starting

[10] Linux Foundation: https://www.linuxfoundation.org/projects

[11] Stripe: https://stripe.com/

[12] Hacker News: https://news.ycombinator.com/item?id=12649414

[13] RethinkDB на crunchbase: https://www.crunchbase.com/organization/rethinkdb#/entity

[14] Введение в RethinkDB: http://suvitruf.ru/2015/10/22/3823/

[15] Источник: https://habrahabr.ru/post/312158/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best