Как сделать данные Riak локализованными? - PullRequest
0 голосов
/ 05 марта 2011

В данный момент я проектирую кластер Riak и задаюсь вопросом, можно ли намекнуть Riak, что определенная связка ключей должна быть размещена на одном узле кластера?

Например, естьнекоторые личные данные пользователя, к которым имеет доступ только она.Эти данные содержат ~ 10 тыс. Документов (слишком большой, чтобы их можно было хранить в одном ключе / документе), и для обслуживания одной страницы нам нужно извлечь ~ 100 из них.Было бы лучше сохранить всю связку на одном узле + иметь приложение на одном и том же экземпляре, чтобы сделать это быстрее.

AFAIK на Cassandra легко: просто используйте OrderedPartitioner и такие ключи: <hash(username)>/<private data key>,Таким образом, почти все пользовательские ключи будут храниться на одном узле.

1 Ответ

5 голосов
/ 05 марта 2011

Одним из пунктов использования Riak является то, что ваши данные реплицируются и равномерно распределяются по кластеру, что повышает вашу устойчивость к сетевым разделам и сбоям. Размещение данных на определенных узлах идет вразрез с этой целью и увеличивает вашу уязвимость.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...