JSON, CSV, XML: Veri Formatları Arasındaki Fark
Bir açık veri portalında dosya indirirken veya bir API yanıtı okurken karşınıza çıkan JSON, CSV ve XML — üçü de veriyi saklamak ve aktarmak için kullanılan formatlardır; ancak yapıları, güçlü ve zayıf yönleri birbirinden farklıdır.
Açık veri ve API kavramları için: Açık Veri Nedir? Şehirler İçin Neden Önemli?
CSV: Tablo Verisi
CSV, en basit ve en yaygın veri formatıdır. Her satır bir kayıtı, virgüller ise sütunları ayırır. İlk satır genellikle sütun başlıklarını içerir.
Güçlü yönleri:
- Excel ve Google Sheets ile doğrudan açılır
- Neredeyse her veri analizi aracı destekler
- Dosya boyutu küçüktür
- Kod bilgisi gerektirmeden kullanılabilir
Sınırlamaları:
- Yalnızca düz tablo yapısını destekler; iç içe veri tutulamaz
- Veri tipi bilgisi yoktur (sayı mı, metin mi?)
Kullanım alanı: Belediye hal fiyatları, baraj doluluk tarihi, demografik istatistikler gibi tablo tabanlı kamu verileri.
JSON: API Standardı
JSON, günümüz web API'lerinin standart formatıdır. Anahtar-değer çiftleri ve listelerden oluşur; iç içe nesneler barındırabilir.
Güçlü yönleri:
- Hiyerarşik yapıyı doğal olarak temsil eder
- JavaScript, Python, Java başta tüm dillerde doğrudan işlenir
- İnsanlar tarafından okunabilir; makine işlemi de verimlidir
- Web API'lerinin fiili standardı
Sınırlamaları:
- Excel ile doğrudan açılamaz; ek adım gerektirir
- Büyük JSON dosyaları CSV'ye kıyasla daha ağır olabilir
Kullanım alanı: Anlık otobüs konumları, nöbetçi eczane listesi, otopark doluluk bilgisi gibi canlı API yanıtları.
XML: Kurumsal Miras
XML, etiket tabanlı yapısıyla HTML'e benzer. 2000'lerin kurumsal dünyasında egemen formattı; SOA (Service-Oriented Architecture) ve SOAP web servisleriyle birlikte kullanıldı.
Güçlü yönleri:
- Şema (XSD) ile katı veri doğrulama mümkündür
- Belge ve metadata'yı birlikte tutabilir
- Kurumsal sistemlerde geniş entegrasyon desteği
Sınırlamaları:
- Aynı veri için JSON'a kıyasla çok daha fazla karakter kullanır
- Okunması ve yazılması daha zahmetlidir
- Modern web geliştirmede büyük ölçüde devre dışı kalmıştır
Hangi Formatı Seçmeli?
- Veri analizi, raporlama, Excel: CSV
- Web uygulaması, mobil uygulama, API entegrasyonu: JSON
- Kurumsal sistem entegrasyonu, eski altyapı: XML
Açık veri portalları genellikle hem CSV hem JSON seçeneği sunar. Programlama yapılmadan analiz için CSV; uygulama geliştirme için JSON tercih edilmelidir.
API'nin nasıl çalıştığını öğrenmek için: API Nedir? Açık Veri ile Farkı Ne?