我是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中
由于
答案 0 :(得分:1)
使用Entity类的最后一个选项是首选,但是如果您希望通常更改对象,则JSON可能更适合无模式(因为您正在谈论数据库表,我猜您不需要这一点)。
顺便说一下,你的第一个选项不起作用,因为IMap本身不可序列化。你可以做IMap&gt;但是这种方法的问题在于内部地图需要在每次获取时完全反序列化,这会杀死你的性能; - )