Set 테이블 엔진
Set 테이블 엔진
Set 엔진은 항상 RAM에 있는 데이터 집합으로, IN 연산자의 오른쪽에서 사용하기 위한 것이에요. INSERT로 데이터를 넣을 수 있지만 SELECT는 할 수 없고, IN 연산자의 오른쪽에서만 데이터를 조회할 수 있답니다.
출처: 문서
본문
ClickHouse Cloud에서 서비스가 25.4 이전 버전으로 생성된 경우, SET compatibility=25.4를 사용하여 호환성을 최소 25.4로 설정해야 합니다.
항상 RAM에 있는 데이터 집합입니다. IN 연산자의 오른쪽에서 사용하기 위한 것입니다( "IN operators" 섹션 참조).
INSERT를 사용하여 테이블에 데이터를 삽입할 수 있어요. 새 요소는 데이터 집합에 추가되고, 중복은 무시됩니다.
하지만 테이블에서 SELECT를 수행할 수는 없습니다. 데이터를 검색하는 유일한 방법은 IN 연산자의 오른쪽에서 사용하는 것입니다.
데이터는 항상 RAM에 있습니다. INSERT의 경우 삽입된 데이터 블록도 디스크의 테이블 디렉토리에 기록됩니다. 서버를 시작하면 이 데이터가 RAM으로 로드됩니다. 즉 재시작 후에도 데이터는 그 자리에 남아 있습니다.
거친(rough) 서버 재시작의 경우 디스크의 데이터 블록이 손실되거나 손상될 수 있어요. 후자의 경우 손상된 데이터가 있는 파일을 수동으로 삭제해야 할 수 있습니다.
제한 사항 및 설정 (Limitations and settings)
테이블을 만들 때 다음 설정이 적용됩니다:
Persistent
Set 및 Join 테이블 엔진에 대한 지속성(persistency)을 비활성화합니다.
I/O 오버헤드를 줄입니다. 성능을 추구하고 지속성이 필요하지 않은 시나리오에 적합합니다.
가능한 값:
- 1 — 활성화.
- 0 — 비활성화.
기본값: 1.