Regatta Storage (YC F24): Mengubah S3 menjadi sistem file cloud POSIX yang terasa seperti lokal
(news.ycombinator.com)- Regatta Storage adalah layanan yang memungkinkan penyimpanan kompatibel S3 digunakan seperti sistem file cloud yang tersinkron otomatis, untuk menangani data berskala besar tanpa perlu menambah disk lokal
- Layanan ini ditujukan agar pekerjaan Spark, PyTorch, dan pandas bisa langsung mengakses dataset di S3, sehingga mengurangi waktu tunggu pengunduhan dan beban menyiapkan disk lokal berkapasitas besar
- Pengalaman mengoperasikan storage di Amazon EFS dan Netflix menjadi titik awalnya, dan meski EFS unggul dalam kesederhanaan serta skalabilitas, masih ada masalah performa saat berpindah dari disk lokal ke NFS
- Pelanggan me-mount sistem file Regatta lewat NFSv3, dan instance cache Regatta terhubung ke bucket S3 milik pelanggan untuk memberikan performa sub-milidetik pada operasi baca-tulis yang sudah di-cache
- Saat ini digunakan untuk notebook Jupyter serverless, lapisan caching terdistribusi di atas S3, dan pengganti boot volume Ceph yang thin-provisioned; ke depan mereka juga sedang mengembangkan protokol file kustom
Memberikan pengalaman sistem file seperti lokal di atas S3
- Regatta Storage adalah sistem file cloud dengan penagihan berbasis penggunaan, yang tersinkron otomatis dengan penyimpanan kompatibel S3
- Tujuannya adalah alur kerja di Spark, PyTorch, dan pandas dapat langsung mengakses dataset besar tanpa harus mengunduhnya lebih dulu ke disk lokal
- Video ringkasan layanan dapat ditonton di YouTube, dan setelah mendaftar akun, layanan ini bisa dicoba secara gratis
- Alasan mereka tidak menyediakan demo tanpa akun adalah karena pengguna Hacker News dianggap tidak cocok berbagi satu sistem file dan satu bucket S3 yang sama
Latar belakang desain dari pengalaman EFS
- Pendiri Regatta membangun layanan ini berdasarkan 8 tahun pengalaman di Amazon Elastic File System (EFS), serta pengalaman membangun dan mengoperasikan storage cloud berskala besar di Netflix dan tempat lain
- EFS punya keunggulan dalam kesederhanaan dan skalabilitas seperti S3 karena tidak perlu memperkirakan kapasitas yang dibutuhkan sebelumnya, tetapi di Netflix penggunaannya tidak sebanyak yang diharapkan
- Banyak aplikasi memerlukan sistem file POSIX, dan kebutuhan storage bisa tidak jelas atau meningkat tajam
- Dalam banyak kasus, storage juga perlu bertahan lebih lama daripada umur instance atau container
- Drive lokal sering di-overprovision sesuai potensi penggunaan, sehingga biaya tetap muncul bahkan untuk ruang storage yang kosong
- EFS tidak cocok untuk semua workload
- Saat berpindah dari disk lokal ke NFS, kadang muncul masalah performa
- Aplikasi yang menggunakan disk lokal sebagai penyimpanan sementara harus membersihkan data yang tersisa di storage persisten secara manual
Cara kerja Regatta dan model cache-nya
- Regatta dirancang sebagai sistem file dengan penagihan berbasis penggunaan yang otomatis menskalakan bersama aplikasi
- Sistem ini tersinkron otomatis dengan S3 dalam format file native, sehingga bisa langsung terhubung ke dataset yang sudah ada
- Data file yang baru saja ditulis juga bisa langsung digunakan dari S3
- Data yang tidak lagi aktif digunakan akan dihapus dari cache Regatta, sehingga hanya menanggung biaya storage backend S3
- Saat ini pelanggan me-mount sistem file Regatta dengan terhubung lewat NFSv3 ke armada instance cache Regatta
- Instance Regatta terhubung di backend ke bucket S3 milik pelanggan
- Regatta memberikan performa sub-milidetik untuk operasi baca dan tulis yang sudah di-cache
- Melalui cache yang tahan lama, Regatta menyediakan tampilan sistem file dengan konsistensi kuat untuk semua klien file yang terhubung
- Operasi yang rumit seperti mengganti nama direktori ditangani dengan cepat dan tahan lama, lalu dipropagasikan secara asinkron ke bucket S3
Kasus penggunaan awal dan langkah berikutnya
- Pengguna awal memakai Regatta untuk server notebook Jupyter serverless bagi peneliti AI, lapisan caching terdistribusi berlatensi rendah di atas S3, serta pengganti boot volume Ceph yang thin-provisioned
- Protokol file kustom yang sedang dikembangkan ditujukan untuk memberi performa mendekati lokal pada workload file kecil, serta performa scale-out seperti Lustre untuk pekerjaan data terdistribusi
1 komentar
Komentar Hacker News
Perbedaan antara Rclone dan Regatta Storage adalah saat melakukan operasi mutasi pada file system, Regatta menyediakan konsistensi kuat dengan menggunakan lapisan cache berkecepatan tinggi. Rclone tidak memiliki lapisan yang menjamin konsistensi antar klien paralel
Ini tampak seperti salah satu produk paling keren yang keluar dari YC, dan ada beberapa pertanyaan tentang cara kerjanya
Sedang meng-host DuckDB menggunakan GCP Filestore dan meminta informasi tentang harga serta performa Regatta
Tertarik sebagai disk backup untuk SQLite/DuckDB/parquet, dan ingin pembacaan yang di-cache dari penyimpanan NVMe lokal instance
Menganggap menggunakan NFS sebagai protokol adalah ide yang bagus
Ada kekhawatiran bahwa AWS mungkin akan menyalin produk ini dan menawarkannya dengan harga lebih murah
Pernah berhasil melakukan demo di depan CEO Adobe pada 2008, di mana foto yang diambil dengan iPhone otomatis muncul sebagai file di Mac
Penasaran apakah Lambda + SQLite + Regatta bisa digunakan untuk membangun storage SQL ACID real-time
Tidak jelas bagaimana konflik pembaruan file ditangani
Ada alternatif terkenal seperti s3fs, rclone, goofys, dan lainnya