Ana içeriğe geç
Bulut & Altyapı

ClickHouse sorgu süresi 85 saniyeden 400 milisaniyeye indirildi

Öne çıkanlar

  • Sorgu süresi 85,7 saniyeden 400 milisaniyeye inerek 200 kattan fazla hızlandı.
  • Bölümleme anahtarı ve zorunlu birleştirmelerle disk boyutu 2,12 TiB'den 1,55 TiB'ye geriledi.
  • Taranan satırların yüzde 97'sini oluşturan süresi dolmuş veriler sıralama anahtarıyla elendi.

Büyük müşterilerin ilk açılış ekranında çalışan ve 1,96 milyar satırı tarayan ClickHouse analitik sorgusu, dört aylık aşamalı mühendislik çalışmalarıyla 85,7 saniyeden 400 milisaniyenin altına düşürüldü. Değiştirilebilir olay kayıtları sebebiyle ReplacingMergeTree motoru ve yoğun FINAL ifadesi kullanan sistemde, Kafka üzerinden sürekli gelen güncellemelerin oluşturduğu gecikme sorunları optimize edildi.

İlk aşamada aylık bölümleme yerine müşteri kimliği modülüyle 36 sabit bölümlü yapıya geçildi ve FINAL işlemlerinin paralelliği artırıldı. Sıralama anahtarındaki sütun yerleşimleri düzenlendi, pahalı birleştirme (JOIN) işlemleri kaldırıldı ve dokuz ayrı sütunun taranmasını engelleyen uygulama seviyesinde ön hesaplamalar devreye alındı. Ayrıca üç katmanlı parametreli görünümler düz şablonlarla değiştirilerek sorgu hazırlık süreleri düşürüldü.

Parça birleştirme yapılandırmasındaki 24 saat kuralıyla diskteki kopya satırlar temizlendi ve toplam veri tabanı boyutu 2,12 TiB seviyesinden 1,55 TiB düzeyine çekildi. Son adımda, taranan verilerin yüzde 97'sini oluşturan süresi dolmuş kayıtların elenmesi için sıralama anahtarına bitiş tarihi eklendi. Granül seviyesinde filtreleme sayesinde en büyük müşterilerde 200 kattan fazla performans artışı elde edildi.

Kaynak

Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.