All Products
Search
Document Center

OpenSearch:Sumber data OSS + API

Last Updated:Aug 21, 2026

Gunakan Object Storage Service (OSS) untuk pembuatan indeks penuh dari file HA3 atau JSON yang disimpan di bucket, lalu gunakan API untuk pembaruan inkremental setelah indeks aktif.

Metode Peran Kapan digunakan
Impor penuh OSS Memuat semua record sekaligus saat pembuatan indeks Build awal atau rebuild penuh indeks
Pembaruan inkremental API Menambahkan, memodifikasi, atau menghapus record setelah indeks aktif Perubahan data berkelanjutan
Penting

OSS dan instans OpenSearch Vector Search Edition Anda harus berada di wilayah yang sama. Perbedaan wilayah akan menyebabkan koneksi sumber data gagal.

Pengaturan terdiri dari dua bagian: menyiapkan OSS, lalu menghubungkannya sebagai sumber data saat membuat tabel.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Akun Alibaba Cloud dengan OSS yang telah diaktifkan

  • Instans Vector Search Edition yang telah dibeli (lihat Beli instans Vector Search Edition)

  • File data yang dikodekan dalam UTF-8, diformat sebagai HA3 atau JSON

Langkah 1: Siapkan OSS

Aktifkan OSS

Aktifkan OSS di wilayah yang sama dengan instans OpenSearch Anda.

Buat bucket

  1. Buka OSS Management Console > Buckets > Create Bucket.

    Di panel navigasi kiri OSS Management Console, klik Buckets, lalu klik Create Bucket.

  2. Setelah bucket dibuat, tambahkan tag OpenSearch: Buka Bucket Settings > Bucket Tagging > Create Tag.

    Atur kunci tag (Key) dan nilai tag (Value) menjadi opensearch.

Siapkan file data Anda

File harus memenuhi persyaratan berikut sebelum diunggah:

Persyaratan Detail
Encoding UTF-8
Format HA3 atau JSON
Lokasi Harus berada di dalam folder, bukan di root bucket

Format JSON

Setiap baris berisi satu dokumen JSON. Format JSON multi-baris tidak didukung.

Aturan Detail
Satu record per baris Setiap objek JSON harus berada dalam satu baris
Pemisah baris \n antar record; \n tidak boleh muncul di dalam nilai JSON
Tidak ada file campuran Direktori hanya boleh berisi file data JSON
Tipe nilai Semua nilai JSON berupa string; skema akan mengonversinya ke tipe yang sesuai selama pembuatan indeks

Contoh:

{"field_double": ["100.0", "221.123", "500.3333333"], "field_int32": ["100", "200", "300"], "title": "Huawei Mate 9 Kirin 960 chip Leica dual camera", "color": "Red", "empty_int32": "", "price": "3599", "CMD": "add", "nid": "1", "gather_cn_str": "", "desc": ["str1", "str2", "str3"], "brand": "Huawei", "size": "5.9","__subdocs__":[{"sub_pk":"100","sub_field1":"200","sub_field2":["100","200","300"]},{"sub_pk":"200","sub_field1":"200","sub_field2":["100","200","300"]}]}
{"field_double": ["100.0", "221.123", "500.3333333", "100.0", "221.123", "500.3333333"], "field_int32": ["100", "200", "300", "100", "200", "300"], "title": "Huawei/Huawei P10 Plus full network phone", "color": "Blue", "empty_int32": "", "price": "4388", "CMD": "add", "nid": "2", "gather_cn_str": "colorBlue", "desc": ["str1", "str2", "str3", "str1", "str2", "str3"], "brand": "Huawei", "size": "5.5","__subdocs__":[{"sub_pk":"100","sub_field1":"200","sub_field2":["100","200","300"]},{"sub_pk":"200","sub_field1":"200","sub_field2":["100","200","300"]}]}

Format HA3

File HA3 menggunakan pemisah biner. Setiap file berisi rangkaian perintah add dan delete.

Pemisah file

Encoding C++ Heks ASCII Deskripsi Tampilan (emacs/vi) Masukan di emacs Input di vi
"\x1F\n" 1F0A Pemisah key-value ^_ (diikuti line feed) C-q C-7 C-v C-7
"\x1E\n" 1E0A Pemisah perintah ^^ (diikuti line feed) C-q C-6 C-v C-6
"\x1D" 1D Pemisah multi-nilai ^] C-q C-5 C-v C-5
"\x1C" 1C Flag bobot bagian ^\ C-q C-4 C-v C-4
"\x1D" 1D Pemisah bagian ^] C-q C-5 C-v C-5
"\x03" 03 Pemisah field sub-dokumen ^C C-q C-c C-v C-c

Format perintah

  • Perintah add: Baris pertama harus berisi CMD=add. Sertakan semua field yang didefinisikan dalam skema, dalam urutan apa pun.

    CMD=add^_
    PK=12345321^_
    url=http://www.aliyun.com/index.html^_
    title=Alibaba Cloud Computing Co., Ltd.^_
    body=xxxxxx xxx^_
    time=3123423421^_
    multi_value_field=1234^]324^]342^_
    bidwords=mp3^\price=35.8^Ptime=13867236221^]mp4^\price=32.8^Ptime=13867236221^_
    ^^
  • Perintah delete: Baris pertama harus berisi CMD=delete. Sertakan field primary key dan field hash partisi. Jika keduanya merupakan field yang sama, cukup sertakan sekali saja.

    CMD=delete^_
    PK=12345321^_
    ^^

Unggah file ke bucket

Letakkan file data Anda di dalam folder di dalam bucket — bukan di direktori root. Struktur bucket harus tampak seperti berikut:

<nama-bucket-anda>/
  └── <folder-data-anda>/
        ├── data_file_1.json
        ├── data_file_2.json
        └── ...

Untuk mengunggah:

  1. Di OSS Management Console, buka bucket Anda.

  2. Di panel navigasi kiri, buka Object Management > Objects.

  3. Klik Upload Object, pilih file Anda, lalu konfirmasi.

    Setelah pengunggahan selesai, status file di panel Task List menampilkan Upload Successful.

Langkah 2: Tambahkan sumber data OSS + API

Atur informasi dasar tabel

  1. Di Daftar Instans, temukan instans Vector Search Edition Anda dan klik Manage di kolom Actions.

  2. Di panel navigasi kiri, buka Table Management > Add Table.

  3. Isi informasi dasar tabel dan klik Next.

    Field Deskripsi
    Table Name Nama kustom untuk tabel ini
    Number of Data Shards Bilangan bulat positif, maksimum 256. Semakin banyak shard, semakin cepat proses build penuh dan performa kueri tunggal.
    Number of Data Update Resources Resource yang digunakan untuk pembaruan data inkremental. Setiap indeks mencakup dua resource pembaruan gratis berkapasitas 4-core 8 GB secara default. Resource tambahan dikenai biaya. Lihat penagihan Vector Search Edition.
    Scenario Template Pilih salah satu: General Template, Vector: Image Search Template, atau Vector: Text Semantic Search Template

    Setelah memilih templat Vector: Image Search, pilih metode pengambilan: Dense Vector Retrieval atau Dense & Sparse Vector Hybrid Retrieval.

Konfigurasikan sinkronisasi data

  1. Untuk Full Data Source, pilih Object Storage Service (OSS) + API.

  2. Isi detail koneksi OSS dan klik Data Source Verification.

    Field Deskripsi
    OSS Path Jalur ke folder yang berisi file data Anda. Harus diawali dengan /. Tidak boleh mengandung ?, =, atau &. File harus berada di dalam folder — direktori root tidak didukung.
    OSS Bucket Nama bucket OSS
    Data Format Pilih HA3 atau JSON agar sesuai dengan file yang diunggah
    Catatan

    Di OSS Management Console, pada halaman Buckets, klik nama bucket target (misalnya, zhyq-sz) untuk membuka halaman detail bucket.

  3. Setelah verifikasi berhasil, klik Next.

    Jika verifikasi gagal, periksa apakah jalur OSS mengarah ke folder (bukan root), nama bucket benar, format data sesuai dengan file Anda, dan OSS berada di wilayah yang sama dengan instans OpenSearch Anda.

Konfigurasikan field

Vector Search Edition mengisi field secara otomatis berdasarkan templat skenario Anda dan mengimpor definisi field dari sumber data.

  1. Tinjau field yang telah ditentukan. Untuk Image Search Template, field default-nya adalah:

    Field Deskripsi
    id Primary key
    source_image Gambar sumber
    namespace Namespace
    source_image_vector Vektor gambar sumber
  2. Konfigurasikan tipe dan properti field:

    • Primary key (wajib): Atur Type ke tipe integer atau STRING, lalu pilih opsi Primary Key.

    • Vector field (wajib): Atur Type ke FLOAT dan centang kotak Vector Field. Field vektor secara default merupakan FLOAT multi-nilai dengan koma sebagai pemisah. Masukkan pemisah kustom jika diperlukan.

    • Default values: Saat suatu field tidak ada atau kosong dalam data, sistem akan mengisi nilai default — 0 untuk tipe numerik, string kosong untuk tipe STRING. Sesuaikan nilai default sesuai kebutuhan.

  3. Untuk field yang memerlukan pra-pemrosesan (seperti source_image), klik Configure di kolom Data Preprocessing. Dalam konfigurasi pra-pemrosesan:

    • Data Source: Pilih OSS Object Storage untuk mengimpor gambar langsung dari OSS (berikan jalur OSS), atau Base64 Encoding untuk menyediakan data gambar terenkripsi melalui API.

    • Pre-processing Template: Pilih templat yang sesuai dengan tipe data Anda. Untuk gambar, templat yang tersedia adalah:

      • Image Vectorization

      • OCR Image Text Recognition

      • OCR Image Text Recognition + Image Vectorization

    • Service List: Setelah memilih templat, tinjau model yang digunakan. Pilih dari:

      • Built-in Models: Gratis digunakan, dengan pilihan jenis model yang lebih terbatas.

    Nilai konfigurasi untuk contoh ini:

    • OSS Endpoint: oss-cn-shenzhen-internal.aliyuncs.com

    • OSS Bucket: zhyq-sz

    • Di daftar layanan, pilih model Built-in General Image Embedding Model - 512D CLIP, dengan field output diatur ke source_image_vector.

    Klik OK untuk mengonfirmasi.

  4. Klik Next.

Konfigurasikan skema indeks

  1. Atur field yang disertakan dan parameter indeks, lalu klik Next.

    Parameter Deskripsi
    Included Fields Primary key dan vector field wajib disertakan. Field namespace bersifat opsional.
    Vector Dimension Jumlah dimensi penyematan vektor Anda
    Real-time Indexing Aktifkan atau nonaktifkan pembaruan indeks real-time
    Distance Type Metrik jarak untuk pencarian kemiripan vektor
    Vector Index Algorithm Algoritma yang digunakan untuk membangun indeks vektor

    Contoh konfigurasi indeks vektor:

    • Nama indeks: source_image_vector

    • Pengambilan hibrida: Disabled

    • Primary key: id, Vector field: source_image_vector

    • Dimensi: 512

    • Tipe jarak: SquaredEuclidean

    • Indeks real-time: true

    • Algoritma: Qc

  2. Klik More Advanced Configuration untuk memperluas bidang parameter lanjutan:

    • Real-time Index Parameters

    • Index Build Parameters

    • Index Search Parameters

    • Linear Build Threshold

    • Minimum Recall Candidate Set Size

    • Recall Metric Reporting

    • Ignore Problematic Vector Data

    Untuk referensi parameter lengkap, lihat Konfigurasi indeks vektor umum.

Konfirmasi dan verifikasi

  1. Di halaman Confirm Creation, tinjau pengaturan Anda dan klik Confirm.

  2. Kembali ke Daftar Instans. Status instans berubah menjadi Normal dalam waktu sekitar 2 menit.

  3. Saat status sudah Normal, gunakan Actions > Query Test untuk menjalankan kueri uji dan memverifikasi bahwa indeks berfungsi.