4 poin oleh GN⁺ 2024-11-26 | 1 komentar | Bagikan ke WhatsApp
  • Fitur baru Amazon S3: penulisan bersyarat

    • Amazon S3 kini dapat melakukan penulisan bersyarat yang memperbarui objek setelah mengevaluasi apakah objek tersebut belum dimodifikasi. Ini membantu mengoordinasikan penulisan serentak pada objek yang sama dan mencegah beberapa penulis bersamaan secara tidak sengaja menimpa isi objek tanpa mengetahui kontennya.

    • Fitur ini dapat digunakan di bucket tujuan umum dan bucket direktori S3 dengan memberikan ETag objek melalui permintaan API S3 PutObject atau CompleteMultipartUpload.

    • Penulisan bersyarat menyederhanakan cara aplikasi terdistribusi memperbarui kumpulan data bersama secara bersamaan. Mirip dengan penggunaan header kondisional HTTP if-none-match untuk memeriksa apakah objek sudah ada sebelum dibuat, klien kini dapat melakukan pemeriksaan penulisan bersyarat dengan menentukan ETag objek melalui header HTTP if-match dalam permintaan API.

    • S3 akan meng-commit penulisan setelah mengevaluasi apakah ETag objek cocok dengan nilai yang diberikan dalam permintaan API, sehingga mencegah klien menimpa objek sampai kondisi tersebut terpenuhi.

    • Header kondisional baru ini dapat membantu meningkatkan efisiensi analitik skala besar, machine learning terdistribusi, dan pekerjaan lain yang sangat terparalelkan.

    • Fitur penulisan bersyarat baru ini tersedia tanpa biaya tambahan di semua Region AWS. Anda dapat melakukan penulisan bersyarat menggunakan AWS SDK, API, atau CLI. Untuk detail lebih lanjut tentang penulisan bersyarat, lihat Panduan Pengguna S3.

1 komentar

 
GN⁺ 2024-11-26
Opini Hacker News
  • Amazon S3 menambahkan fitur untuk memaksakan operasi penulisan bersyarat

    • Ada yang menginginkan fitur untuk memaksa nama objek di S3 agar cocok dengan hash
    • Ini membantu membangun penyimpanan yang dapat dialamati berdasarkan konten
  • Turbopuffer.com telah menggunakan ini di database mereka untuk menghindari ketergantungan selain object storage

    • Senang karena fitur ini kini tersedia di S3, satu tahun setelah memulainya di Google Cloud Storage
  • Dengan konsistensi yang kuat, setengah dari fungsi yang diinginkan sudah tercapai

  • Ada juga yang kesulitan memahami mengapa fitur ini penting

  • Ini lebih dekat ke compare-and-set daripada compare-and-swap

  • Jika digabungkan dengan jaminan konsistensi read-after-write, ini menjadi fondasi yang sempurna untuk membangun penyimpanan append-only inkremental di atas object storage

    • Ini menyelesaikan masalah saat beberapa penulis mengakses WAL
  • Azure Blob Storage juga mendukung e-tag dan kontrol optimistis

    • Ada yang penasaran bagaimana perbedaannya dengan fitur AWS
  • Jika algoritme ETag default AWS hanyalah hash MD5 biasa, ada yang bertanya-tanya apakah data objek bisa gagal karena tabrakan MD5

    • Ini mempertimbangkan situasi ketika diasumsikan bahwa data berbeda yang diberikan pengguna akan selalu menghasilkan ETag yang berbeda
  • Implementasi open source Amazon S3, yaitu MinIO, sudah menyediakan fitur ini sejak hampir 2 tahun lalu

    • Amazon baru sekarang menyusul
  • Fitur baru ditambahkan pada musim panas sebagai respons terhadap fitur IfNoneMatch di s3fs

    • Ada juga yang penasaran bagaimana fitur baru ini akan muncul dalam abstraksi file system