목록DB/Clickhouse (3)
나의 잡다한 노트 및 메모
기존에 Zookeeper가 담당하던 메타데이터 관리, 클러스터 코디네이션 기능을 ClickHouse 자체적으로 제공하기 위해 도입된 내장 분산 합의 서비스.원래 ClickHouse에서 ReplicatedMergeTree 등 복제 기능을 사용하기 위해서는 외부에 Zookeeper 클러스터가 필요했는데, 이제는 ClickHouse Keeper를 통해 Zookeeper 없이도 비슷한 역할을 수행할 수 있게 됐다.왜 필요한가?ReplicatedMergeTree 엔진은 여러 Replica 노드가 동일한 테이블 파트를 비동기 복제하기 위해,어떤 파트가 생성됐고, 어느 노드에 있으며, 어떤 파트를 아직 받지 못했는지 등 상태 정보를 공유해야 한다.이를 관리하는 중앙 메타스토어 역할을 zookeeper가 해왔다.즉, ..
ClickHouse는 기본적으로 OLAP(분석) 용도 DB로 설계되었으며, 멀티 노드 구성을 통해 **고가용성(HA)**을 실현할 수 있습니다.그 핵심은 ReplicatedMergeTree 엔진(또는 변형: ReplicatedReplacingMergeTree, ReplicatedCollapsingMergeTree 등)을 사용해 서로 다른 노드에 테이블을 복제(Replication) 하고, **클라이언트(또는 Distributed 테이블)**에서 읽기 쿼리를 요청할 때 건강한(접근 가능한) 노드 중 하나에 연결하는 구조입니다.아래에서는 ClickHouse HA 아키텍처의 주요 요소와 구현 방법을 단계별로 정리해 봅니다.1. ReplicatedMergeTree로 테이블 복제ReplicatedMergeTree..
ClickHouse가 가진 철학과 추구하는 방향성 및 특징을 설명하는 글.1. 초고속 대화형 분석(OLAP)에 최적화컬럼 지향(Column-Oriented) 구조일반적인 행(Row) 지향 DB가 아닌 컬럼 단위로 데이터를 저장·압축·인덱싱함으로써,분석 쿼리에서 특정 컬럼들만 읽으면 되므로 I/O 양과 메모리 사용을 최소화합니다.집계(aggregation) 함수나 그룹화 쿼리에서 매우 빠른 성능을 낼 수 있습니다.실시간(근실시간) 대량 데이터 처리를 위한 설계트래픽 로그, 이벤트 로그, IoT 시계열 데이터 등 고속으로 유입되는 대규모 데이터를 수 초 이내에 쿼리할 수 있는 구조로 만들어졌습니다.OLAP + 대화형 쿼리(Interactive Query) 환경을 목표로 하며, 임의의 시점에 대해 초 단위 이..