
有人有使用 Openstack Swift 物件儲存與 s3fs 並有多個寫入掛載同時存取相同檔案的經驗嗎?
s3 的手冊頁,例如:https://linux.die.net/man/1/s3fs有這樣一段:
「多用戶功能雖然可以在多個用戶之間共享s3 儲存桶,但Amazon S3 服務的當前資料一致性模型阻止了多個用戶安全使用多個掛載。雖然s3fs 目前允許多個掛載,但可能會導致資料損壞。元數據,限制了它的有用性”
上面提到的鎖定機制實作了嗎?
謝謝馬克
答案1
此手冊頁引用了另一個基於 Python 的 s3fs,它於 2016 年左右從互聯網上消失,並於 2009 年停止開發:
https://web.archive.org/web/20161008081920/https://fedorahosted.org/s3fs/
我建議使用更流行的s3fs-保險絲反而。我給 die.net 網站管理員發了一封電子郵件,試圖更新它,因為人們通常會提到 s3fs-fuse。
具體來說,s3fs 在存在多個寫入器的情況下不具有 POSIX 語義,這可能表現為資料損壞。底層 S3 物件儲存遵循最後寫入者獲勝模型,其中物件由每個 PutObject 或 CompleteMultipartUpload RPC 以原子方式取代。 s3fs 還有一個快取模型,可以提供應用程式過時的資料。
亞斯3fs與 s3fs-fuse 類似,透過 Amazon SNS/SQS 實現鎖定。然而,這會讓您進一步脫離 OpenStack 生態系統。