2025년 ClickHouse 주요 변화 (25.1~25.12)
2025년 열두 번의 월간 릴리스(25.3 과 25.8 은 LTS) 에서 JSON 타입 GA, 데이터 레이크 카탈로그, 경량 UPDATE, 조인 최적화, 텍스트 인덱스까지 무엇이 바뀌었는지와 HyperDX, ClickStack, LibreChat 같은 회사 소식을 공식 릴리스 글과 체인지로그로 확인해 정리합니다.
한눈에 보기
ClickHouse 는 매달 한 번 YY.M 버전을 내고, 3월과 8월 릴리스를 LTS 로 1년 동안 패치합니다. 2025년도 그 리듬대로 열두 번 나왔습니다. 날짜는 공식 체인지로그의 릴리스 날짜이고, 릴리스 글(블로그) 은 보통 1~2주 뒤에 올라옵니다.
| 버전 | 릴리스 날짜 | 기억할 것 |
|---|---|---|
| 25.1 | 2025-01-28 | 병렬 해시 조인 가속, 테이블 단위 MinMax 인덱스, generateSerialID |
| 25.2 | 2025-02-27 | Parquet Bloom 필터 쓰기, 조건 전이 추론, Backup 데이터베이스 엔진, Delta Kernel(Exp) |
| 25.3 LTS | 2025-03-20 | JSON 타입 GA, Glue 와 Unity 카탈로그, 쿼리 조건 캐시, S3 자동 병렬화 |
| 25.4 | 2025-04-22 | 지연 물질화(lazy materialization), Iceberg time travel, EXISTS 상관 서브쿼리, SSH 인터페이스 |
| 25.5 | 2025-05-22 | 벡터 유사도 인덱스 Beta, Hive Metastore 카탈로그, Parquet 지리 타입 |
| 25.6 | 2025-06-26 | 쿼리 안 일관 스냅샷, 프로젝션 여러 개 동시 사용, system.codecs, chdig |
| 25.7 | 2025-07-24 | 경량 UPDATE(패치 파트), AI SQL 생성, GeoParquet 네이티브 타입 |
| 25.8 LTS | 2025-08-28 | Parquet 리더 v3(Exp), Iceberg 와 Delta 쓰기, 카탈로그 Beta, PromQL 첫 지원, Arrow Flight |
| 25.9 | 2025-09-25 | 조인 순서 자동 재배치, 보조 인덱스 스트리밍, 텍스트 인덱스(Exp), arrayExcept |
| 25.10 | 2025-10-30 | 조인 Bloom 필터와 지연 컬럼 복제, 자동 컬럼 통계, QBit 타입, LIMIT BY ALL |
| 25.11 | 2025-11-27 | ACME 인증서 자동 발급, EXECUTE AS, 분수 LIMIT, Geometry 타입, Object 타입과 LIVE VIEW 제거 |
| 25.12 | 2025-12-18 | Top-N 가속, DPsize 조인 재배치, 텍스트 인덱스 Beta, 상수 아닌 IN, Time 타입 기본 활성 |
참고 기능의 단계(Exp, Beta, GA) 는 릴리스 글에 적힌 표현을 그대로 옮겼습니다. 글에 단계가 없으면 적지 않았습니다. 2026년 릴리스(26.1 이후) 는 2026년 주요 변화 에 이어집니다.
2025년을 관통한 네 가지 흐름
- JSON 이 진짜 타입이 됐다. 25.3 에서
JSON,Variant,Dynamic타입이 production-ready 로 선언됐고, 25.8 의 "advanced shared data" 저장 방식이 25.12 에 기본값이 됐습니다(25.8 미만으로 다운그레이드 불가). 반대로 옛Object('json')타입은 25.11 에 제거됐습니다. 데이터 타입 고르기, 배열, Map, JSON 다루기. - 데이터 레이크가 읽기 전용에서 벗어났다. Glue, Unity, Hive Metastore, REST 카탈로그가 차례로 들어와 25.8 에 Beta 가 됐고, Iceberg time travel(25.4), Iceberg 와 Delta Lake 쓰기(25.8, Exp), Delta CDF(25.12) 가 이어졌습니다. 오브젝트 스토리지와 데이터 레이크.
- 조인이 해마다 다른 엔진이 됐다. 병렬 해시 조인 가속(25.1, 25.2), 조인 순서 자동 재배치(25.9), 런타임 Bloom 필터와 OR 조건 푸시다운(25.10), DPsize 재배치(25.12), 자동 컬럼 통계(25.10) 가 쌓여 TPC-H 류 쿼리의 메모리와 시간이 크게 줄었습니다. JOIN 전략.
- 갱신과 검색이 OLAP 안으로 들어왔다. 패치 파트 기반 경량 UPDATE(25.7), 벡터 인덱스 Beta(25.5), 텍스트 인덱스 Exp(25.9) 에서 Beta(25.12). 삭제와 갱신, 스킵 인덱스와 프로젝션.
릴리스별 정리
25.1 (2025-01-28)
새 기능 15, 성능 개선 36, 버그 수정 77.
- 병렬 해시 조인의 탐색 단계가 공유 2단계 해시 테이블 하나를 쓰도록 바뀌어 블록 분할 비용이 사라졌습니다. 공식 벤치마크에서 30% 대 가속.
add_minmax_index_for_numeric_columns설정으로 숫자 컬럼 전부에 MinMax 인덱스를 한 번에 거는 테이블 단위 옵션.generateSerialID함수: Keeper 에 저장되는 이름 붙은 카운터로 자동 증가 ID 를 만듭니다.Merge엔진이 타입이 다른 같은 이름 컬럼을 공통 타입 또는Variant로 맞춰 보여 줍니다.- 터미널에 Parquet 같은 바이너리 포맷을 출력하려 하면 확인을 묻고, Pretty 포맷에서 긴 컬럼 이름을 줄여 줍니다.
25.2 (2025-02-27)
새 기능 12, 성능 개선 15, 버그 수정 72.
- 병렬 해시 조인의 빌드 단계 스레드 경합 제거. 32코어 합성 테스트에서 12.3초가 6.3초로.
- Parquet 출력에 Bloom 필터 쓰기. 파일은 10% 안팎 커지고 선택적 조건 쿼리는 30~40% 빨라졌습니다.
- 조건 전이 추론:
a < b AND b < c AND c < 5같은 비교 사슬에서a < 5를 끌어내 기본 키 가지치기에 씁니다. Backup데이터베이스 엔진으로 백업 안의 테이블을 복원 없이 읽기 전용으로 붙입니다. 백업과 복원.- Databricks 의 delta-kernel-rs 기반 Delta Lake 구현(Exp,
allow_experimental_delta_kernel_rs). JSONCompactEachRowWithProgress등 진행 상황을 함께 흘려 주는 HTTP 스트리밍 포맷.
25.3 LTS (2025-03-20)
새 기능 18, 성능 개선 13, 버그 수정 48.
JSON타입 production-ready.Variant,Dynamic도 함께. 경로마다 열 지향 서브컬럼으로 저장되고 쿼리 가속 기능이 그대로 적용됩니다.DataLakeCatalog데이터베이스 엔진으로 AWS Glue(Iceberg) 와 Unity Catalog(Iceberg, Delta) 를 붙입니다.- 쿼리 조건 캐시: 반복되는 선택적
WHERE의 스캔 결과를 캐시해 대시보드와 관측성 쿼리를 가속. 쿼리 최적화. - 병렬 복제본이 켜진 클러스터에서
s3()같은 외부 소스 읽기가 자동으로 노드에 분산됩니다(...Cluster함수 불필요). 10노드 예시에서 65초가 17초로. arraySymmetricDifference, 그리고 코덱별 압축률을 미리 재는estimateCompressionRatio.
25.4 (2025-04-22)
- 지연 물질화(lazy materialization): 컬럼 데이터를 실제로 필요할 때까지 읽지 않습니다.
ORDER BY ... LIMIT쿼리에서 효과가 큽니다. - Apache Iceberg time travel(
iceberg_timestamp_ms,iceberg_snapshot_id). EXISTS의 상관 서브쿼리 지원.clickhouse-local데이터베이스가 종료 후에도 디스크에 남습니다.- 테이블 또는 서버 전체의 기본 압축 코덱 설정. 압축과 코덱.
- SSH 프로토콜로 서버에 직접 접속.
25.5 (2025-05-22)
새 기능 15, 성능 개선 23, 버그 수정 64.
- 벡터 유사도 인덱스가 Exp 에서 Beta 로.
- Hive Metastore 카탈로그로 Iceberg 테이블 조회.
system.functions의introduced_in컬럼: 함수가 어느 버전에 들어왔는지.clickhouse-local에서 파일을 바로 테이블로 쓰는 암시적 테이블 생성.- Parquet 의 지리 타입(Geo) 읽기와 쓰기.
25.6 (2025-06-26)
새 기능 25, 성능 개선 32, 버그 수정 105.
- 쿼리 하나 안의 서브쿼리와 테이블 참조가 같은 데이터 스냅샷을 읽습니다(일관 스냅샷).
- 조건 필터에 프로젝션 여러 개를 동시에 활용.
Time,Time64타입(당시 Exp), Parquet 입출력의 JSON 호환 개선.system.codecs,system.iceberg_history시스템 테이블.- Bloom 필터 최적화. OpenAI 사례에서 트래픽 급증 시 CPU 약 40% 감소.
- 실시간 서버 진단 TUI
chdig.
25.7 (2025-07-24)
새 기능 27, 성능 개선 26, 버그 수정 98.
- 경량 UPDATE 와 DELETE: 패치 파트(patch part) 방식으로 변경분만 기록하고 읽을 때 합칩니다. 전체 파트를 다시 쓰는 뮤테이션과 달리 쿼리 성능을 거의 깎지 않습니다. 삭제와 갱신.
clickhouse-client에서 자연어로 SQL 을 만드는 AI 보조.- 집계와 조인 성능 개선, GeoParquet 네이티브 타입과 지리 함수 추가.
- 사용자 프로비저닝 유연화와 더 세밀한 권한.
25.8 LTS (2025-08-28)
새 기능 45, 성능 개선 47, 버그 수정 119. 2025년 가장 큰 릴리스였습니다.
- Parquet 리더 v3(Exp): 페이지 단위 필터와 PREWHERE, ClickBench 평균 1.81배. 입출력 포맷.
- Hive 스타일 파티션 디렉터리로 S3 에 쓰기.
- Iceberg 테이블에 INSERT, DELETE, UPDATE, 스키마 변경(쓰기는 Exp). REST 와 Glue 카탈로그 쓰기, Delta Lake 쓰기와 time travel. Unity, REST, Glue, Hive Metastore 카탈로그가 Beta 로.
_table가상 컬럼을merge함수 밖에서도.s3함수의extra_credentials로 IAM 역할 지정, S3 URL 패턴 단위GRANT.- Arrow Flight 서버와 클라이언트(초기 단계).
- PromQL 첫 지원(
rate,delta,increase). 이후 TimeSeries 엔진과 함께 확장됩니다. 모니터링. - Azure Blob Storage 용 자체 HTTP 클라이언트로 지연 급등 제거(
azure_sdk_use_native_client).
25.9 (2025-09-25)
- 테이블 크기 기준으로 조인 순서를 자동 재배치해 복잡한 조인의 시간과 메모리를 줄입니다.
- 보조 인덱스 스트리밍: 데이터를 읽으면서 인덱스를 확인해 시작 지연을 줄입니다.
- 텍스트 인덱스(Exp): 전문 검색용 역색인.
- 데이터 레이크 지원 확대,
arrayExcept, 값 없이 쓰는 불리언 설정(SETTINGS async_insert).
25.10 (2025-10-30)
새 기능 20, 성능 개선 30, 버그 수정 103.
- 조인에서 같은 값을 복사하지 않는 지연 컬럼 복제. 자체 조인 벤치마크에서 83초가 4초로.
- 오른쪽 조인 키로 런타임 Bloom 필터를 만들어 왼쪽을 미리 거름. TPC-H 예시에서 2.1배 빨라지고 메모리 7분의 1.
- 조인의 복잡한 OR 조건을 테이블별로 나눠 먼저 내려보냄.
auto_statistics_types로 MergeTree 컬럼 통계를 자동 생성해 조인과 필터 계획에 사용.QBit타입: 쿼리 시점에 정밀도(비트 수) 를 고르는 벡터 임베딩 타입.<=>(IS NOT DISTINCT FROM) 연산자 확대, 음수LIMIT,OFFSET,LIMIT BY ALL.- Arrow Flight 클라이언트가 Arrow Flight 서버를 조회. 보조 인덱스(예: HNSW) 의 늦은 물질화로 INSERT 가속.
25.11 (2025-11-27)
새 기능 24, 성능 개선 27, 버그 수정 97.
- ACME(Let's Encrypt, ZeroSSL) 로 TLS 인증서 자동 발급과 갱신, Keeper 로 클러스터 공유.
- 8비트와 16비트 키
GROUP BY의 병렬 머지(약 40% 가속). - 프로젝션을 보조 인덱스처럼 그래뉼 가지치기에 사용,
DISTINCT를 작은 프로젝션에서 읽기. argAndMax,argAndMin, 분수LIMIT,OFFSET(LIMIT 0.1은 상위 10%),EXECUTE AS로 다른 사용자로 실행(IMPERSONATE권한).Geometry타입(WKB, WKT 읽기),naiveBayesClassifier,cume_dist,h3PolygonToCells.- 호환성 주의:
Object타입과LIVE VIEW제거,String직렬화 기본이with_size_stream으로(25.10 미만 다운그레이드 불가),Variant서브컬럼 파일 이름 이스케이프.
25.12 (2025-12-18)
새 기능 26, 성능 개선 31, 버그 수정 129.
- 스킵 인덱스로 처리 행을 줄이는 Top-N 쿼리 가속, 정렬 키 밖 컬럼의 지연 읽기 개선.
- DPsize 알고리즘으로 INNER JOIN 순서를 더 넓게 탐색.
- 텍스트 인덱스가 Beta 로, 토크나이저 옵션 추가.
- 상수가 아닌
IN목록,HMAC함수, 역방향 조회dictGetKeys,Buffers포맷, 프로젝션 단위 설정(ADD PROJECTION ... WITH SETTINGS). Time,Time64타입 기본 활성화,deltaLake함수의 변경 데이터 피드, 튜플 음수 인덱스.- S3Queue 와 AzureQueue 가 처리한 파일을 옮기거나 태그를 붙일 수 있음.
- 호환성 주의:
ALTER MODIFY COLUMN으로 Nullable 을 비 Nullable 로 바꿀 때DEFAULT필수,CHECK TABLE이 파트별 결과를 기본 출력, JSON advanced shared data 기본값(25.8 미만 다운그레이드 불가),clickhouse-client가receive_timeout에 종료 코드 159.
회사와 제품 소식
| 날짜 | 소식 |
|---|---|
| 2025-03-13 | HyperDX 인수. 오픈소스 관측성 UI 를 만드는 팀이 합류했고, 오픈소스 프로젝트와 HyperDX Cloud 는 계속 운영한다고 밝혔습니다. |
| 2025-06-10 | ClickStack 발표. 로그, 메트릭, 트레이스, 세션 리플레이를 다루는 오픈소스 관측성 스택. OpenTelemetry Collector 와 HyperDX 기반 UI, 저장과 질의는 ClickHouse. ClickStack 과 chDB. |
| 2025-06 (OpenHouse) | ClickPipes Postgres CDC 커넥터 GA. PeerDB 기반. 같은 자리에서 경량 UPDATE 와 조인 성능 개선이 소개됐습니다. PostgreSQL, MySQL 연동과 CDC. |
| 2025-11-04 | LibreChat 인수. 여러 LLM 을 한 화면에서 쓰는 오픈소스 챗 앱. ClickHouse 와 묶어 "Agentic Data Stack" 으로 소개했고 오픈소스 개발은 계속 지원한다고 밝혔습니다. |
이 표는 공식 블로그와 뉴스레터에서 날짜를 확인한 것만 적었습니다. 2026년의 투자 유치와 추가 인수는 2026년 주요 변화 에 있습니다.
업그레이드할 때 볼 것
- 2025년 안에서는 25.3 LTS 에서 25.8 LTS 로 넘어가는 경로가 가장 무난합니다. 그 사이 호환성 변경은 적고, 25.8 의 JSON 저장 방식 변경은 기본값이 아니었습니다.
- 25.11 과 25.12 는 제거된 기능(
Object,LIVE VIEW) 과 기본값 변경(String 직렬화, JSON shared data, CHECK TABLE) 이 있으니compatibility설정과 체인지로그의 "Backward Incompatible Change" 를 먼저 읽으세요. 절차는 백업과 복원, 업그레이드 에 있습니다. - ClickHouse Cloud 는 별도 일정으로 버전이 올라가며, 콘솔의 릴리스 채널(fast, regular, slow) 로 시점을 조절합니다.