Bilgi Bankası
ClickHouseMaliyet ve kaynak 16 dk 14.06.2026

ClickHouse disk doluyor: TTL, retention ve partition temizliği nasıl planlanır?

ClickHouse çok hızlı veri yutar; sorun da bazen tam buradan doğar. Event, log ve metrik verisi aylarca temizlenmeden büyürse disk dolar, sorgular ağırlaşır ve maliyet sessizce yükselir.

Bu yazı sana şu durumda yardımcı olur
  • ClickHouse disk kullanımı hızla artıyor
  • eski event veya log verisi silinmiyor
  • TTL tanımlı ama disk hemen boşalmıyor
  • partition sayısı ve part sayısı büyüyor
  • raporlar sadece son 30 günü okurken yılların verisi sıcak diskte duruyor
Yazıyı bitirince

ClickHouse’ta hangi tablo ne kadar yer kaplıyor, hangi partitionlar eski, TTL neden hemen disk boşaltmıyor ve ne zaman DROP PARTITION düşünülür sorularına daha güvenli cevap verebileceksiniz.

TürkDB açısından ürünleşme notu

Bu bölüm, TürkDB’nin ilgili problemi hangi ürün ilkeleri ve kontrol noktalarıyla ele alacağını anlatır. Kapsam, gerçek iş yükü ve ihtiyaçla birlikte netleşir.

TürkDB ClickHouse tarafında kapasite, yedek ve olay görünürlüğünü pilotta kanıtlamayı hedefler. Veri saklama politikası ise müşterinin ürün, uyum ve maliyet kararına bağlıdır; platform bu kararı görünür kılmalı, sizin yerinize uydurmamalıdır.

Disk sorunu veri saklama kararıdır

ClickHouse disk doluluğu çoğu zaman teknik bir temizlik işi gibi ele alınır. Oysa ilk soru teknik değildir: Bu veri ne kadar süre sıcak diskte kalmalı? Son 7 gün operasyon için, son 90 gün rapor için, daha eski veri arşiv için yeterli olabilir.

Bu karar verilmeden TTL eklemek veya partition silmek risklidir. Yanlış saklama süresi ürün raporlarını, müşteri sözleşmesini veya uyum ihtiyacını bozabilir.

  • Event verisi ile denetim kaydı aynı saklama süresine sahip olmayabilir.
  • Raporun okuduğu tarih aralığı gerçek saklama ihtiyacını gösterir.
  • Sıcak disk, arşiv ve yedek ayrı maliyet kalemleridir.
  • Temizlik kararı geri dönüş ihtiyacıyla birlikte yazılmalıdır.

Hangi tablo ve partition büyüyor?

İlk adım tablo bazında disk kullanımını görmek, sonra partition dağılımına inmektir. system.parts bu iş için çok değerlidir; aktif partlar, satır sayısı ve byte miktarı hızlıca okunabilir.

Sadece toplam disk kullanımına bakmak yetmez. Bazen tek bir yanlış partition, bazen çok fazla küçük part, bazen de eski ama hâlâ sıcak diskte duran veri maliyeti büyütür.

Tablo ve partition disk kullanımı

clickhouse-storage-by-partition.sql
SELECT
  database,
  table,
  partition,
  count() AS parts,
  sum(rows) AS rows,
  formatReadableSize(sum(bytes_on_disk)) AS disk_size
FROM system.parts
WHERE active
GROUP BY database, table, partition
ORDER BY sum(bytes_on_disk) DESC
LIMIT 50;

TTL hemen disk boşaltmayabilir

ClickHouse TTL tanımı, verinin mantıksal olarak ne zaman silineceğini anlatır; fiziksel disk boşalması merge süreçlerine bağlıdır. Bu yüzden TTL ekledim ama disk hâlâ dolu demek tek başına hata değildir.

Yine de TTL’nin doğru kolona bağlı olduğundan, tarih alanının beklenen değeri taşıdığından ve merge süreçlerinin yetişebildiğinden emin olmak gerekir. Çok agresif TTL veya çok küçük insertler merge baskısını artırabilir.

TTL tanımı örneği

clickhouse-ttl.sql
ALTER TABLE analytics.events
MODIFY TTL event_date + INTERVAL 90 DAY DELETE;

SHOW CREATE TABLE analytics.events;

TTL kararını canlı tabloda uygulamadan önce test ortamında ve gerçek veri dağılımıyla deneyin.

DROP PARTITION güçlü ama geri dönüşü plan ister

Eski partitionları silmek disk sorununu hızlı çözer; ama bu işlem ürün ve uyum açısından doğru mu önce netleşmelidir. Silinen verinin yedeği var mı, raporlar etkilenir mi, müşteri sözleşmesinde saklama sözü var mı?

Partition silme kararını olay gibi kaydedin. Hangi partition, hangi gerekçeyle, hangi onayla silindi? Bu küçük kayıt ileride “veri nereye gitti?” sorusunu sakinleştirir.

Partition silmeden önce kontrol notu

clickhouse-drop-partition-check.md
Tablo:
Partition:
Tarih aralığı:
Disk kazanımı tahmini:
Yedek/geri dönüş durumu:
Etkilenen rapor var mı:
Uyum/sözleşme engeli var mı:
Onay:
Uygulama zamanı:
Devam etmek istersen

Sorunu motor bazında derinleştirin

Benzer belirtiler farklı motorlarda farklı nedenlere dayanır; yayınlanan tüm rehberleri ana sayfadan takip edebilirsiniz.

Tüm makaleler