ClickHouse Cloud에서 Memory 테이블 엔진을 사용할 때 데이터는 설계상 모든 노드에 복제되지 않습니다. 모든 쿼리가 동일한 노드로 라우팅되고 Memory 테이블 엔진이 예상대로 동작하도록 보장하려면 다음 중 하나를 수행할 수 있습니다:
- 모든 작업을 동일한 세션에서 실행하세요
- TCP 또는 네이티브 인터페이스(고정 연결 지원 활성화)를 사용하는 클라이언트를 사용하세요. 예: clickhouse-client
GLOBAL IN 구현(「IN 연산자」 섹션 참조)에 사용됩니다.
Memory 엔진 테이블 크기를 제한하기 위해 상한과 하한을 지정할 수 있으며, 이를 통해 사실상 순환 버퍼처럼 동작하게 할 수 있습니다(엔진 매개변수 참조).
엔진 매개변수
min_bytes_to_keep— 메모리 테이블에 크기 제한이 설정된 경우 유지할 최소 바이트 수입니다.- 기본값:
0 max_bytes_to_keep와 함께 사용해야 합니다
- 기본값:
max_bytes_to_keep— 메모리 테이블에서 유지할 최대 바이트 수입니다. 각 삽입 시 가장 오래된 행이 삭제되며(즉, 순환 버퍼), 큰 블록을 추가할 때 제거 대상인 가장 오래된 행 배치가min_bytes_to_keep제한 아래로 내려가면 실제 최대 바이트 수가 명시된 제한을 초과할 수 있습니다.- 기본값:
0
- 기본값:
min_rows_to_keep— 메모리 테이블에 크기 제한이 설정된 경우 유지할 최소 행 수입니다.- 기본값:
0 max_rows_to_keep와 함께 사용해야 합니다
- 기본값:
max_rows_to_keep— 메모리 테이블에서 유지할 최대 행 수입니다. 각 삽입 시 가장 오래된 행이 삭제되며(즉, 순환 버퍼), 큰 블록을 추가할 때 제거 대상인 가장 오래된 행 배치가min_rows_to_keep제한 아래로 내려가면 실제 최대 행 수가 명시된 제한을 초과할 수 있습니다.- 기본값:
0
- 기본값:
compress- 메모리에서 데이터를 압축할지 여부입니다.- 기본값:
false
- 기본값:
사용법
bytes 및 rows 제한 매개변수는 동시에 설정할 수 있지만, 이 경우 max와 min 중 더 낮은 한도가 적용됩니다.