2.0.0. 이후 버전에서 사용 시간복잡도 BRPOP은 RPOP의 블럭(Block) 버전이다. 기본적으로 RPOP 즉 리스트의 마지막에 있는 아이템을 POP하지만, POP할 아이템이 없을 경우 timeout 시간만큼 블럭된다. timeout 시간만큼 블럭되는 것을 제외하고는 RPOP와 동일하므로 자세한 사용법은 RPOP 문서를 참고하면 된다. timeou...
1.0.0 버전 부터 사용 시간 복잡도 LINDEX는 key의 index 위치에 있는 아이템을 반환한다.index는 0부터 시작하므로 0은 첫번째 아이템을, 1은 두번째 아이템을 의미한다. 음수의 경우 리스트의 끝에서 부터 index를 찾는다. -1은 마지막 아이템을 의미하고 -2는 마지막에서 두번째 아이템을 의미한다.key가 리스트(List)가 아닌 경...
ooo With Joinc 시리즈로 온라인 문서를 만들어보려 한다. Redis With JoinC 는 첫번째 시도다. 대상 이 온라인 문서는 Redis의 사용법을 다루고 있다. Redis는 오픈소스며, 다루기 쉽고, 빠르다. 메모리위에서 작동하는 in-memory 데이터베이스로 인터넷 서비스에서는 가장 널리 사용하고 그리고 가장 성공한 NoSQL 소프트웨어...
Redis Hash를 이용해서 하나의 key에 대한 값으로 여러 개의 sub key & value를 저장 할 수 있다. RDBMS의 테이블과 매우 비슷하다. 개인정보를 저장해야 한다고 하면 아래와 같은 Hash 테이블을 만들 수 있을 것이다. ||User_ID ||Email ||Name ||Age ||Address ||||yundream ||yundream...
사용가능한 버전 시간복잡도 특정 키에 멤버를 추가 할 수 있다. 멤버를 추가 할 때는 스코어(score)를 설정 할 수 있다. 멤버는 스코어를 기준으로 정렬되서 저장된다. 이미 존재하는 멤버라면 멤버의 스코어가 업데이트되며, 재 정렬된다. 스코어&멤버 쌍으로 저장이 되며, 하나 이상을 설정 할 수 있다.key 가 없다면, 새로운 key가 만들어지고 첫 ...
소프트웨어 프로그래밍에서 가장 먼저 다루는 데이터 스트럭처는 비트, 배열, 스트링, 리스트다. 단순해서 배우고 응용하기 쉽고, 다른 데이터 스트럭처를 이해하기 위한 기본이 되기 때문이다. 단점은 단순한 만큼 응용범위도 넓지 않다는데 있다.Sets는 좀 더 복잡하고 그 만큼 더 다양한 응용을 할 수 있다.Sets는 key에 하나 이상의 value를 가지는 데...
Redis 리스트(List)는 입력순서에 따라 정렬된 string의 목록이다. 목록의 왼쪽 혹은 오른쪽 끝에 새로운 요소를 밀어 넣는 식으로 리스트에 string 데이터를 추가 할 수 있다. 링크드리스트(Linked List)의 구현이라고 보면 된다.LPUSH(Left push)는 왼쪽에 데이터를 추가하는 반면, RPUSH(Right Push)는 오른쪽에 ...
MySQL같은 RDBMS는 데이터 스트럭처라는 개념이 없다. 데이터베이스를 이루는 여러 개의 테이블이 있으며, 이 테이블을 (join등으로 엮어서) 필요한 데이터를 추출할 뿐이다. RDBMS를 사용하는 서비스에서 데이터 스트럭처는 "애플리케이션 영역"에서 처리 한다.반면 Redis는 List, Set, Sorted set, Hash, HyperLogLogs...
1부에서는 Redis에 대한 개념을 잡는다. Redis가 어떤 기능을 제공하는지, 왜 인기 있는지를 확인해 볼 것이다. 그리고 Redis 학습을 위한 기본 환경을 구성할 거다. 1부에서 다룰 내용은 아래와 같다. 1. Redis 소개.Reids는 무엇인가 ? 무얼 할 수 있을까 ? 1. Redis와 NoSQL 1. Redis 설치와 기본 사용 1. Re...
36 POSTS HERE
REDIS : BRPOP key [key ...] timeout
2.0.0. 이후 버전에서 사용 시간복잡도 BRPOP은 RPOP의 블럭(Block) 버전이다. 기본적으로 RPOP 즉 리스트의 마지막에 있는 아이템을 POP하지만, POP할 아이템이 없을 경우 timeout 시간만큼 블럭된다. timeout 시간만큼 블럭되는 것을 제외하고는 RPOP와 동일하므로 자세한 사용법은 RPOP 문서를 참고하면 된다. timeou...
REDIS : LINDEX key index
1.0.0 버전 부터 사용 시간 복잡도 LINDEX는 key의 index 위치에 있는 아이템을 반환한다.index는 0부터 시작하므로 0은 첫번째 아이템을, 1은 두번째 아이템을 의미한다. 음수의 경우 리스트의 끝에서 부터 index를 찾는다. -1은 마지막 아이템을 의미하고 -2는 마지막에서 두번째 아이템을 의미한다.key가 리스트(List)가 아닌 경...
Redis With Joinc
ooo With Joinc 시리즈로 온라인 문서를 만들어보려 한다. Redis With JoinC 는 첫번째 시도다. 대상 이 온라인 문서는 Redis의 사용법을 다루고 있다. Redis는 오픈소스며, 다루기 쉽고, 빠르다. 메모리위에서 작동하는 in-memory 데이터베이스로 인터넷 서비스에서는 가장 널리 사용하고 그리고 가장 성공한 NoSQL 소프트웨어...
Redis Data structure - Hash
Redis Hash를 이용해서 하나의 key에 대한 값으로 여러 개의 sub key & value를 저장 할 수 있다. RDBMS의 테이블과 매우 비슷하다. 개인정보를 저장해야 한다고 하면 아래와 같은 Hash 테이블을 만들 수 있을 것이다. ||User_ID ||Email ||Name ||Age ||Address ||||yundream ||yundream...
ZADD - Redis
사용가능한 버전 시간복잡도 특정 키에 멤버를 추가 할 수 있다. 멤버를 추가 할 때는 스코어(score)를 설정 할 수 있다. 멤버는 스코어를 기준으로 정렬되서 저장된다. 이미 존재하는 멤버라면 멤버의 스코어가 업데이트되며, 재 정렬된다. 스코어&멤버 쌍으로 저장이 되며, 하나 이상을 설정 할 수 있다.key 가 없다면, 새로운 key가 만들어지고 첫 ...
HGET key field
2.0.0 부터 지원 시간 복잡도 Hash 필드에 저장된 값을 반환한다.필드에 저장된 값을 반환한다. 필드가 없다면 nil을 반환한다.> HSET myhash field1 "foo"(integer) 1> HGET myhash field1"foo"> HGET myhash field2(nil)...
Redis data structures - SET
소프트웨어 프로그래밍에서 가장 먼저 다루는 데이터 스트럭처는 비트, 배열, 스트링, 리스트다. 단순해서 배우고 응용하기 쉽고, 다른 데이터 스트럭처를 이해하기 위한 기본이 되기 때문이다. 단점은 단순한 만큼 응용범위도 넓지 않다는데 있다.Sets는 좀 더 복잡하고 그 만큼 더 다양한 응용을 할 수 있다.Sets는 key에 하나 이상의 value를 가지는 데...
Redis data structure - List
Redis 리스트(List)는 입력순서에 따라 정렬된 string의 목록이다. 목록의 왼쪽 혹은 오른쪽 끝에 새로운 요소를 밀어 넣는 식으로 리스트에 string 데이터를 추가 할 수 있다. 링크드리스트(Linked List)의 구현이라고 보면 된다.LPUSH(Left push)는 왼쪽에 데이터를 추가하는 반면, RPUSH(Right Push)는 오른쪽에 ...
Redis 데이터 스트럭처 - strings
MySQL같은 RDBMS는 데이터 스트럭처라는 개념이 없다. 데이터베이스를 이루는 여러 개의 테이블이 있으며, 이 테이블을 (join등으로 엮어서) 필요한 데이터를 추출할 뿐이다. RDBMS를 사용하는 서비스에서 데이터 스트럭처는 "애플리케이션 영역"에서 처리 한다.반면 Redis는 List, Set, Sorted set, Hash, HyperLogLogs...
REDIS With Joinc Part - Redis 시작
1부에서는 Redis에 대한 개념을 잡는다. Redis가 어떤 기능을 제공하는지, 왜 인기 있는지를 확인해 볼 것이다. 그리고 Redis 학습을 위한 기본 환경을 구성할 거다. 1부에서 다룰 내용은 아래와 같다. 1. Redis 소개.Reids는 무엇인가 ? 무얼 할 수 있을까 ? 1. Redis와 NoSQL 1. Redis 설치와 기본 사용 1. Re...