6 puan yazan GN⁺ 2024-01-16 | 1 yorum | WhatsApp'ta paylaş

SQLite sürüm özeti

  • SQLite, uygulama tanımlı SQL işlevlerine yönelik desteği güçlendirmek için SQLITE_RESULT_SUBTYPE özelliğini ekledi.
  • JSON SQL işlevleri, yeni dahili ayrıştırma ağacı biçimi JSONB kullanılarak iyileştirildi.
  • Sorgu planlayıcı, dizin seçerken daha iyi kararlar veriyor ve SQLITE_DIRECT_OVERFLOW_READ optimizasyonu artık varsayılan olarak etkin.
  • CLI, UTF-8 içeriğin gösterimini iyileştirecek ve ".dump" betiği yeniden oynatım algılamasını otomatikleştirecek şekilde geliştirildi.

Hata düzeltmeleri ve optimizasyonlar

  • Çeşitli hata düzeltmeleri ve performans optimizasyonları yapıldı.
  • Yeni C dili API'leri sqlite3_get_clientdata() ve sqlite3_set_clientdata() eklendi.
  • PRAGMA integrity_check komutu artık yerleşik sanal tabloların tutarlılığını doğruluyor.
  • Sorgu planlayıcı, kısmi dizin taramaları ve DISTINCT alt sorgularına yönelik işlemeyi iyileştirdi.

SQLite CLI ve diğer özelliklerde iyileştirmeler

  • CLI, UTF-8 içeriğin gösterimini iyileştiriyor ve tehlikeli SQL işlevlerinin kullanımını kısıtlıyor.
  • PRAGMA integrity_check komutu, metin dizgileri ile dizinler arasındaki eşleşmeyi doğruluyor.
  • sqlite3_stmt_scanstatus_v2() arayüzü eklendi.
  • sqlite3_prepare() ve benzeri uzun çalışan çağrılar artık ilerleme durumu geri çağrısını tetikliyor ve sqlite3_interrupt() çağrısına yanıt veriyor.

GN⁺ görüşü

  • SQLite'ın sürekli iyileştirilmesi, veritabanı yönetim sistemlerinin kararlılığı ve performansı açısından önemli.
  • JSON SQL işlevlerindeki iyileştirmeler, özellikle web geliştiricileri ve mobil uygulama geliştiricileri için faydalı.
  • Sorgu planlayıcıdaki optimizasyonlar, karmaşık veritabanı sorgularını daha verimli hale getirerek sistem kaynaklarından tasarruf edilmesini sağlayabilir.

1 yorum

 
GN⁺ 2024-01-16
Hacker News yorumu
  • macOS'ta yeni SQLite sürümünü denemek isteyenler için hızlı bir yöntem:

    • macOS'ta Python ile SQLite sürümünü kullanma yöntemine dair bağlantı paylaşılıyor.
    • Basit komutlarla SQLite kütüphanesinin nasıl derleneceği ve Python'da sürümün nasıl kontrol edileceği anlatılıyor.
    • SQLite'ın web arayüzünü denemek için datasette komutuna yönlendirme yapılıyor.
  • SQLite'ın JSONB desteğindeki iyileştirmeler:

    • JSONB kullanıldığında JSON ile ilgili işlemlerde performans 3 kata kadar artabiliyor.
    • JSONB, çoğu durumda metin JSON'dan yaklaşık %5~%10 daha küçük boyuta sahip.
    • Notion Labs çok fazla JSON kullandığı için disk kullanımındaki azalma konusunda iyileşme beklentisi var.
  • SQLite 3.45 sürümünün etkileşimli sürüm notları:

    • Resmî sürüm notları sıkıcı geliyorsa etkileşimli sürüme bağlantı veriliyor.
  • SQLite'ın gelecekteki GCC derleyici uyarılarını öngörmesine dair etkileyici bir örnek:

    • SQLite'ın GCC'nin yeni derleyici uyarılarına önceden hazırlık yapmasından söz ediliyor.
  • Bulut yerel SQLite'a ilgi ve PostgreSQL ile karşılaştırma talebi:

    • Bulut tabanlı SQLite hizmetlerine ilgi ifade ediliyor.
    • PostgreSQL ile SQLite'ı karşılaştıran kaynaklar isteniyor.
  • SQLite'ın yeniden değerlendirilmesi ve algının olumlu yönde değişmesi:

    • SQLite'ı sadece bir "oyuncak veritabanı" olarak gören bakış açısından uzaklaşılıp gerçek uygulamalarda faydalı olduğu kabul ediliyor.
  • JSONB'de tam sayı ve kayan noktalı sayıların metin olarak saklanması kararına dair soru işaretleri:

    • JSONB'nin kullanım senaryolarını sınırlayabilecek bu veri saklama biçimi eleştiriliyor.
  • Daha önce tartışılmış olan JSONB'nin gelişi:

    • "JSONB has landed" başlığıyla bunun daha önce Hacker News'te tartışıldığı belirtiliyor.
  • SQLite'ta JSON benzeri verileri verimli biçimde saklama ve işleme zorluğu:

    • SQLite'ın uzun süredir JSONB eklemek istemesi ve bunu gerçekleştirmek için benimsediği yaklaşım açıklanıyor.
  • JSONB'nin iç biçiminin metin JSON'dan daha az disk alanı kullanması:

    • JSONB'nin metin JSON'a kıyasla daha az disk alanı kapladığı bilgisi paylaşılıyor.