S3'ün kurulumu ve işletimi
- S3, Amazon Simple Storage Service'in kısaltmasıdır ve büyük ölçekli bir depolama sistemi anlamına gelir.
- Andy Warfield, S3'te çalışırken sistem hakkında kapsamlı bir anlayış kazandı.
- S3, müşterinin performans deneyiminden sabit disk mekaniğine kadar çok farklı alanları kapsayan bir hizmettir.
17 yıl önce, uzak bir üniversite kampüsünde...
- S3, 14 Mart 2006'da kullanıma sunuldu ve bu yıl 17. yıl dönümünü kutluyor.
- Warfield, Cambridge Üniversitesi'nde doktorasını tamamladıktan sonra Xen projesine katıldı ve ardından XenSource adlı bir startup kurdu.
- XenSource büyüyerek Citrix tarafından satın alındı ve Warfield bu süreçte iş büyütme ve ekip yönetimi hakkında çok şey öğrendi.
S3 nasıl çalışır
- Warfield, Amazon'a katıldıktan sonra S3'ün ilk mühendislerinden biri olan Seth Markle'dan S3'ün nasıl çalıştığını öğrendi.
- S3, HTTP REST API'ye sahip bir object storage hizmetidir; frontend, namespace service, sabit disk içeren storage fleet ve arka plan işlerini yürüten fleet'lerden oluşur.
- S3, yüzlerce mikroservisten oluşur ve ekipler arasındaki etkileşim API düzeyindeki sözleşmeler üzerinden gerçekleşir.
İlk gözlemler
- S3, yazılımın ötesinde; donanım ve insanları da içeren, sürekli evrilen bir ekosistemdir.
- S3'ün ölçeği, her bileşenin scale-out hizmetler kümesi olarak kurulmuş olması nedeniyle sistemin boyutunu kavramayı zaman alan bir yapı oluşturur.
Teknik ölçek: depolamanın fiziği
- S3, milyonlarca sabit disk kullanan çok büyük bir sistemdir.
- Sabit diskler, teknoloji ve inovasyonun hayranlık uyandıran örnekleridir ve maliyet verimlilikleri çok yüksektir.
Isı yönetimi: veri yerleşimi ve performans
- S3'te "ısı yönetimi" olarak adlandırılan sorunu çözmek için I/O isteklerini çok sayıdaki sabit diske eşit biçimde dağıtan optimizasyonlar yapılır.
Çoğaltma: veri yerleşimi ve dayanıklılık
- S3, verinin dayanıklılığını sağlamak ve ısıyı yönetmek için çoğaltma ve erasure coding gibi yedeklilik şemaları kullanır.
Ölçeğin etkisi: veri yerleşim stratejisi
- Veriyi mümkün olduğunca çok sayıda diske geniş biçimde yerleştirerek, müşteri verisinin her diskte çok küçük bir yer kaplaması sağlanır; böylece iş yükü izolasyonu elde edilir.
İnsan faktörü
- S3'ün karmaşıklığı yalnızca teknik unsurlardan değil, insan faktöründen de kaynaklanır.
- Amazon, mühendisleri ve ekipleri hızlı ve güvenli biçimde başarısız olmaya ve yüksek dayanıklılığa sahip depolama sunmaya odaklanmaları için teşvik eder.
Kendi ölçeğimi büyütmek: 'sahiplik' ile başlayıp onunla biten zor problemleri çözmek
- Warfield, Amazon'da kişisel ölçekte bir genişleme deneyimi yaşadı; yazılımın, insanların ve işin ölçeği hakkında çok şey öğrendi.
- Amazon'da "sahiplik" vurgulanır ve bu, organizasyon yapısını ve mühendislik yaklaşımını anlamaya yardımcı olur.
GN⁺ görüşü
- S3, basit bir depolama hizmetinin ötesinde; donanımın, yazılımın ve insan unsurunun birleştiği karmaşık bir ekosistemdir.
- Bu yazı, S3'ün ölçeğini ve karmaşıklığını anlamak isteyen başlangıç seviyesindeki yazılım mühendislerine içgörü sunar.
- Amazon'un "sahiplik" kültürü, ekipleri ve bireyleri daha büyük sorumluluk duygusuyla inovasyon peşinde koşmaya motive eden önemli bir unsurdur.
1 yorum
Hacker News yorumu
Genomik alanında çalışırken son 10 yılda birçok petabayt ölçekli veri deposuyla uğraştım.
S3, OAuth2 tabanlı bir protokolle okuma/yazma erişimini devretmeye izin verse neler inşa edebilirdik.
Dağıtık sistemlerde kimlik doğrulamayı ele almak çok zordur.
Amazon çalışanlarının S3'ün iç işleyişi hakkında kamuya açık şekilde konuştuğunu görmek güzel.
Sabit disk kafasını 747 uçağına benzeterek anlatan kısım.
S3 KeyMap dönemine geri dönünce, en sıcak nesneleri/bölümleri/bucket'ları belirledikten sonra bile sorunun sadece taşıyarak çözülemeyeceğini öğrendik.
S3 yalnızca basit bir depolama hizmeti değil, bir standarttır.