Эффективный подход для хранения данных в кеше с использованием Hazelcast - PullRequest
0 голосов
/ 08 мая 2019

Я бы хотел, чтобы моя база данных поддерживала мультитенантность, а не отдельную базу данных для каждого арендатора. Итак, я пытаюсь реструктурировать способ хранения данных в кеше. В настоящее время данные хранятся в виде пары ключ-значение в кэше Hazelcast с использованием IMap. Здесь значением может быть что угодно, например, целое число, строка, список, карта и т. Д. Теперь для каждого арендатора я хочу иметь один и тот же набор данных в кеше. Я думал о двух способах.

  • Использование составного ключа E.g tenant_id + ключ , который будет хранить данные как

    Map<1234_somekey, value>
    
  • Использование вложенной карты, т. Е. Карта карты ключ-значение.

    Map<1234, Map<somekey, value>>
    

Кроме того, существуют требования для обновления кэша, если некоторые объекты обновляются пользователем. Итак, я хотел спросить, какой вариант будет лучше по производительности, доступности и другим аспектам.

...