Миграция с MySQL на Crate

Я только что провел некоторое время, экспериментируя с Crate — crate.io — и первые впечатления хорошие. Если я правильно понимаю, Crate — это база данных NoSQL, которая предоставляет довольно удобный интерфейс SQL для манипулирования базой данных и запросов к ней. Ницца!

Однако на данном этапе у меня больше вопросов, чем ответов. Вот три для начала

  • Консоль администратора Crate хороша. Однако как - если вообще - я могу защитить его, кроме настройки правила IP-таблиц?
  • Как индексы MySQL транслируются в Crate. Я не вижу возможности продолжать использовать индексы UNIQUE, а затем полагаться на операторы UPDATE...ON DUPLICATE KEY... SQL.
  • Наконец, если я прав, предполагая, что после того, как я настрою кластер, Crate позаботится о репликации и синхронизации данных без каких-либо дополнительных усилий с моей стороны. Итак, если у меня есть географически разбросанные узлы кластера Crate, будут ли проблемы с задержкой, связанные с синхронизацией, замедлять производительность всего кластера? Я предполагаю чтение/запись в локальный экземпляр ящика, но с возможностью последующего восстановления этих данных из другого экземпляра ящика в более позднее время (синхронно не имеет значения)

Эти вопросы могут не полностью соответствовать формату SO, но, учитывая молодость Crate, я надеюсь, что они по-прежнему будут считаться приемлемыми.


person DroidOS    schedule 24.02.2015    source источник


Ответы (1)


Рад, что вам это нравится.

1) На данный момент в Crate нет поддержки ACL. Таким образом, интерфейс администратора, а также конечные точки HTTP открыты. Общая идея заключается в том, что Crate запускается внутри частной сети и не имеет прямого доступа к внешней среде.

См. эту проблему github и эту запись в блоге о том, как создать прокси-сервер nginx только для чтения для получения дополнительной информации.

2) Crate не поддерживает ограничение UNIQUE. (Кроме первичного ключа, который, конечно же, уникален). Таким образом, UPDATE .. ON DUPLICATE KEY будет работать, если первичный ключ уже присутствует.

Другие ограничения UNIQUE трудно реализовать, потому что данные могут находиться на разных узлах, и тогда наличие какого-либо механизма, обеспечивающего уникальность, будет очень дорогим.

3) Да, задержка замедлит операции вставки. Подробнее об этом читайте в разделе Настройка нескольких зон в документации.

person mfussenegger    schedule 24.02.2015