在Hazelcast中存储json vs Object vs Map。

时间:2014-06-05 04:09:20

标签: hazelcast

我是Hazelcast的新手,非常感谢您对以下内容的看法。

用例:我有一个数据库table CUSTOMER (id, firstname, lastname,age),并希望将其存储在分布式地图中。需要查询(可能是谓词)集合和一般的get / put操作。将有大约一百万条记录,我有2个节点可供我使用。

最好的方法是记住性能和记忆。

1.将记录存储为地图图; IMAP> ;内部映射中的键是列名

或者

2.将记录存储为json; IMap<String,String> Ex: [ "123" : { "id" : "123", "firstname" : "john", "lastname" : "Deer", "age" : "25" }]

或者

3.创建客户DTO并将其存储在IMap中

由于

1 个答案:

答案 0 :(得分:1)

使用Entity类的最后一个选项是首选,但是如果您希望通常更改对象,则JSON可能更适合无​​模式(因为您正在谈论数据库表,我猜您不需要这一点)。

顺便说一下,你的第一个选项不起作用,因为IMap本身不可序列化。你可以做IMap&gt;但是这种方法的问题在于内部地图需要在每次获取时完全反序列化,这会杀死你的性能; - )