4 पॉइंट द्वारा GN⁺ 2024-11-26 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Amazon S3 की नई सुविधा: conditional writes

    • Amazon S3 अब ऐसी conditional writes कर सकता है जिनमें ऑब्जेक्ट को अपडेट करने से पहले यह जांचा जाता है कि उसमें कोई बदलाव नहीं हुआ है। इससे एक ही ऑब्जेक्ट पर concurrent writes को coordinate करने में मदद मिलती है और कई concurrent writers को ऑब्जेक्ट की सामग्री जाने बिना अनजाने में उसे overwrite करने से रोका जा सकता है.

    • इस सुविधा का उपयोग S3 general purpose और directory buckets दोनों में, S3 PutObject या CompleteMultipartUpload API request के माध्यम से ऑब्जेक्ट का ETag प्रदान करके किया जा सकता है.

    • Conditional writes distributed applications के तरीके को सरल बनाती हैं, जहां कई clients एक shared dataset को एक साथ अपडेट करते हैं। जैसे HTTP if-none-match conditional header का उपयोग करके यह जांचा जाता है कि ऑब्जेक्ट बनाए जाने से पहले मौजूद है या नहीं, वैसे ही अब clients API request में HTTP if-match header के जरिए ऑब्जेक्ट का ETag निर्दिष्ट करके conditional write check कर सकते हैं.

    • S3 ऑब्जेक्ट के ETag का मूल्यांकन करता है कि वह API request में दिए गए मान से मेल खाता है या नहीं, और उसके बाद ही write commit करता है, जिससे condition पूरी होने तक clients ऑब्जेक्ट को overwrite नहीं कर पाते.

    • यह नया conditional header large-scale analytics, distributed machine learning और अन्य अत्यधिक parallelized workloads की efficiency बेहतर बनाने में मदद कर सकता है.

    • यह नई conditional write सुविधा सभी AWS regions में बिना किसी अतिरिक्त शुल्क के उपलब्ध है। AWS SDK, API या CLI का उपयोग करके conditional writes की जा सकती हैं। Conditional writes के बारे में अधिक जानकारी के लिए S3 user guide देखी जा सकती है.

1 टिप्पणियां

 
GN⁺ 2024-11-26
Hacker News राय
  • Amazon S3 में conditional write operations को enforce करने वाली एक सुविधा जोड़ी गई है

    • S3 में object का नाम hash से मेल खाने के लिए enforce करने वाली सुविधा चाहिए थी
    • यह content-addressable storage बनाने में मदद करती है
  • Turbopuffer.com object storage के अलावा दूसरी dependencies से बचने के लिए इसे database में इस्तेमाल करता रहा है

    • Google Cloud Storage से शुरू करने के 1 साल बाद अब S3 में यह सुविधा इस्तेमाल कर पाने से खुशी है
  • strong consistency के ज़रिए मनचाही functionality का आधा हिस्सा हासिल कर लिया गया था

  • कुछ लोगों के लिए यह समझना मुश्किल है कि यह सुविधा क्यों महत्वपूर्ण है

  • यह compare-and-swap की तुलना में compare-and-set के ज़्यादा करीब है

  • read-after-write consistency guarantee के साथ मिलकर यह object storage के ऊपर incremental append-only storage बनाने के लिए एकदम सही आधार बन जाता है

    • कई writers के WAL को access करने पर आने वाली समस्या को हल करता है
  • Azure Blob Storage भी e-tag और optimistic control को support करता है

    • कुछ लोग यह जानना चाहते हैं कि यह AWS की सुविधा से कैसे अलग है
  • अगर AWS का default ETag algorithm साधारण MD5 hash है, तो यह सवाल उठता है कि क्या MD5 collision की वजह से object data fail हो सकता है

    • ऐसी स्थिति पर विचार किया जा रहा है जहाँ यह मान लिया जाए कि users द्वारा दिया गया अलग-अलग data हमेशा अलग ETag बनाएगा
  • Amazon S3 के open source implementation MinIO में यह सुविधा लगभग 2 साल पहले से उपलब्ध है

    • Amazon अब जाकर इसकी बराबरी कर रहा है
  • s3fs की IfNoneMatch सुविधा पर प्रतिक्रिया के बाद गर्मियों में नई सुविधा जोड़ी गई थी

    • कुछ लोग यह जानना चाहते हैं कि file system abstraction में यह नई सुविधा कैसी दिखाई देगी