我想在Redis数据库中保存以下数据:
{"id": "1", "data": "abc", "param": "p1"}
{"id": "2", "data": "def", "param": "p2"}
Run Code Online (Sandbox Code Playgroud)
目前,我将每一行保存如下(使用JedisJava中的客户端):
JEDIS.set(line.getId(),line.getLine());
Run Code Online (Sandbox Code Playgroud)
因此,结果是这样的:
"1", "{"id": "1", "data": "abc", "param": "p1"}"
GET 1
{"id": "1", "data": "abc", "param": "p1"}
Run Code Online (Sandbox Code Playgroud)
这是在Redis中保存此类数据的有效方法吗?也许最好将每行都转换为a Set或其他内容?
如果您需要做的只是获取和设置数据块,则直接使用GETand SET有意义。如果需要考虑使用内存,则可以使用MessagePack代替JSON。
如果您通常的访问模式不涉及整个对象,则可以选择使用散列,因为这将允许您分别获取和设置字段,从而减少了需要传输的数据量。(不过,这不会减少存储数据所需的内存总量。)
| 归档时间: |
|
| 查看次数: |
1260 次 |
| 最近记录: |