INSERT Stream


형식: INSERT INTO DATATYPE VALUES('KEY', '*', 'FIELD', 'VALUE')
  예  : INSERT INTO STREAM VALUES('KEY', '*', 'FIELD', 'VALUE')


STREAM 입력

  • Stream key, id, field, value를 입력합니다.
    insert into stream values('sensor-1', '*', 'field1', 'value1')
    id는 *만 가능합니다.
    value에 숫자 입력 가능합니다.
  • 1 row(key, id, field, value) 입력: insert into stream values('sensor_1', '*', 'field1', 'value1' [,'field2', 'value2'])
    이것은 XADD 명령의 작동과 동일합니다.
  • 여러 row 입력: insert into stream values('sensor_2', '*', 'field1', 'value1'), ('sensor-3', '*', 'field1', 50.7)

Example

명령>insert into stream values('sensor_1', '*', 'field1', 'value1', 'field2', 'value2');   opcode
결과>1 inserted
명령>insert into stream values('sensor_2', '*', 'field1', 'value1'), ('sensor_3', '*', 'field1', 50.7);   opcode
결과>2 inserted

Performance 성능


Stream

  • for i in {1..10000}; do src/redis-ecli -p 7000 xadd stream1 '*' field$i $i; done -> 4.40us
  • for i in {1..10000}; do src/redis-ecli -p 7000 insert "insert into stream values('stream2','*','field$i',$i)"; done -> 27.75us

각각 1만회 실행 평균 소요 시간(단위: us(microsecond))

Datatype구분개수 성능
StreamXADD 14.40us
INSERT 127.75us

OPCODE


insert into stream values('sensor_1', '*', 'field1', 'value1', 'field2', 'value2');

insert into stream values('sensor_2', '*', 'field1', 'value1'), ('sensor_3', '*', 'field1', 50.7);


<< Insert Hash Insert Stream Delete Intro >>

Email 답글이 올라오면 이메일로 알려드리겠습니다.

패턴으로 값을 조회하고 삭제할 수 있어요.
리스트에서 "lls mylist user*" 이렇게 조회할 수 있구요.
user가 들어간 값들을 삭제하려면 "lrm mylist user*" 이렇게 하면 됩니다.
List에서는 LLS, LRM, Set에서는 SLS, SRM, ZSet에서는 ZLS, ZRM, Hash에서는 HLS, HRM 을 사용하면 됩니다.
게다가 LS는 소트 기능까지 있습니다. 한번 사용해 보세요. ^^
궁금하신 사항이 있으면 여기로 redisgate@gmail.com 메일 주세요.
 
close
IP를 기반으로 보여집니다.