본문으로 바로가기
본문으로 바로가기

특수 테이블 엔진

테이블 엔진은 세 가지 주요 범주로 나뉩니다:

나머지 엔진은 용도가 고유하고 아직 계열로 묶이지 않았기 때문에 이 「특수」 범주에 배치되어 있습니다.

PageDescription
Alias table engineAlias 테이블 엔진은 다른 테이블에 대한 투명한 프록시를 생성합니다. 모든 연산은 대상 테이블로 전달되며, 별칭 자체는 어떠한 데이터도 저장하지 않습니다.
Distributed table engineDistributed 엔진을 사용하는 테이블은 자체적으로 데이터를 저장하지 않지만, 여러 서버에서 분산 쿼리 처리를 할 수 있도록 합니다. 읽기 작업은 자동으로 병렬화됩니다. 읽기 시, 원격 서버에 인덱스가 있으면 그 인덱스를 사용합니다.
Dictionary table engineDictionary 엔진은 딕셔너리 데이터를 ClickHouse 테이블로 표시합니다.
Merge table engineMerge 엔진(MergeTree와 혼동하지 마십시오)은 자체적으로 데이터를 저장하지 않지만, 다른 여러 개의 테이블에서 동시에 읽을 수 있도록 합니다.
Executable and ExecutablePool table enginesExecutableExecutablePool 테이블 엔진은 사용자가 정의한 스크립트(stdout으로 행을 출력하는 방식)를 통해 행이 생성되는 테이블을 정의할 수 있도록 합니다.
File table engineFile 테이블 엔진은 데이터를 지원되는 파일 포맷(TabSeparated, Native 등) 중 하나의 파일에 저장합니다.
Null table engineNull 테이블에 쓸 때 데이터는 무시됩니다. Null 테이블에서 읽을 때 응답이 비어 있습니다.
Set table engine항상 RAM에 존재하는 데이터 집합입니다. IN 연산자의 오른쪽에서 사용하도록 설계되었습니다.
Join table engineJOIN 연산에서 사용하기 위한 선택적인 사전 준비 데이터 구조입니다.
URL table engine원격 HTTP/HTTPS 서버로부터 데이터를 조회하거나, 해당 서버로 데이터를 전송합니다. 이 엔진은 File 엔진과 유사합니다.
View table engine뷰를 구현하는 데 사용됩니다(자세한 내용은 CREATE VIEW query를 참조하십시오). 데이터는 저장하지 않고 지정된 SELECT 쿼리만 저장합니다. 테이블에서 읽을 때는 이 쿼리를 실행하고, 쿼리에서 불필요한 컬럼을 모두 제거합니다.
Memory table engineMemory 엔진은 데이터를 압축하지 않은 형태로 RAM에 저장합니다. 데이터는 읽을 때 수신한 형태와 정확히 동일한 형식으로 저장됩니다. 다시 말해, 이 테이블에서의 읽기에는 추가 비용이 들지 않습니다.
Buffer table engineRAM에 쓸 데이터를 버퍼링한 후, 주기적으로 다른 테이블로 플러시합니다. 읽기 작업 동안에는 버퍼와 다른 테이블에서 데이터를 동시에 읽습니다.
External data for query processingClickHouse는 쿼리 처리를 위해 서버에 필요한 데이터를 SELECT 쿼리와 함께 전송할 수 있도록 합니다. 이 데이터는 임시 테이블에 저장되며, 쿼리에서 (IN 연산자 등에서) 사용할 수 있습니다.
GenerateRandom table engineGenerateRandom 테이블 엔진은 지정된 테이블 스키마에 대해 랜덤 데이터를 생성합니다.
KeeperMap table engine이 엔진은 Keeper/ZooKeeper 클러스터를 선형화 가능한 쓰기와 순차 일관성이 보장되는 읽기를 제공하는 일관된 키-값 저장소로 사용할 수 있도록 합니다.
FileLog table engine이 엔진은 애플리케이션 로그 파일을 레코드 스트림으로 처리할 수 있도록 합니다.