redis哈希-POJO,地图存储为哈希

时间:2020-02-26 01:36:21

标签: redis spring-data-redis redis-ha

我有一个POJO,如下所示,它具有map作为属性之一

@RedisHash(“测试”) 公共类DataElasticCache {

@Id
private String id;
private long sourceTime;
private long sequenceNumber
@Indexed private double cycleID;
private map<String, Object> values

}

我正在尝试将其存储在Elastic缓存中-使用存储库进行Redis,并使用@RedisHash spring数据redis和生菜库对其进行哈希处理。

我需要在几个字段上建立索引,所以才使用它。在Redis中创建哈希时,它正在为每个字段创建键值对,包括以下map属性的各个键

  1) "_class"
  2) "elasticcache.model.DataElasticCache"
  3) "id"
  4) "64:d6:6"
  5) "businessDate"
  6) "1546993380000"
  7) "sourceTime"
  8) "1582643572252"
  9) "sequenceNumber"
 10) "646"
 11) "deliveryClass"
 12) "d6"
 13) "cycleID"
 14) "64.0"
 15) "instrumentID"
 16) "6"
 17) "values.[random0]._class"
 18) "java.lang.Double"
 19) "values.[random0]"
 20) "0.857969597582983"
 21) "values.[random38]._class"
 22) "java.lang.Double"
 23) "values.[random38]"
 24) "-1.0819228523608013"
 25) "values.[random39]._class"
 26) "java.lang.Double"
 27) "values.[random39]"
 28) "-0.9189258905684135"

我想为其他属性设置单独的键值,但对于map来说,它应该只是redis中的一个键。有什么办法可以做到的?

  1) "_class"
  2) "elasticcache.model.DataElasticCache"
  3) "id"
  4) "64:d6:6"
  5) "businessDate"
  6) "1546993380000"
  7) "sourceTime"
  8) "1582643572252"
  9) "sequenceNumber"
 10) "646"
 11) "deliveryClass"
 12) "d6"
 13) "cycleID"
 14) "64.0"
 15) "instrumentID"
 16) "6"
 17) "values.[random0]._class"
 18) "java.lang.Double"
 19) "values.[random0]"
 20) "entire map"

它是否在内存消耗方面有所不同。

预先感谢

0 个答案:

没有答案
相关问题