ClickHouse Cloud의 쿼터ClickHouse Cloud에서도 쿼터를 지원하지만, DDL 구문을 사용해 생성해야 합니다. 아래에 설명된 XML 구성 방식은 지원되지 않습니다.
- 단일 쿼리를 제한하는 대신, 일정 기간 동안 실행할 수 있는 쿼리 집합에 제한을 둡니다.
- 분산 쿼리 처리 중 모든 원격 서버에서 사용된 리소스를 집계합니다.
queries – 총 요청 수입니다.
query_selects – 총 select 요청 수입니다.
query_inserts – 총 insert 요청 수입니다.
errors – 예외를 발생시킨 쿼리 수입니다.
result_rows – 결과로 반환된 총 행 수입니다.
result_bytes - 결과로 반환된 행의 총 크기입니다.
read_rows – 모든 원격 server에서 쿼리를 실행하기 위해 table에서 읽은 source 행의 총수입니다.
read_bytes - 모든 원격 server에서 쿼리를 실행하기 위해 table에서 읽은 총 크기입니다.
written_bytes - 쓰기 작업의 총 크기입니다.
execution_time – 총 쿼리 실행 시간(초, wall time)입니다.
failed_sequential_authentications - 연속 인증 오류의 총횟수입니다.
queries_per_normalized_hash – 단일 정규화된 쿼리의 최대 실행 횟수입니다. 정규화된 쿼리란 리터럴이 플레이스홀더로 대체된 쿼리를 의미하므로, SELECT 1과 SELECT 2는 동일한 정규화된 쿼리로 간주됩니다. 이 제한은 각기 다른 정규화된 쿼리 패턴별로 독립적으로 추적됩니다.
하나 이상의 시간 인터벌에서 이 제한을 초과하면, 어떤 제한이 초과되었는지, 어떤 인터벌에 해당하는지, 그리고 새 인터벌이 언제 시작되는지(다시 쿼리를 보낼 수 있는 시점)를 설명하는 텍스트와 함께 예외가 발생합니다.
QUOTA는 여러 키의 리소스를 각각 독립적으로 보고하기 위해 “QUOTA key” 기능을 사용할 수 있습니다. 다음은 그 예시입니다:
<keyed_by_normalized_query_hash />로 작성합니다:
SELECT number FROM numbers(1)와 SELECT number FROM numbers(2)는 동일한 버킷을 공유하지만(정규화된 형식이 같기 때문), SELECT number, number FROM numbers(1)는 별도의 버킷을 사용합니다.
이 QUOTA는 config의 ‘users’ 섹션에서 사용자에게 할당됩니다. “접근 권한” 섹션을 참조하십시오.
분산 쿼리 처리에서는 누적된 값이 요청을 보낸 서버에 저장됩니다. 따라서 사용자가 다른 서버로 이동하면 해당 서버의 QUOTA는 “처음부터 다시” 시작됩니다.
서버를 재시작하면 QUOTA가 재설정됩니다.