수집 횟수 제한
Milvus 인스턴스는 최대 65,536개의 컬렉션을 허용합니다. 그러나 컬렉션 수가 너무 많으면 성능 문제가 발생할 수 있습니다. 따라서 Milvus 인스턴스에서 생성되는 컬렉션 수를 제한하는 것이 좋습니다.
이 가이드는 Milvus 인스턴스에서 컬렉션 수를 제한하는 방법에 대한 지침을 제공합니다.
구성은 Milvus 인스턴스를 설치하는 방식에 따라 다릅니다.
헬름 차트를 사용하여 설치한 Milvus 인스턴스의 경우
config
섹션 아래의values.yaml
파일에 구성을 추가합니다. 자세한 내용은 헬름 차트로 Milvus 구성을 참조한다.Docker Compose를 사용하여 설치한 Milvus 인스턴스의 경우
Milvus 인스턴스를 시작할 때 사용한
milvus.yaml
파일에 구성을 추가합니다. 자세한 내용은 Docker Compose로 Milvus 구성을 참조하세요.Operator를 사용하여 설치한 Milvus 인스턴스의 경우
Milvus
사용자 지정 리소스의spec.components
섹션에 구성을 추가합니다. 자세한 내용은 Operator로 Milvus 구성을 참조하세요.
구성 옵션
rootCoord:
maxGeneralCapacity: 65536
maxGeneralCapacity
매개 변수는 현재 Milvus 인스턴스가 보유할 수 있는 최대 컬렉션 수를 설정합니다. 기본값은 65536
입니다.
컬렉션 수 계산하기
컬렉션에서 여러 개의 샤드와 파티션을 설정할 수 있습니다. 샤드는 여러 데이터 노드에 데이터 쓰기 작업을 분산하는 데 사용되는 논리적 단위입니다. 파티션은 컬렉션 데이터의 하위 집합만 로드하여 데이터 검색 효율성을 높이는 데 사용되는 논리 단위입니다. 현재 Milvus 인스턴스의 컬렉션 수를 계산할 때는 샤드와 파티션도 계산해야 합니다.
예를 들어, 이미 100개의 컬렉션을 생성했고, 그 중 60개 컬렉션에는 2개의 샤드와 4개의 파티션이, 나머지 40개 컬렉션에는 1개의 샤드와 12개의 파티션이 있다고 가정해 보겠습니다. 현재 컬렉션 수는 다음과 같이 계산할 수 있습니다:
60 (collections) x 2 (shards) x 4 (partitions) + 40 (collections) x 1 (shard) x 12 (partitions) = 960
위의 예에서는 기본 한도 중 960개를 이미 사용했습니다. 이제 샤드 4개와 파티션 20개로 구성된 새 컬렉션을 만들려고 하면 총 컬렉션 수가 최대 용량을 초과하므로 다음과 같은 오류 메시지가 표시됩니다:
failed checking constraint: sum_collections(parition*shard) exceeding the max general capacity:
이 오류를 방지하려면 기존 컬렉션 또는 새 컬렉션의 샤드 또는 파티션 수를 줄이거나 일부 컬렉션을 삭제하거나 maxGeneralCapacity
값을 늘릴 수 있습니다.