달력

112017  이전 다음

  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  •  
  •  

Sorted Set은 ziplist와 SkipList라는 자료구조를 사용합니다.


SkipList자료구조가 생소해서 소스까지 이해하는데 시간이 좀 걸렸던 기억이 나네요;;

순서대로 읽으시면 이해하시는데 더 편한것같습니다.

가장 강추는 http://www.slideshare.net/jongwookkim/skip-list ~!!

http://www.lsi.upc.edu/~conrado/research/talks/survey-CALIN.pdf search와 insert에 이해가 쉽도록 그려줬음 : )

http://en.wikipedia.org/wiki/Skip_list


수학적인 얘기나오면 무조건 패스~!! 했습니다. 영어가 좀 많다싶어도 패스....(하........멀기만하네요;;)


skiplist에 대한 얘기는 저 3개의 자료로 얼렁뚱땅 마치겠습니다;; 한번 짜면 좋을것같은 자료구조입니다.


t_zset.c은 t_set.c과 비슷한 역할을 합니다. 다른점이라고하면 set에서는 value가 기준이 되어 정렬했다면, zset은
score를 기준으로 정렬이 됩니다.


처음에는 ziplist에 저장을합니다.

뭐 아래와 비슷하게 저장합니다.

위에처럼 저장하다가 entry갯수가 zset_max_ziplist_entries 이상이거나, 

입력된 value가 zset_max_ziplist_value의 길이를 넘는다면 SKIPLIST로 데이타형을 변경합니다.

skiplist는 뭐 알아서 잘 들어가겠죠....;;


저작자 표시 비영리
신고
Posted by 오산돌구
TAG