Apa itu penyimpanan objek besar biner (BLOB)?

Organisasi saat ini menghasilkan dan menangani data tidak terstruktur dalam jumlah besar. Data ini mencakup semuanya, mulai dari gambar dan video hingga cadangan, file log, dan set data besar untuk analisis. Penyimpanan, pengelolaan, dan akses yang efektif terhadap file yang beragam dan sering kali berukuran sangat besar ini memerlukan solusi penyimpanan khusus. Penyimpanan objek besar biner (BLOB) telah muncul sebagai teknologi utama untuk mengatasi tantangan ini, yang menyediakan cara yang skalabel dan hemat biaya untuk menangani data tidak terstruktur.

Penyimpanan objek besar biner ditentukan

Sistem penyimpanan objek besar biner dirancang untuk skalabilitas besar, daya tahan tinggi, dan membantu efektivitas biaya, sehingga membantu mereka menyimpan volume data tidak terstruktur yang besar.

Untuk memahami sepenuhnya penyimpanan objek besar biner, sebaiknya kita definisikan terlebih dahulu komponen intinya: penyimpanan objek dan objek besar biner (BLOB) itu sendiri.

Apa itu penyimpanan objek?

Penyimpanan objek adalah arsitektur penyimpanan data yang mengelola data sebagai unit terpisah, yang disebut objek. Tidak seperti sistem file yang mengatur data dalam struktur direktori hierarkis (folder dan file), atau block storage yang mengelola data sebagai blok berukuran tetap, sistem penyimpanan objek memperlakukan setiap bagian data sebagai objek mandiri.

Setiap objek biasanya mencakup:

  • Data itu sendiri: Data ini dapat berupa gambar, video, dokumen, file cadangan, atau jenis data tidak terstruktur lainnya.
  • Metadata: Ini adalah informasi deskriptif tentang data. Metadata standar dapat mencakup nama, ukuran, jenis, dan tanggal pembuatan objek. Yang terpenting, penyimpanan objek juga memungkinkan metadata yang luas dan dapat disesuaikan, yang dapat sangat berguna untuk pengindeksan, penelusuran, dan pengelolaan data dalam skala besar.
  • ID unik: Setiap objek diberi ID unik secara global (sering kali berupa URI atau URL) yang memungkinkan aplikasi mengaksesnya secara langsung melalui jaringan, biasanya menggunakan API berbasis HTTP.

Apa itu BLOB?

BLOB, yang merupakan singkatan dari binary large object, mengacu pada kumpulan data biner yang disimpan sebagai satu entity. Istilah "biner" menandakan bahwa data dapat berupa apa saja; tidak terbatas pada teks atau format tertentu. File tersebut bisa berupa file yang dapat dieksekusi, gambar, konten audio atau video, arsip terkompresi, cadangan database, atau jenis informasi digital lainnya. Bagian "large" dari nama tersebut menunjukkan bahwa BLOB biasanya digunakan untuk file yang terlalu besar untuk disimpan secara praktis atau efisien secara langsung dalam kolom database tradisional bersama data terstruktur.

Oleh karena itu, penyimpanan objek besar biner pada dasarnya adalah praktik menyimpan BLOB ini sebagai objek individual dalam sistem penyimpanan objek. Misalnya, alih-alih menyematkan file video besar langsung ke dalam kumpulan data database, Anda akan menyimpan file video di sistem penyimpanan objek, lalu menyimpan referensi (ID unik atau URL objek) ke BLOB tersebut di database Anda.

Bagaimana cara kerja penyimpanan objek besar biner?

Proses penggunaan penyimpanan objek besar biner umumnya melibatkan beberapa langkah utama, yang difasilitasi oleh sistem penyimpanan objek:

Saat pengguna atau aplikasi perlu menyimpan file biner besar, mereka mengirimkan data, beserta metadata terkait, ke sistem penyimpanan objek melalui panggilan API (biasanya RESTful API melalui HTTP/S). Sistem penyimpanan menerima data ini.

Sistem penyimpanan objek mengambil data biner yang diupload dan metadatanya, lalu merangkumnya menjadi "objek". Kemudian, sistem tersebut akan menetapkan ID unik untuk objek baru ini. Pengidentifikasi ini sangat penting karena merupakan cara objek akan diakses dan diambil nanti.

Sistem menyimpan objek, sering kali mendistribusikan dan mereplikasinya di beberapa perangkat penyimpanan fisik dan terkadang bahkan di berbagai pusat data. Pendekatan terdistribusi ini meningkatkan ketahanan data (melindungi dari kegagalan hardware) dan ketersediaan. Strategi replikasi spesifik dapat bervariasi berdasarkan kelas penyimpanan yang dipilih atau kebijakan penyedia.

Metadata yang terkait dengan BLOB diindeks. Hal ini memungkinkan Anda menelusuri atau mengategorikan objek berdasarkan tag metadata, meskipun Anda memiliki miliaran objek.

Saat pengguna atau aplikasi perlu mengakses BLOB, mereka akan mengirimkan permintaan ke sistem penyimpanan objek menggunakan ID unik objek. Sistem akan menemukan objek dan mengalirkan data biner kembali ke pemohon.

Sistem penyimpanan objek menyediakan mekanisme untuk mengontrol siapa yang dapat membaca, menulis, atau menghapus BLOB. Hal ini biasanya dikelola melalui kebijakan identity and access management (IAM), daftar kontrol akses (ACL), atau URL yang ditandatangani yang memberikan akses sementara.

Manfaat penyimpanan objek besar biner

Penggunaan penyimpanan objek besar biner menawarkan keuntungan signifikan untuk mengelola data tidak terstruktur:

Skalabilitas

Sistem penyimpanan objek dirancang untuk diskalakan hingga exabyte dan lebih, mengakomodasi data dan objek dalam jumlah besar. Hal ini menjadikannya cocok untuk aplikasi yang menghasilkan volume data yang sangat besar.

Hemat biaya

Menyimpan data berukuran besar yang jarang diakses dalam sistem file atau database tradisional berperforma tinggi dapat menjadi mahal. Penyimpanan objek sering kali menyediakan opsi bertingkat dengan biaya yang bervariasi berdasarkan frekuensi akses dan persyaratan daya tahan yang dapat memungkinkan pengoptimalan biaya.

Daya tahan dan ketersediaan

Layanan penyimpanan objek terkemuka dapat menawarkan tingkat ketahanan data yang tinggi, sering kali dengan menyimpan objek secara redundan di beberapa perangkat atau lokasi geografis. Hal ini dapat meminimalkan risiko kehilangan data akibat kegagalan hardware dan dapat mendukung ketersediaan tinggi.

Metadata yang lengkap

Kemampuan untuk mengaitkan metadata kustom yang ekstensif dengan setiap BLOB dapat memungkinkan pengorganisasian data yang lebih baik, penelusuran yang lebih mudah, serta kemampuan pengelolaan dan analisis data yang lebih canggih.

Menyederhanakan akses data

Mengakses BLOB melalui API HTTP standar dapat menyederhanakan integrasi dengan aplikasi web, aplikasi seluler, dan layanan cloud lainnya. ID unik untuk setiap objek memungkinkan akses langsung tanpa menavigasi jalur file yang kompleks.

Decoupling

Menyimpan BLOB secara eksternal ke database atau server aplikasi dapat meningkatkan performa dan skalabilitas sistem utama tersebut. Database tidak perlu lagi mengelola jenis data yang besar dan rumit, dan aplikasi dapat mengalihkan pengiriman konten statis.

Jenis penyimpanan objek besar biner

Layanan penyimpanan objek yang menghosting BLOB sering kali menyediakan kelas atau tingkat penyimpanan yang berbeda, yang dikategorikan berdasarkan frekuensi akses, waktu pengambilan, dan biaya. Tingkatan ini dapat membantu organisasi mengoptimalkan biaya penyimpanan berdasarkan penggunaan data. Jenis yang umum meliputi:

Penyimpanan standar/hot

Dirancang untuk data yang sering diakses dan memerlukan latensi rendah serta throughput tinggi. Tingkat ini cocok untuk konten situs yang aktif, data aplikasi seluler, atau data yang diproses secara aktif oleh workload analisis. Biasanya, biaya penyimpanan lebih tinggi, tetapi dapat membantu menurunkan biaya akses.

Penyimpanan akses jarang/nearline

Ditujukan untuk data yang lebih jarang diakses (misalnya, sebulan sekali), tetapi tetap harus tersedia dengan cepat saat diminta. Penyimpanan ini dapat menawarkan biaya penyimpanan yang lebih rendah daripada penyimpanan standar, tetapi mungkin memiliki biaya akses atau biaya per pengambilan yang sedikit lebih tinggi. Kelas ini ideal untuk pencadangan jangka panjang, pengarsipan data yang memerlukan akses cepat sesekali, atau file pemulihan dari bencana.

Penyimpanan arsip/coldline

Dibuat untuk pengarsipan, kepatuhan, dan penyimpanan data jangka panjang yang jarang diakses (misalnya, setahun sekali atau kurang). Tingkat ini dapat memberikan biaya penyimpanan yang rendah. Waktu pengambilan dapat lebih lama, mulai dari menit hingga jam, dan biaya akses mungkin lebih tinggi. Hal ini dapat cocok untuk arsip peraturan atau data yang perlu dipertahankan untuk tujuan historis tetapi tidak diperlukan untuk operasi sehari-hari.

Penyimpanan arsip/arsip mendalam

Beberapa penyedia menawarkan tingkat yang lebih dingin untuk data yang sangat jarang diakses dan dapat mentoleransi waktu pengambilan yang lebih lama (misalnya, berjam-jam). Tingkatan ini menawarkan biaya penyimpanan yang paling rendah.

Kasus penggunaan untuk penyimpanan objek besar biner

Fleksibilitas dan skalabilitas penyimpanan BLOB dapat menjadikannya cocok untuk berbagai aplikasi di berbagai industri:

Kasus penggunaan

Fitur

Pengiriman konten multimedia

Menyimpan dan menyajikan gambar, video, file audio, dan multimedia lainnya untuk situs, layanan streaming, dan aplikasi seluler.

Data lake dan analisis

Menyimpan data mentah dalam jumlah besar di data lakehouse (terstruktur, semi-terstruktur, dan tidak terstruktur) dari berbagai sumber dalam format aslinya untuk pemrosesan big data, pelatihan model machine learning, dan business intelligence.

Pengarsipan file log

Menyimpan log server aplikasi, log keamanan, dan jejak audit untuk tujuan pemecahan masalah, analisis keamanan, dan kepatuhan.

Sistem pengelolaan dokumen

Menyimpan dan mengelola dokumen, PDF, gambar pindaian, dan catatan bisnis lainnya dalam jumlah besar.

Hosting situs statis

Menghosting aset statis (HTML, CSS, JavaScript, gambar) situs secara langsung dari penyimpanan objek, yang dapat menjadi sangat skalabel dan hemat biaya.

Distribusi software

Menyimpan dan mendistribusikan paket software, update, dan penginstal berukuran besar.

Pengelolaan data layanan kesehatan

Menyimpan gambar medis (sinar-X, MRI), rekam medis pasien, dan data genomik dengan cara yang aman dan patuh.

Riset ilmiah

Menyimpan set data besar dari eksperimen, simulasi, dan jaringan sensor untuk analisis dan kolaborasi.

Kasus penggunaan

Fitur

Pengiriman konten multimedia

Menyimpan dan menyajikan gambar, video, file audio, dan multimedia lainnya untuk situs, layanan streaming, dan aplikasi seluler.

Data lake dan analisis

Menyimpan data mentah dalam jumlah besar di data lakehouse (terstruktur, semi-terstruktur, dan tidak terstruktur) dari berbagai sumber dalam format aslinya untuk pemrosesan big data, pelatihan model machine learning, dan business intelligence.

Pengarsipan file log

Menyimpan log server aplikasi, log keamanan, dan jejak audit untuk tujuan pemecahan masalah, analisis keamanan, dan kepatuhan.

Sistem pengelolaan dokumen

Menyimpan dan mengelola dokumen, PDF, gambar pindaian, dan catatan bisnis lainnya dalam jumlah besar.

Hosting situs statis

Menghosting aset statis (HTML, CSS, JavaScript, gambar) situs secara langsung dari penyimpanan objek, yang dapat menjadi sangat skalabel dan hemat biaya.

Distribusi software

Menyimpan dan mendistribusikan paket software, update, dan penginstal berukuran besar.

Pengelolaan data layanan kesehatan

Menyimpan gambar medis (sinar-X, MRI), rekam medis pasien, dan data genomik dengan cara yang aman dan patuh.

Riset ilmiah

Menyimpan set data besar dari eksperimen, simulasi, dan jaringan sensor untuk analisis dan kolaborasi.

Mengatasi tantangan bisnis Anda dengan Google Cloud

Pelanggan baru mendapatkan kredit gratis senilai $300 untuk dibelanjakan di Google Cloud.

Cara menyimpan BLOB dengan aman

Mengamankan objek besar biner sangat penting, terutama saat menangani data sensitif atau penting. Strategi keamanan yang efektif biasanya melibatkan beberapa lapisan keamanan:

Enkripsi

Enkripsi saat transit menggunakan HTTPS (TLS/SSL) untuk semua permintaan API. Enkripsi nonaktif memastikan BLOB dienkripsi di penyimpanan, dengan opsi enkripsi sisi server (kunci yang dikelola penyedia) atau kunci yang dikelola/disediakan pelanggan (CMEK/CSEK) untuk kontrol yang lebih baik.

Identity and access management (IAM):

Terapkan kebijakan kontrol akses terperinci untuk menentukan siapa (pengguna, grup, atau akun layanan) yang dapat melakukan tindakan apa (membaca, menulis, menghapus, mencantumkan) pada BLOB tertentu atau kumpulan BLOB (sering disebut bucket atau container). Ikuti prinsip hak istimewa terendah, hanya berikan izin yang diperlukan.

Daftar kontrol akses (ACL)

ACL dapat membantu memberikan lapisan kontrol lain, yang memungkinkan Anda memberikan izin tertentu kepada pengguna atau grup individual untuk objek atau bucket individual. IAM mungkin lebih cocok untuk kebutuhan kontrol terperinci dibandingkan pengelolaan berskala, yang menawarkan pendekatan granular untuk setelan izin yang spesifik dan mendetail.

URL yang ditandatangani/URL yang telah ditandatangani

Untuk skenario yang mana Anda perlu memberikan akses sementara dan terbatas ke BLOB tertentu (misalnya, mengizinkan pengguna mendownload file yang mereka beli), URL yang ditandatangani adalah mekanisme yang aman. URL ini memberikan izin terbatas waktu untuk melakukan tindakan tertentu tanpa mengharuskan pengguna memiliki kredensial lengkap

Pembuatan versi

Aktifkan pembuatan versi objek untuk menyimpan beberapa versi BLOB. Hal ini dapat melindungi dari penimpaan atau penghapusan yang tidak disengaja, karena Anda dapat memulihkan versi sebelumnya jika diperlukan.

Logging audit

Aktifkan logging audit untuk melacak permintaan akses dan tindakan yang dilakukan pada BLOB dan bucket penyimpanan Anda. Hal ini membantu dalam analisis keamanan, pelaporan kepatuhan, dan mengidentifikasi upaya akses yang tidak sah.

Masalah apa yang ingin Anda temukan solusinya?
What you'll get:
Panduan langkah demi langkah
Arsitektur referensi
Solusi siap pakai yang tersedia
Layanan ini dibangun dengan Vertex AI. Anda harus berusia 18 tahun ke atas untuk menggunakannya. Jangan memasukkan informasi sensitif, rahasia, atau pribadi.

Langkah selanjutnya

Mulailah membangun solusi di Google Cloud dengan kredit gratis senilai $300 dan lebih dari 20 produk yang selalu gratis.