4 puan yazan GN⁺ 2024-11-26 | 1 yorum | WhatsApp'ta paylaş
  • Amazon S3'nin yeni özelliği: koşullu yazma

    • Amazon S3 artık, nesnenin değiştirilmediğini doğruladıktan sonra güncelleme yapan koşullu yazmaları gerçekleştirebiliyor. Bu, aynı nesneye yapılan eşzamanlı yazmaları koordine etmeye ve birden fazla eşzamanlı yazanın nesnenin içeriğini bilmeden yanlışlıkla üzerine yazmasını önlemeye yardımcı oluyor.

    • Bu özellik, hem S3 genel amaçlı bucket'larda hem de directory bucket'larda, nesnenin ETag bilgisini S3 PutObject veya CompleteMultipartUpload API isteği üzerinden sağlayarak kullanılabiliyor.

    • Koşullu yazma, birden fazla istemcinin paylaşılan veri kümelerini aynı anda güncellediği dağıtık uygulamaların çalışma şeklini basitleştiriyor. HTTP if-none-match koşullu başlığı kullanılarak nesnenin oluşturulmadan önce var olup olmadığının kontrol edilmesine benzer şekilde, istemciler artık API isteğinde HTTP if-match başlığı üzerinden nesnenin ETag değerini belirterek koşullu yazma kontrolü yapabiliyor.

    • S3, nesnenin ETag değerinin API isteğinde sağlanan değerle eşleşip eşleşmediğini değerlendirdikten sonra yazmayı onaylıyor ve koşul sağlanana kadar istemcilerin nesnenin üzerine yazmasını engelliyor.

    • Bu yeni koşullu başlık, büyük ölçekli analitik, dağıtık makine öğrenimi ve diğer yüksek derecede paralelleştirilmiş işlerin verimliliğini artırmaya yardımcı olabilir.

    • Bu yeni koşullu yazma özelliği, tüm AWS bölgelerinde ek ücret olmadan sunuluyor. Koşullu yazmalar AWS SDK, API veya CLI kullanılarak gerçekleştirilebiliyor. Koşullu yazmalar hakkında daha fazla bilgi için S3 Kullanıcı Kılavuzu'na başvurulabilir.

1 yorum

 
GN⁺ 2024-11-26
Hacker News görüşleri
  • Amazon S3'e koşullu yazma işlemlerini zorunlu kılabilen bir özellik eklendi

    • S3'te nesne adının hash ile eşleşmesini zorunlu kılan bir özellik isteniyordu
    • Bu, içerik adreslenebilir bir depolama sistemi kurmaya yardımcı oluyor
  • Turbopuffer.com, nesne depolama dışında bağımlılıklardan kaçınmak için bunu veritabanında kullanıyordu

    • Google Cloud Storage'da başladıktan 1 yıl sonra bu özelliğin S3'te de kullanılabilir olmasına seviniyorlar
  • Güçlü tutarlılık sayesinde istenen işlevin yarısına ulaşılmış oldu

  • Bu özelliğin neden önemli olduğunu anlamakta zorlananlar da var

  • Bu, compare-and-swap'tan ziyade compare-and-set'e daha yakın

  • Okuma sonrası yazma tutarlılığı garantisiyle birleştiğinde, nesne depolama üzerinde artımlı eklemeye yönelik bir depo kurmak için mükemmel bir temel oluyor

    • Birden fazla yazıcının WAL'a eriştiği durumlardaki sorunu çözüyor
  • Azure Blob Storage da e-tag ve iyimser denetimi destekliyor

    • Bunun AWS'nin özelliğinden nasıl farklı olduğunu merak edenler de var
  • AWS'nin varsayılan ETag algoritması sıradan bir MD5 hash ise, MD5 çakışmaları nedeniyle nesne verisinin başarısız olma ihtimali olup olmadığı sorgulanıyor

    • Kullanıcıların sağladığı farklı verilerin her zaman farklı ETag üreteceğinin varsayıldığı bir durum düşünülüyor
  • Amazon S3'ün açık kaynak uygulaması olan MinIO, bu özelliği neredeyse 2 yıldır sunuyordu

    • Amazon ancak şimdi yetişiyor
  • Yaz aylarında, s3fs'nin IfNoneMatch özelliğine gelen tepkinin ardından yeni bir özellik eklendi

    • Bu yeni özelliğin dosya sistemi soyutlamasında nasıl görüneceğini merak edenler de var