티스토리 뷰

반응형

ClickHouse supports multiple table engines, each with different storage and performance characteristics. The following are the most commonly used table engines in ClickHouse:

  1. MergeTree: This is the default engine used in ClickHouse. It is optimized for read-heavy workloads and provides efficient filtering and aggregation operations. It uses a b-tree data structure and supports partial indexing and data compression.
  2. ReplacingMergeTree: This engine is similar to MergeTree but it is designed for write-heavy workloads. It supports efficient updates and deletions of data.
  3. CollapsingMergeTree: This engine is similar to ReplacingMergeTree, but it is optimized for use cases where data is frequently updated and the most recent version of the data is needed. It collapses multiple updates of the same row into a single row.
  4. AggregatingMergeTree: This engine is used for aggregation operations and supports efficient grouping and summarization of data.
  5. TinyLog: This engine is optimized for logging use cases where data is written in real-time and retention is not a concern. It supports efficient inserts but does not support updates or deletions.
  6. Buffer: This engine is used as a temporary storage for data before it is written to a permanent table.

You can choose the table engine that best fits your use case based on the desired performance characteristics and data processing requirements.

 

 

ClickHouse는 각기 다른 스토리지 및 성능 특성을 가진 여러 테이블 엔진을 지원합니다. 다음은 ClickHouse에서 가장 일반적으로 사용되는 테이블 엔진입니다.

  1. MergeTree : ClickHouse에서 사용되는 기본 엔진입니다. 읽기 작업이 많은 워크로드에 최적화되어 있으며 효율적인 필터링 및 집계 작업을 제공합니다. B-트리 데이터 구조를 사용하고 부분 인덱싱 및 데이터 압축을 지원합니다.
  2. ReplacingMergeTree : 이 엔진은 MergeTree와 유사하지만 쓰기 작업이 많은 워크로드용으로 설계되었습니다. 효율적인 데이터 업데이트 및 삭제를 지원합니다.
  3. CollapsingMergeTree : 이 엔진은 ReplacingMergeTree와 유사하지만 데이터가 자주 업데이트되고 최신 버전의 데이터가 필요한 사용 사례에 최적화되어 있습니다. 동일한 행의 여러 업데이트를 단일 행으로 축소합니다.
  4. AggregatingMergeTree : 이 엔진은 집계 작업에 사용되며 데이터의 효율적인 그룹화 및 요약을 지원합니다.
  5. TinyLog : 이 엔진은 데이터가 실시간으로 기록되고 보존이 문제가 되지 않는 로깅 사용 사례에 최적화되어 있습니다. 효율적인 삽입을 지원하지만 업데이트 또는 삭제는 지원하지 않습니다.
  6. 버퍼 : 이 엔진은 데이터가 영구 테이블에 기록되기 전에 임시 저장소로 사용됩니다.

원하는 성능 특성 및 데이터 처리 요구 사항에 따라 사용 사례에 가장 적합한 테이블 엔진을 선택할 수 있습니다.

반응형