全部产品
Search
文档中心

Object Storage Service:Gunakan namespace hierarkis

更新时间:Jul 06, 2025

Object Storage Service (OSS) menyediakan fitur namespace hierarkis untuk mengelola objek dalam struktur hierarki multi-level berdasarkan direktori. Fitur ini memungkinkan Anda mengganti nama sebuah direktori atau objek melalui satu operasi atomik tunggal, sehingga tidak perlu mencantumkan atau memproses semua objek dengan awalan yang sama. Secara tradisional, OSS menggunakan namespace datar untuk menyimpan objek di dalam bucket dan mensimulasikan direktori menggunakan objek dengan nama yang diakhiri garis miring (/). Dibandingkan dengan metode ini, fitur namespace hierarkis secara signifikan meningkatkan kinerja pengelolaan direktori.

Manfaat

  • Operasi Atomik pada Direktori

    Jika sebuah bucket menggunakan namespace datar yang tidak mendukung direktori nyata, aplikasi mungkin perlu memproses jutaan objek untuk menyelesaikan tugas tingkat direktori. Sebaliknya, jika fitur namespace hierarkis diaktifkan, aplikasi dapat memperbarui direktori induk dalam satu operasi atomik untuk menyelesaikan beberapa tugas tingkat direktori secara bersamaan.

  • Kinerja Dioptimalkan

    Dibandingkan dengan namespace datar, namespace hierarkis menghilangkan kebutuhan untuk mereplikasi atau mengonversi data sebelum analisis, sehingga meningkatkan kinerja pengelolaan direktori. Fitur ini sangat penting untuk kerangka kerja analitik data besar seperti Hive atau Spark, yang menulis hasil keluaran ke direktori sementara selama eksekusi tugas dan mengganti nama direktori setelah tugas selesai. Pada namespace datar, waktu yang dibutuhkan untuk mengganti nama direktori sering kali lebih lama daripada waktu pelaksanaan tugas itu sendiri.

Prosedur

  1. Aktifkan Namespace Hierarkis

    Fitur namespace hierarkis hanya dapat diaktifkan saat membuat bucket dan tidak dapat dinonaktifkan setelah diaktifkan. Untuk informasi lebih lanjut tentang cara mengaktifkan namespace hierarkis, lihat Buat Bucket.

  2. Lakukan Operasi Tingkat Direktori pada Bucket dengan Namespace Hierarkis Diaktifkan

    Tabel berikut menjelaskan metode yang dapat digunakan untuk membuat, mengganti nama, atau menghapus direktori dalam bucket dengan namespace hierarkis diaktifkan.

    Metode implementasi

    Deskripsi

    Konsol OSS

    Aplikasi web yang ramah pengguna dan intuitif

    Java SDK

    Contoh SDK yang sederhana dan mudah digunakan

Catatan penggunaan

  • Wilayah yang Didukung

    Fitur namespace hierarkis hanya tersedia di wilayah-wilayah berikut: AS (Silicon Valley), Jepang (Tokyo), Inggris (London), dan Malaysia (Kuala Lumpur).

  • Buat Direktori

    Nama direktori tidak boleh mengandung garis miring (/) berturut-turut.

    Data tidak dapat ditulis langsung ke direktori. Content-Length dari sebuah direktori hanya dapat disetel ke 0.

    Content-Type dari sebuah direktori hanya dapat disetel ke application/x-directory.

  • Ganti Nama Direktori atau Objek

    Nama direktori atau objek yang diganti namanya tidak boleh sama dengan nama direktori atau objek yang sudah ada di bucket yang sama.

    Direktori induk yang termasuk dalam nama direktori atau objek yang diganti namanya harus ada. Misalnya, jika Anda mengganti nama direktori menjadi destfolder/examplefolder/test, direktori induk destfolder/examplefolder harus ada di dalam bucket.

  • Hapus Direktori

    • Hapus Rekursif

      Hapus rekursif digunakan untuk menghapus direktori beserta semua objek dan subdirektori di dalamnya. Untuk menggunakan hapus rekursif, Anda harus memiliki izin DeleteObject pada direktori dan semua objek serta subdirektori di dalamnya.

      Sebagai contoh, jika Anda ingin menggunakan metode hapus rekursif untuk menghapus direktori dest/testfolder dan objek di dalamnya, Anda harus memiliki izin DeleteObject pada dest/testfolder dan dest/testfolder/*.

      Penting

      Jika permintaan konkuren dikirim untuk menulis data ke direktori saat Anda menggunakan metode hapus rekursif, direktori mungkin gagal dihapus.

    • Hapus Non-Rekursif

      Hapus non-rekursif digunakan untuk menghapus direktori kosong. Untuk menggunakan hapus non-rekursif, Anda harus memiliki izin DeleteObject pada direktori yang ingin dihapus.

Fitur yang tidak didukung

Tabel berikut menjelaskan fitur-fitur yang tidak didukung oleh bucket dengan namespace hierarkis diaktifkan.

Kategori

Deskripsi

Fitur bucket

  • Replikasi lintas wilayah (CRR)

  • Pengelolaan versi

  • Inventaris bucket

  • Berbagi sumber daya lintas asal (CORS)

  • Hosting situs web statis

  • Aturan siklus hidup

  • Kebijakan retensi

  • Akselerasi transfer

Fitur objek

  • Tautan simbolik

  • Unggah tambahan

  • Daftar kontrol akses (ACL) dan penandaan

  • Pemrosesan gambar (IMG)

  • Objek Arsip dan Penyimpanan Arsip Dingin

  • Callback

  • Operasi RestoreObject yang digunakan untuk memulihkan objek Arsip dan Penyimpanan Arsip Dingin

  • Parameter x-oss-forbid-overwrite yang digunakan untuk mencegah objek tertimpa oleh objek lain dengan nama yang sama.

  • Parameter response-content-* dalam permintaan GetObject yang dikirim untuk menanyakan direktori

  • Operasi yang terkait dengan LiveChannel

  • Operasi DeleteMultipleObjects yang digunakan untuk menghapus objek secara batch

  • Operasi SelectObject yang digunakan untuk memilih konten dari objek