XPENDING

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

처리중인 데이터 확인하기

처리중 또는 미처리(pending) 데이터는 처리가 완료되었다고 확인되지 않은 데이터입니다. 즉, XREADGROUP으로 읽고 처리가 완료되었으면 XACK로 알려주어야 하는데, 아직 XACK를 받지 못한 데이터입니다.
사용법은 XPENDING key group입니다.

Example

명령>XPENDING sensor-1234 CG-A
결과> 1) (integer) 2
2) 1538319053569-0
3) 1538319053569-1
4) 1) 1) "C1"
        2) "2"

요약된 정보를 보여줍니다.

  1. 팬딩된 데이터 개수
  2. 팬딩된 데이터의 시작 ID
  3. 팬딩된 데이터의 끝 ID
  4. 데이터를 처리하고 있는 소비자 정보, 여러 소비자가 처리하고 있을 경우 반복해서 나온다.
    1. 소비자명
    2. 해당 소비자가 처리하고 있는 데이터 개수

자세한 정보 확인하기

사용법은 XPENDING key group start end count입니다.

Example

명령>XPENDING sensor-1234 CG-A - + 2
결과> 1) 1) 1538319053569-0
    2) "C1"
    3) (integer) 582603
    4) (integer) 1
2) 1) 1538319053569-1
    2) "C1"
    3) (integer) 571917
    4) (integer) 2
  1. ID
  2. 소비자
  3. 팬딩된 시간(밀리초), XREADGROUP으로 읽은 후 현재까지 시간
  4. 읽어간 횟수, 두 번째 데이터의 경우 두 번 읽어 갔다.

Start end에 특정 ID를 지정할 수 있습니다.

  • XPENDING sensor-1234 CG-A 1539035295304 1539035297138 2

특정 소비자를 지정해서 해당 소비자가 처리하고 있는 정보만 볼 수 있습니다.

  • XPENDING sensor-1234 CG-A C1

ID 미포함 조회(exclusive range)

기본적으로 지정한 ID를 포함해서 조회합니다. 포함하지 않으려면 start end 앞에 '('를 입력하세요.
XPENDING sensor-1234 CG-A (1539035295304 (1539035297138 2
이 기능은 버전 6.2에 추가되었습니다.

IDLE

Idle time은 millisecond로 입력합니다. 입력한 시간 이상인 데이터를 조회합니다.
이 기능은 버전 6.2에 추가되었습니다.


명령문

XPENDING key group [IDLE min-idle-time] start end count [consumer]]

  • 이 명령은 version 5.0.0 부터 사용할 수 있다.
  • 버전 6.2에서 IDLE과 ID 미포함 조회(exclusive range) 기능이 추가되었습니다.
  • 논리적 처리 소요시간은 O(log(N)+M)이다. N은 스트림에 저장된 엔트리(ID) 개수이고, M은 리턴될 팬딩 엔트리 개수이다.

<< XACK XPENDING XCLAIM >>

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