Redis OSS 관련 파라미터 - Amazon MemoryDB

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Redis OSS 관련 파라미터

Redis OSS 클러스터의 파라미터 그룹을 지정하지 않으면 엔진 버전에 적합한 기본 파라미터 그룹이 사용됩니다. 기본 파라미터 그룹에서는 어떤 파라미터 값도 변경할 수 없습니다. 그러나 조건부로 수정 가능한 파라미터 값이 두 파라미터 그룹에서 동일하면 언제든지 사용자 지정 파라미터 그룹을 생성하고 클러스터에 할당할 수 있습니다. 자세한 정보는 파라미터 그룹 생성을 참조하세요.

Redis OSS 7 파라미터 변경

참고

MemoryDB는 변경 불가능한 새로운 파라미터 그룹 default.memorydb-redis7.search.preview을(를) 포함하는 벡터 검색의 평가판 릴리스를 출시했습니다. 이 파라미터 그룹은 MemoryDB 콘솔에서 사용할 수 있으며 vector-search-enabled 클러스터 생성-CLI 명령을 사용하여 새 클러스터를 생성할 때 사용할 수 있습니다. 프리뷰 릴리스는 미국 동부 (버지니아 북부), 미국 동부 (오하이오), 미국 서부 (오레곤), 아시아 태평양 (도쿄), 유럽 (아일랜드) AWS 지역에서 사용할 수 있습니다.

파라미터 그룹 패밀리: memorydb_redis7

레디 스 OSS 7에 추가된 파라미터는 다음과 같습니다.

이름 Details 설명
latency-tracking

허용되는 값: yes, no

기본값: no

유형: string

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

yes로 설정하면 명령별 지연 시간을 추적하고 INFO 지연 시간 통계 명령을 통해 백분위수 분포 내보내기를 활성화하며, LATENCY 명령을 통해 지연 시간 분포(히스토그램)를 누적 집계합니다.

hash-max-listpack-entries

허용되는 값: 0+

기본값: 512

유형: 정수

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

데이터 세트를 압축하기 위한 해시 항목 최대 개수입니다.

hash-max-listpack-value

허용되는 값: 0+

기본값: 64

유형: 정수

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

데이터세트를 압축하기 위한 최대 해시 항목의 임계값입니다.

zset-max-listpack-entries

허용되는 값: 0+

기본값: 128

유형: 정수

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

데이터세트를 압축하기 위한 정렬된 세트 항목 최대 개수입니다.

zset-max-listpack-value

허용되는 값: 0+

기본값: 64

유형: 정수

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

데이터세트를 압축하기 위한 정렬된 최대 세트 항목의 임계값입니다.

search-enabled

허용되는 값: yes, no

기본값: no

유형: string

수정 가능 여부: 예

변경 사항 적용: 새 클러스터에만 적용됩니다.

최소 엔진 버전: 7.1

yes로 설정하면 검색 기능이 활성화됩니다.

search-query-timeout-ms

허용되는 값: 1 - 60,000

기본값: 10,000

유형: 정수

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

최소 엔진 버전: 7.1

검색 쿼리를 실행할 수 있는 최대 시간 (밀리초).

Redis OSS 7에서 변경된 매개변수는 다음과 같습니다.

이름 Details 설명
activerehashing

수정 가능: no. Redis OSS 7에서는 이 매개변수가 기본적으로 숨겨지고 활성화됩니다. 비활성화하려면 지원 사례를 생성해야 합니다.

수정 가능 여부는 '예'였습니다.

Redis OSS 7에서 제거된 매개변수는 다음과 같습니다.

이름 Details 설명
hash-max-ziplist-entries

허용되는 값: 0+

기본값: 512

유형: 정수

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

작은 해시 인코딩을 표현하는 데 ziplist 대신 listpack 사용

hash-max-ziplist-value

허용되는 값: 0+

기본값: 64

유형: 정수

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

작은 해시 인코딩을 표현하는 데 ziplist 대신 listpack 사용

zset-max-ziplist-entries

허용되는 값: 0+

기본값: 128

유형: 정수

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

작은 해시 인코딩을 표현하는 데 ziplist 대신 listpack 사용.

zset-max-ziplist-value

허용되는 값: 0+

기본값: 64

유형: 정수

수정 가능 여부: 예

변경 적용: 클러스터의 모든 노드에 즉시 적용됨

작은 해시 인코딩을 표현하는 데 ziplist 대신 listpack 사용.

레디 스 OS 6 파라미터

참고

Redis OSS 엔진 버전 6.2에서는 r6gd 노드 패밀리가 r6gd 노드 유형에서만 사용하도록 volatile-lru 도입되었으며 allkeys-lru 최대 메모리 정책은 r6gd 노드 noeviction 유형에서만 지원됩니다. 데이터 계층화

파라미터 그룹 패밀리: memorydb_redis6

Redis OSS 6에 추가된 매개변수는 다음과 같습니다.

이름 Details 설명
maxmemory-policy

유형: 문자열

허용된 값: volatile-lru,allkeys-lru,volatile-lfu,allkeys-lfu,volatile-random,allkeys-random,volatile-ttl,noeviction

기본값: noeviction

최대 메모리 사용량에 도달했을 때 키에 대한 제거 정책입니다.

자세한 내용은 Redis OSS를 LRU 캐시로 사용 Redis OSS를 LRU 캐시로 사용을 참조하십시오.

list-compress-depth

유형: 정수

허용되는 값: 0-

기본값: 0

압축 깊이는 압축에서 제외할 목록 각 측면의 퀵리스트 집리스트 노드 수입니다. 목록의 헤드와 테일은 빠른 푸시 및 팝 작업을 위해 항상 압축하지 않습니다. 설정:
  • 0: 모든 압축을 해제합니다.

  • 1: 헤드와 테일에서 첫 번째 노드로 압축을 시작합니다.

    [헤드] -> 노드 -> 노드 -> ... -> 노드 -> [테일]

    [헤드]와 [테일]을 제외한 모든 노드를 압축합니다.

  • 2: 헤드와 테일에서 두 번째 노드로 압축을 시작합니다.

    [헤드] -> [다음] -> 노드 -> 노드>... -> 노드 -> [이전] -> [테일]

    [헤드], [다음], [이전], [테일]은 압축하지 않습니다. 다른 모든 노드를 압축합니다.

  • 기타.

hll-sparse-max-bytes

유형: 정수

허용되는 값: 1~16000

기본값: 3000

HyperLogLog 스파스 표현 바이트 제한. 제한은 16바이트 헤더를 포함합니다. HyperLogLog 사용 중인 스파스 표현이 이 제한을 초과하면 밀도가 높은 표현으로 변환됩니다.

그 시점에서는 밀도가 높은 표현이 메모리 효율을 높이기 때문에 16000보다 큰 값은 권장하지 않습니다.

스파스 인코딩이 너무 많은 O(N)인 PFADD를 너무 느리게 하지 않고 공간 효율적인 인코딩의 이점을 얻으려면 값을 약 3000까지로 하는 것이 좋습니다. CPU는 중요하지 않지만 공간이 중요하고 데이터 집합이 0 - 15000 범위의 카디널리티를 HyperLogLogs 가진 많은 데이터로 구성되어 있는 경우 값을 ~10000까지 높일 수 있습니다.

lfu-log-factor

유형: 정수

허용되는 값: 1-

기본값: 10

LFU 제거 정책의 키 카운터 증가를 위한 로그 팩터.

lfu-decay-time

유형: 정수

허용되는 값: 0-

기본값: 1

LFU 제거 정책에 대한 키 카운터 감소에 소요된 시간입니다(분).

active-defrag-max-scan-fields

유형: 정수

허용되는 값: 1~1000000

기본값: 1000

활성 조각 모음 중 기본 사전 스캔에서 처리될 최대 set/hash/zset/list 필드 수입니다.

active-defrag-threshold-upper

유형: 정수

허용되는 값: 1~100

기본값: 100

최대 작업을 사용하는 조각의 최대 비율입니다.

client-output-buffer-limit-pubsub-hard-limit

유형: 정수

허용되는 값: 0-

기본값: 33554432

Redis OSS 게시/구독 클라이언트의 경우: 클라이언트의 출력 버퍼가 지정된 바이트 수에 도달하면 클라이언트 연결이 끊어집니다.

client-output-buffer-limit-pubsub-soft-limit

유형: 정수

허용되는 값: 0-

기본값: 8388608

Redis OSS 게시/구독 클라이언트의 경우: 클라이언트의 출력 버퍼가 지정된 바이트 수에 도달하면 클라이언트 연결이 끊어집니다. 단, 이 상태가 지속되는 경우에만 client-output-buffer-limit-pubsub-soft-seconds.

client-output-buffer-limit-pubsub-soft-seconds

유형: 정수

허용되는 값: 0-

기본값: 60

Redis OSS 게시/구독 클라이언트의 경우: 클라이언트의 출력 버퍼가 이 시간 (초) 보다 오래 client-output-buffer-limit-pubsub-soft-limit 바이트로 유지되면 클라이언트 연결이 끊깁니다.

timeout

유형: 정수

허용되는 값: 0,20-

기본값: 0

제한 시간이 지나기 전에 노드가 대기하는 시간(초)입니다. 유효한 값:

  • 0 – 유휴 클라이언트 연결을 절대로 끊지 마세요.

  • 1~19 - 잘못된 값입니다.

  • >=20 – 유휴 클라이언트 연결을 끊기 전에 노드가 대기하는 시간(초)입니다.

notify-keyspace-events

유형: 문자열

허용되는 값: N/A

기본값: NULL

Redis OSS가 Pub/Sub 클라이언트에게 알리기 위한 키스페이스 이벤트입니다. 기본적으로 모든 알림은 비활성화되어 있습니다.

maxmemory-samples

유형: 정수

허용되는 값: 1-

기본값: 3

AND time-to-live (TTL) 계산의 경우 least-recently-used (LRU) 이 매개변수는 검사할 키의 샘플 크기를 나타냅니다. 기본적으로 Redis OSS는 3개의 키를 선택하고 가장 최근에 사용되지 않은 키를 사용합니다.

slowlog-max-len

유형: 정수

허용되는 값: 0-

기본값: 128

Redis OSS 슬로우 로그의 최대 길이입니다. 이 길이에는 제한이 없습니다. 단, 메모리를 소모한다는 점만 알아두세요. SLOWLOG RESET.을 사용하면 슬로우 로그에서 사용한 메모리를 회수할 수 있습니다.

activerehashing

유형: 문자열

허용되는 값: yes/no

기본값: yes

기본 해시 테이블은 초당 10회 재해시되며 각 해시 작업은 1밀리초의 CPU 시간을 소비합니다.

이 값은 파라미터 그룹을 생성할 때 설정됩니다. 새 파라미터 그룹을 클러스터에 할당할 때 이전 파라미터 그룹과 새 파라미터 그룹에서 값이 동일해야 합니다.

client-output-buffer-limit-normal-hard-limit

유형: 정수

허용되는 값: 0-

기본값: 0

클라이언트의 출력 버퍼가 특정 바이트 수에 도달하면 클라이언트가 연결 해제됩니다. 기본값은 0입니다(하드 제한 없음).

client-output-buffer-limit-normal-soft-limit

유형: 정수

허용되는 값: 0-

기본값: 0

클라이언트의 출력 버퍼가 특정 바이트 수에 도달하면 클라이언트가 연결 해제됩니다. 그러나 이러한 조건은 client-output-buffer-limit-normal-soft-seconds의 경우에만 지속됩니다. 기본값은 0입니다(소프트 제한 없음).

client-output-buffer-limit-normal-soft-seconds

유형: 정수

허용되는 값: 0-

기본값: 0

클라이언트의 출력 버퍼가 client-output-buffer-limit-normal-soft-limit 바이트에 해당 시간(초)보다 오래 유지되면 클라이언트가 연결 해제됩니다. 기본값은 0입니다(시간 제한 없음).

tcp-keepalive

유형: 정수

허용되는 값: 0-

기본값: 300

이 값을 0이 아닌 값(N)으로 설정하면 연결이 되어있는지 확인하기 위해 노드 클라이언트가 N초마다 폴링됩니다. 기본 설정인 0을 사용하면 폴링이 발생하지 않습니다.

active-defrag-cycle-min

유형: 정수

허용되는 값: 1~75

기본값: 5

CPU 비율의 조각 모음에 대한 최소 작업입니다.

stream-node-max-bytes

유형: 정수

허용되는 값: 0-

기본값: 4096

스트림 데이터 구조는 내부에 여러 항목을 인코딩하는 노드의 기수 트리입니다. 이 구성을 사용하여 기수 트리에서 단일 노드의 최대 크기를 바이트로 지정합니다. 0으로 설정하면 트리 노드의 크기는 무제한입니다.

stream-node-max-entries

유형: 정수

허용되는 값: 0-

기본값: 100

스트림 데이터 구조는 내부에 여러 항목을 인코딩하는 노드의 기수 트리입니다. 이 구성을 사용하여 새 노드 항목을 추가할 때 새 노드로 전환하기 전에 단일 노드에 포함할 수 있는 최대 항목 수를 지정합니다. 0으로 설정하면 트리 노드의 항목 수는 무제한입니다.

lazyfree-lazy-eviction

유형: 문자열

허용되는 값: yes/no

기본값: 아니요

제거 시 비동기식 삭제를 수행합니다.

active-defrag-ignore-bytes

유형: 정수

허용되는 값: 1048576-

기본값: 104857600

활성 조각 모음을 시작하는 조각의 최소 수입니다.

lazyfree-lazy-expire

유형: 문자열

허용되는 값: yes/no

기본값: 아니요

키 만료 시 비동기식 삭제를 수행합니다.

active-defrag-threshold-lower

유형: 정수

허용되는 값: 1~100

기본값: 10

활성 조각 모음을 시작하는 조각의 최소 비율입니다.

active-defrag-cycle-max

유형: 정수

허용되는 값: 1~75

기본값: 75

CPU 비율의 조각 모음에 대한 최대 작업입니다.

lazyfree-lazy-server-del

유형: 문자열

허용되는 값: yes/no

기본값: 아니요

값을 업데이트하는 명령에 대해 비동기식 삭제를 수행합니다.

slowlog-log-slower-than

유형: 정수

허용되는 값: 0-

기본값: 10000

Redis OSS 기능으로 명령을 기록하려면 최대 실행 시간 (마이크로초) 을 초과해야 합니다. Slow Log 참고로 음수는 느린 로그를 비활성화하고, 값이 0이면 모든 명령의 로깅을 강제합니다.

hash-max-ziplist-entries

유형: 정수

허용되는 값: 0-

기본값: 512

해시에 사용되는 메모리 양을 결정합니다. 지정된 수보다 적은 수의 항목이 있는 해시는 공간을 절약하는 특수 인코딩을 사용하여 저장됩니다.

hash-max-ziplist-value

유형: 정수

허용되는 값: 0-

기본값: 64

해시에 사용되는 메모리 양을 결정합니다. 지정된 바이트 수보다 작은 항목이 있는 해시는 공간을 절약하는 특수 인코딩을 사용하여 저장됩니다.

set-max-intset-entries

유형: 정수

허용되는 값: 0-

기본값: 512

특정 종류의 세트(64비트 부호가 있는 정수의 범위에서 기수 10의 정수 문자열)에 사용되는 메모리의 양을 결정합니다. 지정된 수보다 적은 수의 항목이 있는 세트는 공간을 절약하는 특수 인코딩을 사용하여 저장됩니다.

zset-max-ziplist-entries

유형: 정수

허용되는 값: 0-

기본값: 128

정렬된 세트에 사용할 메모리 양을 결정합니다. 지정된 수보다 적은 수의 정렬된 세트는 공간을 절약하는 특수 인코딩을 사용하여 저장됩니다.

zset-max-ziplist-value

유형: 정수

허용되는 값: 0-

기본값: 64

정렬된 세트에 사용할 메모리 양을 결정합니다. 지정된 바이트 수보다 작은 항목이 있는 정렬된 세트는 공간을 절약하는 특수 인코딩을 사용하여 저장됩니다.

tracking-table-max-keys

유형: 정수

허용되는 값: 1~100000000

기본값: 1000000

클라이언트 측 캐싱을 지원하기 위해 Redis OSS는 어떤 클라이언트가 어떤 키에 액세스했는지 추적할 수 있도록 지원합니다.

추적된 키가 수정되면 무효화 메시지가 모든 클라이언트에 전송되어 키의 캐시된 값이 더 이상 유효하지 않음을 알립니다. 이 값을 사용하면 이 테이블의 상한을 지정할 수 있습니다.

acllog-max-len

유형: 정수

허용되는 값: 1~10000

기본값: 128

ACL 로그의 최대 항목 수입니다.

active-expire-effort

유형: 정수

허용되는 값: 1~10

기본값: 1

Redis OSS는 두 가지 메커니즘에 따라 사용 시간을 초과한 키를 삭제합니다. 하나는 키가 액세스되고 만료된 것으로 확인된 경우입니다. 다른 하나는 정기적인 작업이 키를 샘플링하고 유지 시간(TTL)이 초과된 키를 만료시키는 경우입니다. 이 매개변수는 Redis OSS가 정기 작업에서 항목을 만료시키는 데 사용하는 작업량을 정의합니다.

기본값 1은 만료된 키의 10% 이상이 메모리에 남아 있지 않도록 합니다. 또한 총 메모리의 25% 이상을 소비하지 않도록 시스템에 대기 시간을 추가합니다. 이 값을 최대 10까지 늘려 키 만료에 사용되는 작업량을 늘릴 수 있습니다. CPU 사용량이 늘어나고 대기 시간이 길어진다는 단점이 있습니다. 높은 메모리 사용량과 CPU 사용률 증가를 허용할 수 있는 경우가 아니면 1의 값을 사용하는 것이 좋습니다.

lazyfree-lazy-user-del

유형: 문자열

허용되는 값: yes/no

기본값: 아니요

DEL 명령의 기본 동작이 UNLINK와 동일하게 작동하는지 여부를 지정합니다.

activedefrag

유형: 문자열

허용되는 값: yes/no

기본값: 아니요

활성 메모리 조각 모음 파라미터가 활성화됩니다.

maxclients

유형: 정수

허용되는 값: 65000

기본값: 65000

한 번에 연결할 수 있는 최대 클라이언트 수입니다. 이는 수정할 수 없습니다.

client-query-buffer-limit

유형: 정수

허용되는 값: 1,048,576~1,073,741,824

기본값: 1073741824

단일 클라이언트 쿼리 버퍼의 최대 크기입니다. 변경 사항은 즉시 적용됩니다.

proto-max-bulk-len

유형: 정수

허용되는 값: 1,048,576~536,870,912

기본값: 536870912

단일 요소 요청의 최대 크기입니다. 변경 사항은 즉시 적용됩니다.

MemoryDB 노드 유형별 파라미터

대부분의 파라미터는 단일 값을 갖지만 일부 파라미터는 사용하는 노드 유형에 따라 다양한 값을 갖습니다. 다음 표에는 각 노드 유형에 대한 maxmemory의 기본값이 나와 있습니다. maxmemory의 값은 노드에서 데이터 및 다른 용도에 사용할 수 있는 최대 바이트 수입니다.

노드 유형 Maxmemory
db.r7g.large 14037181030
db.r7g.xlarge 28261849702
db.r7g.2xlarge 56711183565
db.r7g.4xlarge 113609865216
db.r7g.8xlarge 225000375228
db.r7g.12xlarge 341206346547
db.r7g.16xlarge 450000750456
db.r6gd.xlarge 28261849702
db.r6gd.2xlarge 56711183565
db.r6gd.4xlarge 113609865216
db.r6gd.8xlarge 225000375228
db.r6g.large 14037181030
db.r6g.xlarge 28261849702
db.r6g.2xlarge 56711183565
db.r6g.4xlarge 113609865216
db.r6g.8xlarge 225000375228
db.r6g.12xlarge 341206346547
db.r6g.16xlarge 450000750456
db.t4g.small 1471026299
db.t4g.medium 3317862236
참고

모든 MemoryDB 인스턴스 유형은 Amazon Virtual Private Cloud VPC에서 생성해야 합니다.