Supabase Storage için S3 uyumluluğu ve Resumable Uploads genel kullanıma sunuldu
- Supabase Storage artık S3 uyumlu bir depolama sağlayıcısı. Bu, en çok talep edilen özelliklerden biriydi ve şu anda herkese açık alfa sürümünde kullanılabiliyor.
- Resumable Uploads da beta sürümünden genel kullanıma geçti.
- Supabase Storage motoru tamamen açık kaynaklı ve dosya yönetimi için birbiriyle birlikte çalışabilen 3 protokol sunan az sayıdaki depolama çözümlerinden biri.
- Standard uploads: başlaması kolay
- Resumable uploads: büyük yüklemeler için devam ettirilebilir yüklemeler
- S3 uploads: çeşitli araçlarla uyumluluk için
S3 uyumluluğu
- Supabase her zaman sektör standartlarını benimsemeye çalışıyor. Standartları desteklemek, iş yüklerini taşınabilir hale getirdiği için temel ürün ilkelerinden biri.
- S3 API, tartışmasız şekilde depolama standardı ve biz bunu farklı deneyim seviyelerindeki geliştiricilerin kullanabilmesi için erişilebilir hale getiriyoruz.
- S3 protokolü, diğer API'lerle geriye dönük uyumlu. Storage'ı zaten REST veya TUS API üzerinden kullanıyorsanız, bugünden itibaren S3 istemcilerini kullanarak bucket ve dosyalarla etkileşime girebilirsiniz: TUS ile yükleyin, REST ile sunun ve S3 protokolüyle yönetin.
- Bu protokol bulutta, yerel geliştirmede ve self-hosted kurulumlarda çalışır. API uyumluluğunu dokümantasyonda inceleyin.
Supabase S3 kimlik doğrulaması
- Supabase S3 ile kimlik doğrulamak için 2 seçenek var:
- Standart
access_key ve secret_key kimlik bilgileri. Bunları depolama ayarları sayfasından oluşturabilirsiniz. Bu kimlik doğrulama yöntemi, S3 protokolünü destekleyen araçlarla geniş uyumluluk sunar. Storage kaynaklarına tam erişim sağladığı için yalnızca sunucu tarafında kullanılmak üzere tasarlanmıştır.
- Gelecekte, belirli bucket'lara erişim verebilen kapsamı sınırlandırılmış access key kimlik bilgileri eklemeyi planlıyoruz.
- RLS ile kullanıcı kapsamlı kimlik bilgileri. Bu yaklaşım, tüm Supabase hizmetlerinde yaygın olarak benimsenen bir kavram olan Row Level Security'den yararlanır. Mevcut RLS politikalarına saygı duyarak, belirli kimliği doğrulanmış kullanıcılar veya roller için depolama işlemlerinin kapsamını belirleyip S3 protokolüyle etkileşime geçebilirsiniz. Bu yöntem, S3 protokolünün desteklediği Session token header'ı sayesinde mümkündür. Session token mekanizmasının nasıl kullanılacağına dair ayrıntılar için dokümantasyona bakabilirsiniz.
S3 uyumlu entegrasyonlar
- S3 protokolü desteği sayesinde artık Supabase Storage'ı birçok üçüncü taraf araç ve hizmete bağlayabilirsiniz. İstediğiniz zaman iptal edebileceğiniz bir kimlik bilgisi çifti vermeniz yeterli.
- Yedekleme ve geçiş için AWS CLI, rclone, Cyberduck gibi popüler araçları kullanabilirsiniz.
- Cyberduck rehberine göz atın.
Veri mühendisleri için S3
- S3 uyumluluğu, veri mühendisleri için güçlü bir temel sunuyor. ClickHouse gibi veri ambarları, DuckDB, Spark, Trino, Snowflake External Table gibi sorgu motorları, ayrıca Fivetran ve Airbyte gibi veri yükleyicileri dahil birçok popüler araçla birlikte kullanılabiliyor.
- Örneklerde, harika veri analistimiz Tyler, Parquet dosyalarını Supabase Storage'a kaydedip DuckDB ile doğrudan nasıl sorgulayacağınızı gösteriyor.
S3 üzerinde multipart upload
- Standart yükleme ve devam ettirilebilir yüklemelere ek olarak artık S3 protokolü üzerinden multipart upload da destekleniyor. Bu sayede parçaları paralel olarak yükleyerek aktarım hızını en üst düzeye çıkarabilir, ardından bunları sonda birleştirebilirsiniz.
Resumable Uploads genel kullanıma sunuldu
- Platformun GA duyurusuyla birlikte Resumable Uploads'ın da genel kullanıma sunulduğunu paylaşmaktan mutluluk duyuyoruz.
- Resumable Uploads, TUS protokolü tarafından destekleniyor. Bu süreçte TUS ekibiyle yakın çalışmak son derece verimliydi. TUS protokol yöneticileri @murderlon ve @acconut'a açık kaynağa yönelik iş birliğine dayalı yaklaşımları için büyük teşekkür ediyoruz.
Supabase'in katkıları
- Supabase, dağıtık kilitleme, maksimum dosya boyutu, süre uzatma ve çok sayıda hata düzeltmesi dahil olmak üzere TUS spesifikasyonunun Node uygulamasına bazı gelişmiş özellikler kazandırdı.
- Bu özellikler Supabase için gerekliydi ve TUS Node sunucusunun açık kaynak olması sayesinde kullanılabildi. Bu da başka bir temel ilkeyi yansıtıyor: Mümkün olduğunda sıfırdan geliştirmek yerine mevcut araçları kullanmak ve desteklemek.
Diğer iyileştirmeler
- Bucket'lar arası aktarım: Daha önce yalnızca aynı Supabase bucket'ı içinde yapılabilen işlemler artık bucket'lar arasında nesne kopyalama ve taşıma şeklinde yapılabiliyor.
- Standartlaştırılmış hata kodları: Hata kodları artık Storage sunucusunun tamamında standartlaştırıldı ve belirli hatalar için dallanma mantığı yazmak çok daha kolay hale geldi.
- Çok kiracılı migration'lar: Tüm tenant'larda çalışan migration'ları önemli ölçüde iyileştirdik. Bu sayede tüm filoda migration hataları azaldı ve uzun süren migration'lar asenkron şekilde çalıştırılabilir hale geldi.
- Bağımlılıkların ayrıştırılması: Storage artık diğer Supabase ürünlerinden tamamen ayrıldı ve bağımsız bir hizmet olarak çalıştırılabiliyor.
docker-compose dosyasıyla başlayın.
Başlarken
- Dokümantasyonda S3 API uyumluluğunu inceleyin
- S3 kimlik doğrulaması hakkında bilgi edinin
- Cyberduck ile S3'ü deneyin: entegrasyon rehberini takip edin
- DuckDB ile S3'ü deneyin: YouTube'daki rehberi takip edin
GN⁺ görüşü
- S3 uyumluluğu, Supabase Storage'ı bulut depolama standardına bir adım daha yaklaştırıyor. Pek çok şirket zaten S3 kullandığı için Supabase'e geçiş çok daha kolay hale geliyor.
- Ancak S3 başlangıçta AWS'nin bir hizmeti olduğu için, uzun vadede Supabase'e özgü bir protokol geliştirmek de değerlendirilebilir. Amazon'a bağımlı bir duruma düşmekten kaçınmak gerekir.
- Resumable Uploads'ın genel kullanıma sunulmasıyla büyük dosya aktarımlarının çok daha sorunsuz hale gelmesi bekleniyor. Mevcut yöntemin sınırlamalarını aşması ve kullanılabilirliği artırması öne çıkıyor.
- S3 ile veri mühendisliği boru hatları kurmak cazip bir kullanım örneği. Bu iyi değerlendirilirse kurumsal veri altyapısının modernizasyonuna katkı sağlayabilir.
- Supabase'in TUS protokolünün iyileştirilmesine doğrudan katkı sunması ve bunun yeniden açık kaynak ekosistemine geri dönmesi etkileyici. Yalnızca açık kaynak kullanıcısı değil, aynı zamanda katkı sunan bir aktör olarak da güçlü bir rol üstleniyor.
1 yorum
Hacker News görüşleri
Supabase CEO’su, yeni Storage ürün güncellemesini tanıtıyor. Bu ürün büyük ölçekli dosyaları depoluyor ve S3 uyumluluğu ekleyerek binlerce mevcut araçla birlikte kullanılabilmesini sağlıyor. Özellikle veri bilimcileri/mühendisleri için sunduğu olanaklara dikkat çekiliyor.
Bir kullanıcı, S3 destekleyen CDN sağlayıcılarından yararlanabilecek olmasını memnuniyetle karşılarken, Supabase’te hâlâ iyileştirilmesi gereken noktalar olduğunu belirtiyor. Genel olarak ise Supabase’in gelişim yönünü olumlu değerlendiriyor.
DuckDB’nin artık S3 protokolünü destekleyen Supabase Storage üzerinde doğrudan parquet dosyularını sorgulayabildiğine dair bir örnek paylaşılıyor.
PostgreSQL’in Large Object depolama yöntemini tercih eden bir kullanıcının görüşü de yer alıyor.
Supabase’in self-hosting kolaylığı hakkında bir soru gündeme getiriliyor. Maliyet nedeniyle self-hosting’e geçmenin ne kadar kolay olduğu merak ediliyor.
Supabase’in Oriole ekibini bünyesine kattığı haberiyle birlikte, Cloudflare R2 entegrasyonunu değerlendiren bir kullanıcının görüşü de aktarılıyor.
Supabase Storage’ın nasıl uygulandığına, özellikle verinin gerçekten PostgreSQL’de saklanıp saklanmadığına ve transaction update desteği olup olmadığına dair sorular bulunuyor.
Supabase’e duyulan güven ve bağlılık ifade edilirken, satın alınıp bozulmaması yönünde bir temenni de dile getiriliyor.
AWS S3’ün tescilli API’sinin fiilen sektör standardı hâline gelmiş olmasına şaşıran bir görüş de var.
pre-signed URL desteği olup olmadığına dair bir soru da yöneltiliyor.