복붙노트

[REDIS] 복잡한 데이터 구조 레디 스

REDIS

복잡한 데이터 구조 레디 스

내가 예를 들어, 해시의 해시가 있다고 가정하자

$data = {
    'harry' : {
         'age' : 25,
         'weight' : 75,
    },
    'sally' : {
        'age' : 25,
        'weight' : 75,
    }
}

해결법

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

    1.예를 들어 해리와 샐리 필드는 나이와 체중 등의 속성을 대표 할 별도의 해시에 각각 저장됩니다. 다음 설정 구조는 모든 구성원 (해리가 샐리, ...) 당신은 레디 스에 저장된 개최한다.

    예를 들어 해리와 샐리 필드는 나이와 체중 등의 속성을 대표 할 별도의 해시에 각각 저장됩니다. 다음 설정 구조는 모든 구성원 (해리가 샐리, ...) 당신은 레디 스에 저장된 개최한다.

    예, HGET 또는 HMGET 또는 HGETALL를 참조하십시오.

    예, HSET를 참조하십시오.

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

    2.우리가 레디 스에 저장해야하는 복잡한 데이터를 취할 수 있습니다, 예를 들어이 하나 :

    우리가 레디 스에 저장해야하는 복잡한 데이터를 취할 수 있습니다, 예를 들어이 하나 :

      $data = { 
                "user:1"  : {
                           name : "sally",
                           password : "123"
                           logs : "25th october" "30th october" "12 sept",
                           friends : "34" , "24", "10"
                       } 
                "user:2"  :{
                           name : ""
                           password : "4567"
                           logs :
                           friends: ""
                       }
              }
    

    우리가 직면하는 문제는 친구 및 로그리스트 있다는 것입니다. 그래서 우리는 레디 스에서이 데이터를 표현하기 위해 할 수있는 일이 같은 사용 해시 및 목록 무언가가있다 :

    1 사용자 : 사용자로 키 옵션 1. 해시 맵 2

          hmset user:1 name "sally" password "12344"
          hmset user:2 name "pally" password "232342"
          create separate list of logs as 
                  logs:1 { here 1 is the user id }
                  lpush logs:1 "" "" "" 
                  lpush logs:2 "" "" ""
          and similarly for friends.
    

    옵션 2 : 문자열 인코딩으로 덤프 JSON 데이터를 해시 맵

          hmset user:1 name "sally" password "12344" logs "String_dumped_data" friends "string of dumped data"
    

    옵션 3 : 이것은 # 1의 또 다른 표현입니다

          something like user:1:friends -> as a list 
          and            user:2:friends -> as a list 
    

    내가 틀렸다 경우 제발 올바른.

  3. ==============================

    3.당신이 원하는에 따라 달라집니다,하지만 자료 구조가 깊은 중첩하고 각 필드에 대한 액세스를 필요로하지 않는 경우, 내가 해시를 사용하는 것이 좋습니다 것입니다 : http://redis.io/commands#hash

    당신이 원하는에 따라 달라집니다,하지만 자료 구조가 깊은 중첩하고 각 필드에 대한 액세스를 필요로하지 않는 경우, 내가 해시를 사용하는 것이 좋습니다 것입니다 : http://redis.io/commands#hash

    http://redis.io/topics/data-types 다음은 레디 스 데이터 유형을 통해 좋은 개요는 프로와 콘트라 각이며,

  4. from https://stackoverflow.com/questions/8810036/complex-data-structures-redis by cc-by-sa and MIT license