Jalankan S3 di Laptop? Ini Mengubah Segalanya (MinIO)

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00Biaya S3 bisa menjadi sangat mahal, aplikasi menghasilkan begitu banyak data sehingga setiap unggahan dan unduhan
00:00:05bisa menjadi sangat berat. Dan kebanyakan pengembang berpikir penyimpanan objek berarti satu hal, yaitu cloud.
00:00:09Tapi itu tidak selalu benar. Bagaimana jika Anda bisa menjalankan penyimpanan objek yang kompatibel dengan S3 langsung di laptop Anda?
00:00:15Di situlah Mini I/O berperan. Ini cepat, kompatibel dengan S3, dan bisa dijalankan di mana saja,
00:00:20bahkan secara lokal di Mac Anda. Dalam beberapa menit ke depan, saya akan menunjukkan tiga hal kepada kalian.
00:00:25Cara mengatur dan menjalankannya, mengapa pengembang menggunakannya, dan realitas dari alat seperti ini.
00:00:30[MUSIK]
00:00:35Jika Anda mencoba memangkas biaya cloud atau mempermudah pengembangan, ini bisa menghindarkan Anda dari banyak
00:00:39kesulitan. Inilah masalah yang sebenarnya diselesaikan. Kebanyakan pengembang dan tim menghadapi tiga masalah
00:00:45yang sama. Tagihan cloud sulit diprediksi. Data yang terlalu jauh dari aplikasi yang menggunakannya,
00:00:51dan beban kerja AI yang membutuhkan penyimpanan lokal yang cepat. Mini I/O memberi kita pilihan lain. Kita mendapatkan
00:00:57kompatibilitas S3, performa yang kuat, dan kendali penuh tanpa bergantung pada cloud.
00:01:01Ini sangat bagus untuk pengembangan lokal, prototipe, pipeline RAG, media, cadangan, dan sebagainya. Dan ya,
00:01:07Anda bisa menjalankan semuanya secara lokal, tanpa VPS, tanpa akun cloud. Sekarang, penafian singkat,
00:01:12repositori GitHub-nya sekarang telah diarsipkan dan berada dalam mode pemeliharaan. Jadi kita tidak bisa menggunakannya
00:01:17selamanya. Mereka telah mengalihkan fokus dari Mini I/O ke Mini I/O AI Store, tetapi I/O-nya masih ada di sana juga.
00:01:24Kita bisa menggunakan ini untuk waktu yang cukup lama dengan manfaat nyata. Jika Anda menyukai alat yang mempercepat
00:01:29alur kerja Anda, pastikan untuk berlangganan. Kami memiliki video yang dirilis setiap saat.
00:01:32Baiklah, izinkan saya menunjukkan betapa sederhananya ini. Saya menjalankan Mini I/O dalam satu kontainer Docker
00:01:37di sini pada M4 Pro saya. Pertama, saya menghubungkannya dan saya akan menjalankan MC alias set local. Saya akan menambahkan
00:01:44localhost saya dan gunakan saja kredensial masuk yang diberikan untuk saat ini. Kemudian saya bisa membuat bucket,
00:01:50MC, MB local demo bucket, bisa kita sebut begitu. Dan kemudian saya akan mulai mengunggah beberapa berkas,
00:01:55gambar, teks, JSON. Jadi pertama gambar saya, lalu saya bisa melakukan berkas teks ringan.
00:02:02Dan terakhir, mari kita tambahkan beberapa data JSON di sini. Sekarang, jika saya mencantumkan semuanya, itu dia. Struktur yang rapi,
00:02:08persis seperti S3. Sekarang inilah bagian yang sebenarnya paling kita pedulikan. Saya menjalankan skrip Python Mini
00:02:14ini di sini. Dan ini masih menggunakan Boto3, gaya kode yang sama dengan AWS. Tidak ada perubahan di sini.
00:02:22Dan di peramban, ini hanya ada di localhost. Buka bucket-nya. Saya bisa memperluas foldernya. Saya bisa
00:02:27mengeklik gambarnya dan itu dia pratinjaunya. Ini terasa seperti S3, kecuali ini berjalan di laptop Anda.
00:02:33Jadi apa sebenarnya Mini I/O itu? Pada dasarnya, ini adalah server penyimpanan objek yang menggunakan API
00:02:39Amazon S3. Jadi Anda tetap menggunakan semua yang sudah Anda ketahui. Kita bisa tetap menggunakan SDK yang sama. Kita tetap menggunakan perintah yang sama,
00:02:46model mental yang sama, tetapi alih-alih terikat pada AWS, ini berjalan di mana pun Anda mau. Docker,
00:02:53Kubernetes, bare metal, edge, atau hanya di laptop Anda seperti yang saya lakukan di sini. Dan ini lebih penting sekarang
00:02:59daripada sebelumnya karena aplikasi kita semakin berat datanya seiring berjalannya waktu. Karena ketika
00:03:05komputer Anda di sini dan data Anda di tempat lain, kita akhirnya membayar banyak uang untuk itu,
00:03:10dalam latensi dan biaya cloud. Mini I/O mengubah semua ini. Ini mendekatkan penyimpanan ke tempat pekerjaan
00:03:17terjadi. Dan itulah mengapa pengaturan ini sangat berguna untuk pengembangan dan pengujian. Bukan untuk produksi,
00:03:22tapi untuk kedua hal itu, ini sangat bagus. Dalam kasus saya, saya menjalankannya secara lokal, yang membuatnya bagus untuk
00:03:27membangun dan men-debug aplikasi yang kaya data bahkan sebelum menyentuh produksi. Sekarang kita punya banyak pilihan
00:03:33lain di luar sana, tentu saja. Seperti dengan AWS S3, Anda mendapatkan penyimpanan yang terkelola sepenuhnya dan skala besar. Tapi sekali lagi,
00:03:40biaya yang harus dibayar adalah pengeluaran, biaya tambahan, dan kemudian Anda terikat pada AWS. Dengan Ceph, Anda mendapatkan sesuatu yang hebat dan
00:03:46juga skalabel, tetapi lebih kompleks untuk dijalankan. Lebih banyak bagian yang bergerak, lebih banyak biaya overhead. Sekarang pola umum
00:03:52mungkin terlihat seperti ini. Saya bisa menggunakan Mini I/O secara lokal untuk pengembangan, Mini I/O atau S3 untuk
00:03:57pementasan di cloud dalam produksi. Itu berhasil karena pengaturan lokal Anda masih cocok dengan model S3 yang
00:04:03aplikasi Anda sudah gunakan atau akan gunakan. Jadi jika aplikasi Anda menangani banyak data, Mini I/O sangat masuk akal
00:04:10saat kita dalam pengembangan. Baiklah, sekarang mari kita bicara jujur sejenak. Haruskah Anda menggunakan ini? Yah,
00:04:15ini mudah diterapkan, berupa biner tunggal atau Docker, kompatibilitas S3 yang kuat, dan sangat cepat.
00:04:21Dan jika Anda memindahkan banyak data, menghindari biaya egress adalah kemenangan besar. Tapi inilah masalahnya,
00:04:26Mini I/O sumber terbuka yang Anda lihat di sini masih gratis di bawah lisensi AGPL versi 3.
00:04:33Dan itu bekerja dengan baik untuk demo, pengembangan lokal, dan prototipe. Sekarang sekali lagi, mereka telah mengalihkan
00:04:38fokus mereka ke Mini I/O AI Store. Itu termasuk tingkat gratis untuk penggunaan simpul tunggal, tetapi kemudian
00:04:43mereka sekarang menambahkan tingkat berbayar untuk pengelompokan, ketersediaan tinggi, dan semua fitur lainnya.
00:04:48Jadi untuk pembelajaran, pengembangan lokal, dan proyek kecil, ini sangat keren. Ini bagus. Tapi untuk klaster produksi,
00:04:53Anda kemungkinan akan membutuhkan AI Store atau alternatif seperti Ceph atau Garage. Jadi ini sepadan
00:04:59jika kita dalam pengembangan lokal atau sekadar eksperimen, tetapi mungkin tidak jika Anda membutuhkan infrastruktur yang terkelola sepenuhnya atau
00:05:04HA bawaan sejak hari pertama. Kita masih bisa tetap menggunakan yang lain untuk ini. Mini I/O atau tingkat gratis AI store
00:05:11memberi Anda penyimpanan gaya S3, performa yang kuat, dan kendali penuh atas data Anda tanpa harus otomatis
00:05:16membayar premi cloud untuk saat ini. Dan Anda bisa mencobanya sekarang di laptop Anda seperti yang telah saya lakukan di sini.
00:05:21Jika Anda menyukai alat sumber terbuka dan kiat pengkodean seperti ini untuk mempercepat alur kerja Anda,
00:05:25pastikan untuk berlangganan saluran Better Stack. Sampai jumpa di video lainnya.

Key Takeaway

MinIO memungkinkan pengembang menjalankan penyimpanan objek standar S3 secara lokal melalui Docker untuk memangkas biaya cloud dan mempercepat pengembangan aplikasi padat data tanpa mengubah basis kode AWS yang sudah ada.

Highlights

MinIO menyediakan server penyimpanan objek yang kompatibel dengan API Amazon S3 dan dapat berjalan di Docker, Kubernetes, bare metal, atau laptop lokal.

Penggunaan MinIO secara lokal menghilangkan biaya transfer data (egress) dan mengurangi latensi antara aplikasi dengan penyimpanan data.

Skrip Python yang menggunakan pustaka Boto3 milik AWS tetap berfungsi sepenuhnya pada MinIO tanpa perlu mengubah gaya penulisan kode.

MinIO versi sumber terbuka berlisensi AGPLv3 tetap gratis untuk pengembangan lokal, prototipe, dan proyek kecil satu simpul.

Fokus pengembangan kini beralih ke MinIO AI Store yang menawarkan tingkat gratis untuk penggunaan simpul tunggal dan fitur berbayar untuk ketersediaan tinggi (HA).

Timeline

Solusi Penyimpanan Objek di Luar Cloud

  • Biaya penyimpanan S3 cloud sering kali sulit diprediksi dan menjadi mahal saat volume data meningkat.
  • MinIO memberikan kontrol penuh atas data tanpa ketergantungan pada penyedia VPS atau akun cloud tertentu.
  • Repositori utama MinIO saat ini berada dalam mode pemeliharaan karena transisi ke MinIO AI Store.

Beban kerja AI dan aplikasi modern menghasilkan data dalam jumlah besar yang membutuhkan penyimpanan lokal cepat. Masalah utama yang dihadapi pengembang mencakup tagihan cloud yang membengkak dan jarak data yang terlalu jauh dari aplikasi. MinIO hadir sebagai alternatif untuk pengembangan lokal, pipeline RAG, dan pencadangan media tanpa memerlukan koneksi internet ke server AWS.

Prosedur Pengaturan dan Demonstrasi Teknis

  • Satu kontainer Docker sudah cukup untuk menjalankan MinIO pada perangkat keras seperti Mac M4 Pro.
  • Perintah MC alias set local digunakan untuk menghubungkan klien baris perintah ke server localhost.
  • Antarmuka peramban di localhost menyediakan pratinjau file gambar, teks, dan struktur JSON yang identik dengan konsol S3.

Proses pembuatan bucket dilakukan melalui perintah 'MC MB' diikuti dengan pengunggahan berbagai jenis file untuk menguji struktur data. Kode Python yang menggunakan SDK Boto3 terbukti tidak memerlukan perubahan logika saat diarahkan ke endpoint lokal. Hasilnya adalah lingkungan pengembangan yang terasa seperti AWS S3 namun beroperasi sepenuhnya di dalam laptop pengembang.

Keunggulan Arsitektur dan Efisiensi Biaya

  • MinIO menggunakan model mental dan SDK yang sama dengan Amazon S3 sehingga kurva pembelajaran sangat rendah.
  • Pendekatan penyimpanan lokal memindahkan data ke tempat pemrosesan untuk meminimalkan latensi.
  • Pola pengembangan yang efektif melibatkan penggunaan MinIO di lokal dan S3 hanya untuk tahap produksi.

Aplikasi saat ini menjadi semakin berat dengan data sehingga biaya latensi dan transfer menjadi faktor krusial. Dibandingkan dengan Ceph yang skalabel namun kompleks dengan banyak bagian bergerak, MinIO lebih sederhana untuk diterapkan. Sinkronisasi antara pengaturan lokal dan cloud memastikan aplikasi yang dikembangkan di laptop akan berfungsi secara konsisten saat diluncurkan ke server produksi.

Analisis Lisensi dan Model Penggunaan

  • Lisensi AGPL versi 3 memastikan MinIO sumber terbuka tetap dapat diakses gratis untuk eksperimen.
  • Fitur ketersediaan tinggi (HA) dan clustering kini menjadi bagian dari tingkat berbayar di ekosistem AI Store.
  • MinIO AI Store menyediakan opsi simpul tunggal gratis bagi pengguna yang ingin beralih dari versi lama.

Penggunaan biner tunggal atau Docker membuat MinIO sangat cepat untuk diterapkan dalam skenario uji coba. Meskipun sangat kuat untuk pengembangan, infrastruktur produksi skala besar mungkin memerlukan transisi ke model berbayar atau alternatif seperti Garage. Keputusan menggunakan MinIO didasarkan pada kebutuhan untuk menghindari premi biaya cloud selama fase pembelajaran dan pembangunan awal aplikasi.

Community Posts

View all posts