我希望我的数据库支持多租户,而不是为每个租户提供单独的数据库。因此,我正在尝试重组在缓存中存储数据的方式。当前,使用IMap将数据作为键值对存储在hazelcast缓存中。这里的值可以是整数,字符串,列表,映射等之类的值。现在,对于每个租户,我希望在缓存中具有相同的数据集。我想到了两种方法。
使用复合键,例如 tenant_id +键,它将数据存储为
Map<1234_somekey, value>
使用嵌套地图,即键,值对的地图。
Map<1234, Map<somekey, value>>
此外,如果某些对象被用户更新,则有刷新缓存的要求。因此,我想问一下哪个选项在性能,可访问性和其他方面会更好。