Ana içeriğe geç
Programlama

ClickHouse C istemcisi yerel ikili protokol desteğiyle yayımlandı

Öne çıkanlar

  • Kütüphane, yalnızca libc gerektiren sadece başlıktan oluşan C11 mimarisiyle geliştirildi.
  • PostgreSQL eklentilerine gömülmeye uygun esnek bellek yönetimi altyapısı sunuyor.
  • TCP iletişim döngüsü ClickHouse 23.3 ve sonraki sürümleri destekliyor.

ClickHouse ekibi, veri tabanının yerel ikili protokolünü doğrudan kullanan sadece başlıktan oluşan C istemcisi clickhouse-c projesini açık kaynak olarak sundu. Yeni kütüphane, TCP üzerinden taşınan yerel protokol bloklarını çözümlemek veya üretmek amacıyla geliştirildi. Kod tabanında harici bağımlılık barındırmayan proje, standart C11 standardında yazıldı ve libc dışında herhangi bir bağlama bağımlılığı aramıyor.

İstemci mimarisi, özellikle PostgreSQL eklentileri gibi gömülü sistemlerle tam uyum sağlayacak biçimde palloc bellek havuzları ve hata işleme mekanizmaları gözetilerek tasarlandı. Çekirdek işlevleri içeren clickhouse.h dosyasının yanı sıra TCP yönetimi, LZ4 ve Zstandard sıkıştırma protokolleri, OpenSSL katmanı ve bloklayıcı POSIX I/O işlemleri için bağımsız başlık dosyaları sunuluyor. Geliştiriciler, projelerinin gereksinimlerine göre sadece ihtiyaç duydukları modülleri derleme sürecine dahil edebiliyor.

clickhouse-c, ClickHouse 23.3 ve üzeri sürümleri destekliyor ve sistem genelinde HTTP protokolü, DNS yönetimi veya bağlantı havuzu gibi üst düzey karmaşıklıkları barındırmıyor. İstemci tek iş parçacıklı olarak çalışırken, olay döngülerine entegrasyon için soket bağımsız I/O desteği sağlayan clickhouse-async.h başlığı da paket içeriğinde yer alıyor. İlk sürüm kapsamında dinamik veri tipleri ve değişken formatların çözümlenmesi ise dışarıda bırakıldı.

Kaynak

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