2장 Redis 설치 및 데이터 처리

ZZZZZI_won·2021년 8월 6일
0

DB

목록 보기
4/6

Redis : Remote Directory System

  • Key-Value 데이터베이스
  • In Memory
  • Sentinel 모드?

2.1 시작 & 종료 on Linux

2.1.1 Redis Server 시작

2.1.2 Redis Client 실행 및 서버 종료

  • Redis-Shell 에서 실행할 수 있는 명령어 리스트 조회

1) Redis server 인스턴스 시작

2) Redis client 를 통해 Redis 서버에 접속

3) 테스트 데이터 입력

set 이라고 치면 요렇게 문법이 나온다 😮

4) Redis 서버 인스턴스 종료

shutdown: 서버 종료 명령어
not connected> : Redis 서버 인스턴스가 종료된 상태

5) 로그 파일


2.2 데이터 처리

2.2.1 key- value DB 의 논리적 구조 용어 설명

  • Table: 하나의 DB에서 데이터를 저장하는 논리적 구조
  • Data Sets: 테이블을 구성하는 논리적 단위 (= row)
  • Key: 인식하기 위한 식별자. 하나 이상의 조된 값으로 표현 가능
  • Values: 해당 key에 대한 데이터 값. 하나 이상의 field, element 로 구성

2.2.2 기본적인 data type

  • String
  • Bitmap

<컨테이너 타입>

  • Set
  • Stored Set
  • Hash
  • List

2.2.3 string 데이터 입력/수정/삭제/조회

  • set: 데이터를 저장할 때
  • get: 저장된 데이터를 가져올 때
  • rename: 저장된 데이터 값을 변경할 때
  • randomkey: 저장된 key 중 하나를 랜덤으로 검색할 때
  • keys: 저장된 모든 key를 검색할 때
  • exists: 검색 대상 key 가 종재하는지 여부를 확인할 때
  • mset/mget: 여러개의 key 와 value를 한번에 저장하고 값을 가져올 때

1)keys 뒤에 패턴을 적어줘야 한다

2) ex 는 expire. 일정시간 동안만 값을 저장


3) value 값 증/감 가능

  • incr, decr 는 1씩만
    INCR 는 스트링으로 저장된 값을 숫자형태로 변환한 뒤 1을 증가시킴.
    그렇게 증가된 값을 다시 스트링으로 저장
  • incrby, decrby 는 2이상

4) 현재 저장되어있는 key-value 값을 파일로 저장


👇 요렇게 파일로 남는다

2.2.4 Hash 데이터 입력/수정/삭제/조회

  • 필드 개수에 제한이 없다
  • 문자 값을 저장할 때는 " " 사용
  • hmset, hget, hgetall, hkey, hlen


2.2.5 List 데이터 입력/수정/삭제/조회

  • 배열이랑 유사한 데이터 구조
  • String 타입의 경우 배열에 저장할 수 있는 데이터 크기는 512MB
  • lpush, lrange, rpush, rpop, llen, lindex



2.2.6 Set 데이터 입력/수정/삭제/조회

  • List 가 하나의 필드에 여러개의 배열 값을 저장할 수 있는 구조라면, Set 은 여러개의 엘리먼트를 저장할 수 있는 구조
  • List 는 중복 값 허용/ Set 중복값 허용 X
  • sadd, smembers, scard, sdiff, sunion

👇 -1: 마지막

👇 저장된 value 개수

👇 SDIFF A B : A에만 있는 value 출력



👇 SREM: 지정 제거, SPOP: 랜덤 제거

2.2.7 Sorted Set 데이터 입력/수정/삭제/조회

  • key 하나에 여러개의 score와 value 로 구성
  • set 과 동일하되 sorting 된 상태이면 sorted set, 아니면 set
  • zadd, zrange, zcard, zcount, zrank, zrevrank
  • value 는 score 로 sort 되며 중복되지 않는다
  • score 가 같으면 value 로 sort 된다



👇 ZREVRANK: Reverse rank / ZSCORE: 데이터가 저장된 시점의 값의 score 를 출력

2.2.8 Bit 데이터 입력/수정/삭제/조회

  • setbit, getbit, bitcount

2.2.9 Geo 데이터 입력/수정/삭제/조회

  • 위도, 경도 데이터를 관리
    geoadd, geopos, geodist, georadius, geohash





2.2.10 HyperLogLogs 데이터 입력/수정/삭제/조회

  • RDB 에서 check 제약 조건(해당 컬럼에 반드시 저장되어야 할 데이터 값 만 저장할 수 있도록 제한)이랑 비슷한 개념
  • pfadd, pfcount, pfmerge



0개의 댓글