복붙노트

[REDIS] 레디 스에서 해시의 배열을 저장하는 방법

REDIS

레디 스에서 해시의 배열을 저장하는 방법

나는 코드 그것에 가장 좋은 방법은 무엇인가, 레디 스에서 해시의 배열을 저장할?

해결법

  1. ==============================

    1.유일한 방법은 AFAIK 그들을 참조를 해제하는 것입니다. {foo는 : '바', 바즈 'qux'} 당신이 추천 해시의 배열을 말한다.

    유일한 방법은 AFAIK 그들을 참조를 해제하는 것입니다. {foo는 : '바', 바즈 'qux'} 당신이 추천 해시의 배열을 말한다.

    당신은 개별적으로 저장하고, 그 참조 모두 집합을 만들 것입니다 :

    HMSET myarr:0 foo bar baz qux
    SADD myarr myarr:0
    HMSET myarr:1 foo bar baz qux
    SADD myarr myarr:1
    

    그런 다음 세트를 조회하여 그들 모두를 검색 할 수 있습니다 myArr이라는 SMEMBERS 다음 해시의 원래의 배열을 다시 반환되는 모든 키에 HGETALL <키>를 호출합니다.

    나는이 말이 바랍니다. 당신은 똑똑한 방법을 찾을 수 있다면 나는 그것을 듣고 드리겠습니다.

  2. ==============================

    2.당신이 언어 JSON 변환에서 /에 대한 지원을 사용하는 경우 JSON에 해시를 변환하여 목록을 추가 할 수 있습니다. 당신은 루비에서 다음을 수행 할 수 있습니다 :

    당신이 언어 JSON 변환에서 /에 대한 지원을 사용하는 경우 JSON에 해시를 변환하여 목록을 추가 할 수 있습니다. 당신은 루비에서 다음을 수행 할 수 있습니다 :

    require 'rubygems'
    require 'redis'
    require 'json'
    require 'pp'
    
    redis = Redis.new(:host => '127.0.0.1', :port => 6379)
    
    h1 = { :k1 => 'v1', :k2 => 'v2' }
    redis.rpush('arr', h1.to_json)
    
    h2 = { :k3 => 'v3', :k4 => 'v4' }
    redis.rpush('arr', h2.to_json)
    
    hashes = redis.lrange('arr', 0, -1)
    hashes.map! { |x| JSON.parse(x) }
    pp hashes
    
  3. from https://stackoverflow.com/questions/6278316/how-to-store-array-of-hashes-in-redis by cc-by-sa and MIT license