Lettuce for Redis Enterprise

레디스 개발자 교육 신청 레디스 정기점검/기술지원
Redis Technical Support
레디스 엔터프라이즈 서버
Redis Enterprise Server

Lettuce for Redis Enterprise

Lettuce 6.1.3.ENT에서 지원하는 Redis Enterprise 명령

공통

SQL

STRING

LIST

SET

ZSET

HASH


공통 COMMON

포함해야 할 package

Import package

접속 connection

Connect to Redis Server

CD (change database)

Redis Enterprise에서는 데이터베이스 변경 시 cd를 사용합니다.
Select는 데이터를 조회하는 SQL Select로 사용합니다.

사용 예

  • cd 1 -> syncCommands.cd(1); 1번 db로 옮깁니다.

Test code

LS (list)

패턴을 키를 조회할 수 있고 다른 다양한 방법으로 키를 조회할 수 있습니다.

사용 예

  • ls * -> syncCommands.ls("*"); 모든 키를 조회합니다.
  • ls user* -> syncCommands.ls("user*"); user로 시작하는 키를 조회합니다.
  • ls * string -> syncCommands.ls("*","string"); string 키를 모두 조회합니다.
  • ls * type -> syncCommands.ls("*","type"); 모든 키와 data type을 조회합니다.
  • ls * memory -> syncCommands.ls("*","memory"); 모든 키와 키가 사용하고 있는 메모리를 조회합니다.
  • ls * sort -> syncCommands.ls("*","sort"); 모든 키를 소트해서 조회합니다.
  • ls * count 10 -> syncCommands.ls("*","count","10"); 키를 10개만 조회합니다.

Test code

RM (remove)

삭제할 키를 여러 개 지정할 수 있고, 서브쿼리를 사용할 수 있습니다.

사용 예

  • rm key1 -> syncCommands.rm("key1"); key1을 삭제합니다.
  • rm key2 key3 -> syncCommands.rm("key2","key3"); key2, key3을 삭제합니다.

Test code

RMS (remove subquery)

서브쿼리를 사용할 수 있습니다.

사용 예

  • rms (get key) -> syncCommands.rms("(get key)"); get key의 결과로 키를 삭제합니다.
  • rms (ls user*) -> syncCommands.rms("(ls user*)"); user로 시작하는 키를 삭제합니다.
  • rms (ls * string) -> syncCommands.rms("(ls * string)"); string 키 모두를 삭제합니다.

Test code


SQL

SELECT

SELECT로 데이터를 조회합니다.

사용 예

  • select * from string.*; -> syncCommands.sqlselect('select * from string.*;'); String 키,값을 조회합니다.
  • select * from list.*; -> syncCommands.sqlselect('select * from list.*;'); List 키,값을 조회합니다.
  • select * from set.*; -> syncCommands.sqlselect('select * from set.*;'); Set 키,값을 조회합니다.
  • select * from zset.*; -> syncCommands.sqlselect('select * from zset.*;'); ZSet 키,값을 조회합니다.
  • select * from hash.*; -> syncCommands.sqlselect('select * from hash.*;'); Hash 키,값을 조회합니다.
  • select * from stream.*; -> syncCommands.sqlselect('select * from stream.*;'); Stream 키,값을 조회합니다.

String Test code

  • Test code 1: select key from string.*;
  • Test code 2: select * from string.*;
  • Test code 3: select count(*) from string.*;
  • Test code 4: select * from string.user*;
  • Test code 5: select * from string.user1;
  • Test code 6: select min(key), max(key) from string.*;
  • Test code 7: select * from string.* where key <= 'key3';
  • Test code 8: select * from string.* where value glob 'value*';
  • Test code 9: select left(key,3), count(*) from string.* group by left(key,3);

List Test code

  • Test code 1: select * from list.*;

Set Test code

  • Test code 1: select * from set.*;

ZSet Test code

  • Test code 1: select * from zset.*;

Hash Test code

  • Test code 1: select * from hash.*

Stream Test code

  • Test code 1: select * from stream.*

Function valcnt(), len(), card() Test code
  키에 속한 값/요소(element)/멤버(member) 개수를 조회한다. Valcnt = len = card
  String은 항상 1이 조회된다. 다른 데이터 타입은 값의 개수가 조회된다.

  • Test code: select key, valcnt(key), len(key), card(key) from hash.*

Function memory() Test code
  키와 값이 차지하고 있는 메모리량을 조회한다.

  • Test code: select key, memory(key) from hash.*

Function type(), encoding() Test code
  키의 데이터 타입, 인코딩 타입을 조회한다.

  • Test code: select key, type(key), encoding(key) from hash.*

Function updatetime() Test code
  키의 마지막 갱신시각(updatetime)을 조회한다.

  • Test code: select key, type(key), updatetime(key) from hash.*

INSERT

INSERT로 데이터를 저장합니다.

사용 예

  • String -> syncCommands.sqlinsert("insert into string values('key1','value1')");
  • List -> syncCommands.sqlinsert("insert into list values('mylist1','value1','value2')");
  • Set -> syncCommands.sqlinsert("insert into set values('myset1','value1','value2')");
  • ZSet -> syncCommands.sqlinsert("insert into zset values('zset1', 23.5, 'value1', 36.7, 'value2')");
  • Hash -> syncCommands.sqlinsert("insert into hash values('myhash1', 'field1', 'value1', 'field2', 'value2')");
  • Stream -> syncCommands.sqlinsert("insert into stream values('sensor_1', '*', 'field1', 'value1', 'field2', 'value2')");

String insert Test code

  • Test code:

List insert Test code

  • Test code:

Set insert Test code

  • Test code:

ZSet insert Test code

  • Test code:

Hash insert Test code

  • Test code:

Stream insert Test code

  • Test code:

DELETE

DELETE로 데이터를 삭제합니다.

사용 예

  • String; -> syncCommands.sqldelete("delete from string.key1");
  • List -> syncCommands.sqldelete("delete from list.mylist1");
  • Set -> syncCommands.sqldelete("delete from set.myset1");
  • Zset -> syncCommands.sqldelete("delete from zset.zset1");
  • Hash -> syncCommands.sqldelete("delete from hash.myhash1");
  • Stream -> syncCommands.sqldelete("delete from stream.sensor_1");

String delete Test code

  • Test code:

List delete Test code

  • Test code:

Set delete Test code

  • Test code:

ZSet delete Test code

  • Test code:

Hash delete Test code

  • Test code:

Stream delete Test code

  • Test code:

STRING

SETS

String에서 서브쿼리를 사용해 값을 저장합니다.

사용 예

  • sets mykey (get key) -> syncCommands.sets("mykey", "(get key)");   get key의 결과 값을 mykey에 넣습니다.

Test code

APPENDS

String에서 서브쿼리를 사용해 값을 추가합니다.

사용 예

  • appends mykey (get key) -> syncCommands.appends("mykey", "(get key)");   get key의 결과 값을 mykey에 추가합니다.

Test code


LIST

LPUSHS

List에서 서브쿼리를 사용해 값을 넣습니다.

사용 예

  • lpushs mylist (get key) -> syncCommands.lpushs("mylist", "(get key)");   get key의 결과 값을 mylist에 넣습니다.
  • lpushs mylist2 (lrange mylist 0 -1) -> syncCommands.lpushs("mylist2", "(lrange mylist 0 -1)");
    "lrange mylist 0 -1"의 결과 값을 mylist2에 넣습니다.

Test code

RPUSHS

List에서 서브쿼리를 사용해 값을 넣습니다.

사용 예

  • rpushs mylist2 (lrange mylist 0 -1) -> syncCommands.rpushs("mylist2", "(lrange mylist 0 -1)");  
    "lrange mylist 0 -1"의 결과 값들을 mylist2에 넣습니다.

Test code

LLS (list list)

리스트에서 패턴으로 값을 조회할 수 있고, 소트할 수 있습니다.

사용 예

  • lls mylist A* -> syncCommands.lls("mylist","A*"); mylist에서 A로 시작하는 값을 조회합니다.
  • lls mylist A* sort -> syncCommands.lls("mylist","A*","sort"); mylist에서 A로 시작하는 값을 소트해서 조회합니다.

Test code

LRM (list remove)

리스트에서 패턴으로 값을 삭제합니다.

사용 예

  • lrm mylist A* -> syncCommands.lrm("mylist","A*"); mylist에서 A로 시작하는 값을 삭제합니다.

Test code

LRANGE

소트해서 조회할 수 있습니다.
주의: CLI에서는 LRANGE를 사용하고 Lettuce에서는 LRANGE2()를 사용합니다.

사용 예

  • lrange mylist 0 -1 sort -> syncCommands.lrange2("mylist",0,-1,"sort");  
    mylist의 값을 소트해서 조회합니다.

Test code

LREVRANGE

리스트의 값을 오른쪽에서 왼쪽으로 조회합니다.
주의: CLI에서는 LREVRANGE를 사용하고 Lettuce에서는 LREVRANGE2()를 사용합니다.

사용 예

  • lrevrange mylist -1 0-> syncCommands.lrevrange2("mylist",-1,0);  
    mylist의 값을 오른쪽에서 왼쪽으로 조회합니다.

Test code


SET

SADD

Member에 만료시간(expire)를 설정할 수 있습니다.

사용 예

  • sadd myset E1 ex 20 -> syncCommands.sadd("myset", "E1","ex","20");  
    만료시간(expire)를 지정할 수 있습니다.

Test code

SADDS

Set에서 서브쿼리를 사용해서 member를 저장할 수 있습니다.

사용 예

  • sadds myset (lrange mylist 0 -1) -> syncCommands.sadds("myset", "(lrange mylist 0 -1)");  
    서브쿼리를 사용해서 데이터를 넣을 수 있습니다.
  • sadd myset (lrange mylist 0 -1) ex 20 -> syncCommands.sadd("myset", "(lrange mylist 0 -1)","ex","20");  
    만료시간(expire)를 지정할 수 있습니다. 이 경우 서브쿼리 결과 멤버 모두에 만료시간이 적용됩니다.

Test code

SLS (set list)

셋(Set)에서 패턴으로 값을 조회할 수 있고, 소트할 수 있습니다.

사용 예

  • sls myset A* -> syncCommands.sls("myset","A*"); myset에서 A로 시작하는 값을 조회합니다.
  • sls myset A* sort -> syncCommands.sls("myset","A*","sort"); myset에서 A로 시작하는 값을 소트해서 조회합니다.

Test code

SRM (set remove)

셋(Set)에서 패턴으로 값을 삭제합니다.

사용 예

  • srm myset A* -> syncCommands.srm("myset","A*") myset에서 A로 시작하는 값을 삭제합니다.

Test code

SLEN

Set에서 키에 속한 멤버 개수를 조회합니다.

사용 예

  • slen myset -> syncCommands.slen("myset");  
    myset에 속한 멤버 개수를 조회합니다.

Test code

SMEMBERS

Set에서 키를 여러 개 사용해서 조회할 수 있고, 소트할 수 있습니다.
주의: CLI에서는 SMEMBERS를 사용하고 Lettuce에서는 SMEMBERS2()를 사용합니다.

사용 예

  • smembers myset1 myset2 -> syncCommands.smembers2("myset","myset2");  
    키를 여러 개 사용해서 조회할 수 있습니다.
  • smembers myset1 myset2 sort -> $this->redis->smembers2('myset1', 'myset2', 'sort');  
    소트해서 조회할 수 있습니다. 이 경우 각 키 안에 있는 멤버를 대상으로 소트합니다.

Test code

SUNION / SINTER / SDIFF

연산(합집합, 교집합, 차집합) 결과를 소트할 수 있습니다.
주의: CLI에서는 SUNION/SINTER/SDIFF를 사용하고 Lettuce에서는 SUNION2()/SINTER2()/SDIFF2()를 사용합니다.

사용 예

  • sunion myset1 myset2 -> syncCommands.sunion2("myset","myset2");  
    myset1과 myset2의 합집합을 구해서 소트해서 조회합니다.
  • sinter myset1 myset2 -> syncCommands.sinter2("myset","myset2");  
    myset1과 myset2의 교집합을 구해서 소트해서 조회합니다.
  • sdiff myset1 myset2 -> syncCommands.sdiff2("myset","myset2");  
    myset1과 myset2의 차집합을 구해서 소트해서 조회합니다.

Test code


ZSET

ZADD

ZSet에서 member에 만료시간(expire)를 설정할 수 있습니다.

사용 예

  • zadd myzset 10 value ex 20 -> syncCommands.zadds("myzset", 10, "value", "ex", "20"); ex 20으로 만료시간(expire)를 지정할 수 있습니다.

Test code

ZADDS

ZSet에서 서브쿼리를 사용해서 score, member를 저장할 수 있고, 만료시간(expire)를 지정할 수 있습니다.

사용 예

  • zadds myset (lrange mylist 0 -1) -> syncCommands.zadds("myzset", "(lrange mylist 0 -1)");  
    'lrange mylist 0 -1' 쿼리 결과가 myzset에 저장됩니다. 이 경우 스코어는 0으로 들어갑니다.
  • zadds myzset (lrange mylist 0 -1) ex 20 -> syncCommands.zadds("myzset", "(lrange mylist 0 -1)", "ex", "20"); ex 20으로 만료시간(expire)를 지정할 수 있습니다. 이 경우 서브쿼리 결과 멤버 모두에 만료시간이 적용됩니다.

Test code

ZLS (zset list)

ZSet에서 패턴으로 값을 조회할 수 있고, 소트할 수 있습니다.

사용 예

  • zls myzset A* -> syncCommands.zls("myzset","A*"); myzset에서 A로 시작하는 값을 조회합니다.
  • zls myzset A* sort -> syncCommands.zls("myzset","A*","sort"); 값을 소트해서 조회합니다.

Test code

ZRM (zset remove)

ZSet에서 패턴으로 값을 삭제합니다.

사용 예

  • zrm myzset A* -> syncCommands.zrm("myzset","A*"); myzset에서 A로 시작하는 값을 삭제합니다.

Test code

ZISMEMBER

ZSet에서 키에 멤버가 있는지 확인합니다.

사용 예

  • zismember myzset 'A1' -> syncCommands.zismember("myzset","A1");  
    키 myzset에 'A1'이 있는지 확인합니다.

Test code


HASH

HSETS

Hash에서 서브쿼리를 사용해서 fiend, value를 저장할 수 있고, 만료시간(expire)를 지정할 수 있습니다.

사용 예

  • hsets myhash3 (get user1) -> syncCommands.hsets("myhash3", "(get user1)");  
    'get user1' 쿼리 결과가 myhash3에 user1은 field로, 값은 value로 저장됩니다.
  • hsets myhash3 (hgetall myhash) ex 20 -> syncCommands.hsets("myhash3", "(hgetall myhash)", "ex", "20"); ex 20으로 만료시간(expire)를 지정할 수 있습니다. 이 경우 서브쿼리 결과 멤버 모두에 만료시간이 적용됩니다.

Test code

HLS (hash list)

해시(Hash)에서 필드에 패턴으로 값을 조회할 수 있고, 소트할 수 있습니다.

사용 예

  • hls myhash A* -> syncCommands.hls("myhash","A*"); myhash에서 A로 시작하는 필드를 조회합니다.
  • hls myhash A* sort -> syncCommands.hls("myhash","A*","sort"); 값을 소트해서 조회합니다.

Test code

HRM (zset remove)

해시(Hash)에서 필드에 패턴으로 값을 삭제합니다.

사용 예

  • hrm myhash A* -> syncCommands.hrm("myhash","A*"); myhash에서 A로 시작하는 필드를 삭제합니다.

Test code

ZLEN

ZSet에서 키에 속한 멤버 개수를 조회합니다.

사용 예

  • zlen myzset -> syncCommands.zlen("myzset");  
    myzset에 속한 멤버 개수를 조회합니다.

Test code

HKEYS / HVALS / HGETALL

멀티 키 사용: 해시(Hash)에서 키를 여러 개 입력해서 조회합니다.

사용 예

  • hkeys myhash1 myhash2 -> syncCommands.hkeys("myhash1","myhash2");  
    키 myhash1과 myhash2의 필드를 조회합니다.
  • hvals myhash1 myhash2 -> syncCommands.hvals("myhash1","myhash2");  
    키 myhash1과 myhash2의 값을 조회합니다.
  • hgetall myhash1 myhash2 -> syncCommands.hgetall("myhash1","myhash2");  
    키 myhash1과 myhash2의 필드와 값을 조회합니다.

Test code


<< Cluster Enterprise