Her gün birkaç GB veri üretiyorsanız, sabit diskinizde yer kaplamaması için verileri nasıl sıkıştırıp saklarsınız?
Veri Sıkıştırma Nedir?
Veri sıkıştırma, bilgi teorisi ve kodlama algoritmalarını kullanarak, veri kaybı olmadan veya yalnızca çok az kabul edilebilir veri kaybıyla bilgisayar dosyalarında veriyi temsil etmek için gereken fiziksel depolama bit miktarını azaltma işlemidir.
Teorik temeli Shannon Bilgi Teorisi’ne dayanır: Orijinal mühendislik zaman serisi verilerinin büyük çoğunluğu önemli miktarda istatistiksel yedeklilik (Redundancy) ve ilişki içerir. Veri sıkıştırmanın özü, bu yedekliliği ortadan kaldırmaktır.
Genellikle iki ana dala ayrılır:
- Kaylossız Sıkıştırma (Lossless Compression): Geriye çözülen veriler, orijinal toplanan verilerle bit düzeyinde tamamen aynıdır. Bilimsel hesaplamalar, fiber optik algılama özellik tepe dalga boyu orijinal kayıtları gibi kritik senaryolarda kullanılır (yaygın algoritmalar arasında DEFLATE, LZ4, Zstandard, Snappy bulunur).
- Kayıplı Sıkıştırma (Lossy Compression): İnsan gözü veya mühendislik analizi tarafından hassas olmayan yüksek frekanslı küçük gürültülerin atılması yoluyla çok yüksek sıkıştırma oranları elde edilir. Ses/video ve endüstriyel zaman serisi kararlı verilerinde ölü bölge filtrelemesi için kullanılır.
Fiber Optik Algılama Senaryolarında Veri Şişkinliğinin Kök Nedenleri
Fiber Bragg Grating (FBG) gibi fiber optik algılama izleme sistemlerinde, günde onlarca gigabayt veri üretilmesinin tipik nedenleri şunlardır:
- Yüksek Örnekleme Frekansı: Çözme cihazı 50\ \text{Hz} veya 100\ \text{Hz} hızında çalışıyorsa, tek bir kanal saniyede 50 ila 100 veri çerçevesi üretir.
- Ölçüm Noktası ve Kanal Üst Üste Binmesi: Çok kanallı (örneğin 8, 16 veya 32 kanal) ve onlarca ölçüm noktasının seri bağlantısı kullanılırsa, nokta sayısı ile örnekleme oranının çarpımı saniyede binlerce kayan nokta ölçüm değeri üretilmesine neden olur.
- Verimsiz Depolama Formatları: Birçok sistem varsayılan olarak ASCII metin (örneğin
.csv,.txt) kullanarak düz metin halinde saklar. İkili formatta yalnızca 8 bayt ( 8\ \text{Bytes} ) yer kaplayan çift hassasiyetli bir kayan nokta sayısı (double), zaman damgası, virgül ve satır sonu karakterleri içeren bir dize olarak saklandığında genellikle 20-30 bayta şişer ve bu da dosya boyutunun katlanarak artmasına neden olur.
Günde Onlarca Gigabayt Veri Üretimi İçin Sıkıştırma ve Depolama Optimizasyon Stratejileri
Mühendislik sahasındaki sınırlı sabit disk alanı ve büyük miktarda uzun vadeli izleme verisi sorununu ele almak için, aşağıdaki dört boyutta aşamalı optimizasyon önerilir:
1. Depolama Alt Katmanı İçin Yoğun İkili veya Zaman Serisi Veri Formatlarına Geçiş Yapın
- CSV/TXT Düz Metin Depolamadan Vazgeçin: Verileri doğrudan yoğun sütun tabanlı depolama formatlarına (örneğin Parquet, HDF5, Feather) veya özel zaman serisi veritabanlarına (örneğin TDengine, InfluxDB, TimescaleDB) yazın.
- Etki: Depolama mekanizmasını yalnızca dize metinden yerel ikiliye dönüştürerek disk kullanımını doğrudan %60 ila %80 oranında azaltabilirsiniz.
2. Zaman Serilerine Özel Kayıpsız Akışlı Sıkıştırma Algoritmaları Kullanın
- Kayan Nokta Sayı Farkı/XOR Sıkıştırma (Gorilla / Chimp Algoritmaları): Endüstriyel zaman serisi izlemede, ardışık örnekleme periyotları arasındaki zaman damgaları eşit aralıklıdır ve ardışık örneklenen dalga boyu veya sıcaklık/gerinim değişiklikleri genellikle çok küçüktür. Zaman damgalarını sıkıştırmak için fark algoritması (Delta-of-Delta) ve kayan nokta sayılarını sıkıştırmak için XOR algoritması kullanmak, kayıpsız doğruluktan ödün vermeden 5:1 ila 10:1 sıkıştırma oranları sağlayabilir.
- Sistem Düzeyinde Arşiv Sıkıştırma (Zstandard / LZ4): Veriler saatlik veya günlük olarak dilimlendikten ve kapatıldıktan sonra genel sıkıştırma kütüphanelerini kullanın. Zstandard (zstd) , sıkıştırma hızı ve sıkıştırma oranı arasında denge kurmada üstün mühendislik performansı sergiler.
3. Algoritma Katmanında Kayıplı/Ölü Bölge Sıkıştırması Uygulayın (Swinging Door Trending / Deadband)
- Dönüş Kapısı Algoritması (SDT) veya Ölü Bölge Eşik Filtrelemesi: Bir tolerans aralığı ayarlayın (örneğin, dalga boyu kayması \Delta\lambda \le 1\ \text{pm} veya sıcaklık değişimi \Delta T \le 0.1\ ^\circ\text{C} durağan gürültü olarak kabul edilir). İzlenen nesne önemli dalgalanmalar göstermediği durağan aşamalarda, yalnızca eğilimdeki bükülme noktalarını kaydedin ve düz çizgi yedek noktalarını göz ardı edin.
- Olay Tetiklemeli Kayıt (Event-triggered Logging): Titreşim, darbe veya anormal sıçramalar için, sistem normalde düşük frekanslı kayıt veya döngüsel üzerine yazılan bir bellek halka tamponu (Ring Buffer) kullanır; yalnızca aşırı limitli veya yüksek frekanslı geçici olaylar algılandığında, tam frekans aralığındaki ham veriler sabit diske kalıcı olarak kaydedilir.
4. Veri Kaynağından İtibaren Cihaz Örnekleme Hızını Makul Şekilde Yapılandırın
Köprülerin durağan şekil değişimi, tank temellerinin çökmesi, ortamın düzenli sıcaklık alanı gibi yavaş değişen değişkenlerin izlenmesi için süper yüksek örnekleme hızının uzun süre etkinleştirilmesine gerek yoktur. Beijing Dacheng Yongsheng Technology Co., Ltd.'nin OFSCN® Fiber Bragg Grating Interrogator örneğinde olduğu gibi, yerleşik yazılımı, gerçek mühendislik gereksinimlerine göre örnekleme frekansını varsayılan 100\ \text{Hz} ve 50\ \text{Hz} 'den 1\ \text{Hz} 'e veya daha düşüğe ayarlamaya olanak tanır:
Örnekleme frekansını 100\ \text{Hz} 'den 1\ \text{Hz} 'e ayarlamak, ham veri üretim miktarını baştan %99 oranında azaltabilir.
Uygulama Rotası Özeti
- Kısa Vadeli Hızlı Etki: CSV yazmayı durdurun ve bunun yerine SQLite/HDF5/Parquet kullanın veya yazılım tarafında
zstdalgoritmasını entegre ederek toplarken sıkıştırın. - Orta Vadeli Sistem Optimizasyonu: Ölçülen fiziksel niceliğin özelliklerine (dinamik yorulma vs. durağan sıcaklık) göre makul cihaz örnekleme frekansları ayarlayın ve ölü bölge filtrelemesi ekleyin.
- Uzun Vadeli Mimari Evrimi: Endüstriyel zaman serisi veri depolama motorları kullanın ve “yüksek frekanslı verileri kısa süreli saklayıp üzerine yazma, düşük frekanslı/özellik trendi verilerini uzun vadeli arşivleme” şeklinde kademeli bir saklama stratejisi uygulayın.

