All Products
Search
Document Center

Object Storage Service:OpenMetaQuery

Last Updated:Mar 26, 2026

Panggil operasi OpenMetaQuery untuk mengaktifkan fitur manajemen metadata pada bucket tertentu dan memilih mode retrieval. Setelah fitur ini diaktifkan, Object Storage Service (OSS) membuat library indeks metadata untuk bucket tersebut dan membangun indeks metadata untuk semua objek di dalamnya. Setelah library indeks dibuat, OSS melakukan pemindaian inkremental Near Real-Time untuk melacak serta mengindeks objek baru.

Catatan

  • Secara default, akun Alibaba Cloud memiliki izin untuk mengaktifkan fitur manajemen metadata. Jika Anda ingin menggunakan pengguna Resource Access Management (RAM) untuk mengaktifkan fitur ini, pastikan pengguna RAM tersebut telah diberikan izin oss:OpenMetaQuery. Untuk informasi selengkapnya, lihat Berikan izin kustom kepada pengguna RAM.

  • Untuk informasi lebih lanjut tentang pengindeksan data, lihat Pengindeksan data.

Sintaks permintaan

POST /?metaQuery&comp=add&mode=basic HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<MetaQuery>
  <WorkflowParameters>
   <WorkflowParameter>
	<Name>VideoInsightEnable</Name> 
	<Value>True</Value>  // Menentukan apakah akan mengaktifkan kesadaran konten video.
   </WorkflowParameter>
   <WorkflowParameter>
	<Name>ImageInsightEnable</Name>
	<Value>True</Value>  // Menentukan apakah akan mengaktifkan kesadaran konten gambar.
   </WorkflowParameter>
 </WorkflowParameters>
  <Filters>
    <Filter>Size > 1024, FileModifiedTime > 2025-06-03T09:20:47.999Z</Filter> // Mengonfigurasi kondisi filter.
    <Filter>Filename prefix (YWEvYmIv)</Filter>
  </Filters>
  <NotificationAttributes>
    <Notifications>
        <Notification>
            <MNS>your-mns-topic-name</MNS> // Nama topik MNS.
        </Notification>
    </Notifications>
    <WithFields>
        <WithField>Insights</WithField> // Bidang yang akan dikembalikan dalam pesan MNS. Satu-satunya nilai yang valid adalah Insights. Jika elemen ini tidak ditentukan, bidang-bidang tersebut tidak akan dikembalikan.
    </WithFields>
  </NotificationAttributes>
</MetaQuery>

Header permintaan

Operasi ini hanya menggunakan header permintaan umum. Untuk informasi selengkapnya, lihat Header permintaan umum.

Elemen permintaan

Name

Type

Required

Example

Description

mode

String

Yes

basic

Mode retrieval. Nilai yang valid:

  • basic (default): Pencarian skalar

  • semantic: Pencarian semantik

role

String

No

my-oss-role

Nama peran RAM yang digunakan untuk mengakses OSS. Untuk memastikan akses yang aman, berikan izin yang diperlukan kepada peran ini di Konsol. Parameter ini wajib ditentukan jika Anda menetapkan NotificationAttributes dalam permintaan.

MetaQuery

container

No

N/A

Kontainer untuk kueri metadata.

Node anak: Filters, NotificationAttributes

WorkflowParameters

container

No

N/A

Kontainer untuk parameter alur kerja yang digunakan untuk mengonfigurasi kesadaran konten berbasis AI.

WorkflowParameter

container

No

N/A

Kontainer untuk satu parameter alur kerja.

Node induk: WorkflowParameters

Name

String

No

VideoInsightEnable

Nama parameter alur kerja.

  • VideoInsightEnable: Mengaktifkan kesadaran konten video.

  • ImageInsightEnable: Mengaktifkan kesadaran konten gambar.

Value

String

No

True

Nilai parameter alur kerja.

  • True: Mengaktifkan fitur yang ditentukan.

  • False: Menonaktifkan fitur yang ditentukan.

Filters

container

No

N/A

Kontainer untuk kondisi filter. Mendukung operator logika (AND dan OR) serta operator perbandingan. Anda dapat menentukan maksimal lima operasi OR dan empat operasi AND.

  • Ekspresi Filter memiliki hubungan OR satu sama lain.

  • Dalam satu ekspresi Filter, beberapa kondisi dipisahkan dengan koma (,) dan memiliki hubungan AND.

Sebagai contoh, untuk memfilter objek yang ukurannya lebih dari 1024 byte dan dimodifikasi setelah 2025-06-03T09:20:47.999Z, atau objek yang memiliki awalan 'aa/bb/' (YWEvYmIv adalah Base64 encoding URL-safe dari 'aa/bb/').

<Filters>
   <Filter>Size > 1024,FileModifiedTime > 2025-06-03T09:20:47.999Z</Filter>
   <Filter>Filename prefix (YWEvYmIv)</Filter>
 </Filters>

Node anak: Filter

Node induk: MetaQuery

Filter

String

No

Size > 1024,FileModifiedTime > 2025-06-03T09:20:47.999Z

Ekspresi kondisi filter. Untuk informasi tentang variabel dan operator yang didukung, lihat Lampiran: Variabel dan operator untuk field Filters.

Nilai contoh ini memfilter objek yang ukurannya lebih dari 1024 byte dan dimodifikasi setelah 2025-06-03T09:20:47.999Z.

Node induk: Filters

NotificationAttributes

container

No

N/A

Kontainer untuk pengaturan notifikasi yang digunakan untuk mengonfigurasi notifikasi yang dikirim ke topik MNS setelah pengindeksan objek selesai.

Node anak: Notifications, WithFields

Node induk: MetaQuery

Notifications

container

No

N/A

Kontainer untuk konfigurasi notifikasi.

Node anak: Notification

Node induk: NotificationAttributes

Notification

container

No

N/A

Node anak: MNS

Node induk: Notifications

MNS

String

No

ipc-test-oss-notification

Nama topik MNS.

Node induk: Notification

WithFields

container

No

N/A

Kontainer untuk menentukan bidang yang akan dikembalikan dalam pesan notifikasi.

Node anak: WithField

Node induk: NotificationAttributes

WithField

String

No

Insights

Bidang yang akan dikembalikan dalam pesan notifikasi. Nilai yang valid:

  • Insights: Deskripsi singkat objek yang dihasilkan oleh analisis AI.

Node induk: WithFields

Header respons

Semua header dalam respons terhadap permintaan DescribeRegions merupakan header respons umum. Untuk informasi selengkapnya, lihat Header respons umum.

Contoh

Contoh permintaan

POST /?metaQuery&comp=add&mode=basic HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Thu, 17 Apr 2025 13:08:38 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<MetaQuery>
  <WorkflowParameters>
   <WorkflowParameter>
	<Name>VideoInsightEnable</Name> 
	<Value>True</Value>  // Menentukan apakah akan mengaktifkan kesadaran konten video.
   </WorkflowParameter>
   <WorkflowParameter>
	<Name>ImageInsightEnable</Name>
	<Value>True</Value>  // Menentukan apakah akan mengaktifkan kesadaran konten gambar.
   </WorkflowParameter>
 </WorkflowParameters>
  <Filters>
    <Filter>Size > 1024, FileModifiedTime > 2025-06-03T09:20:47.999Z</Filter> // Mengonfigurasi kondisi filter: Ukuran objek lebih dari 1024 byte dan objek dimodifikasi setelah 2025-06-03T09:20:47.999Z. 
    <Filter>Filename prefix (YWEvYmIv)</Filter>  // Mengonfigurasi filter awalan: Awalannya adalah YWEvYmIv, yaitu Base64 encoding dari path aa/bb/.
  </Filters>
  <NotificationAttributes>
    <Notifications>
        <Notification>
            <MNS>your-mns-topic-name</MNS> // Nama topik MNS.
        </Notification>
    </Notifications>
    <WithFields>
        <WithField>Insights</WithField> // Menentukan bidang yang akan dikembalikan dalam pesan MNS. Nilai yang valid: Insights. Jika dihilangkan, bidang-bidang ini tidak akan dikembalikan.
    </WithFields>
  </NotificationAttributes>
</MetaQuery>

Contoh respons

HTTP/1.1 200 OK
x-oss-request-id: 5C1B138A109F4E405B2D****
Date: Mon, 26 Jul 2021 13:08:38 GMT
Content-Length: 0
Connection: keep-alive
Server: AliyunOSS
x-oss-request-id: 5C06A3B67B8B5A3DA422299D
x-oss-server-time: 544

Format notifikasi MNS

Jika Anda mengonfigurasi parameter notifikasi, OSS mengirimkan notifikasi ke topik MNS yang ditentukan setelah setiap objek diindeks. Notifikasi tersebut memiliki format sebagai berikut:

{
      "DatasetName": "your_dataset",
      "RequestId": "EC8CC942-BA82-BC29-BB5E-3F193F9964CE",
      "StartTime": "2026-02-27T19:20:35.190142739+08:00",
      "EndTime": "2026-02-27T19:21:44.021599314+08:00",
      "Success": true,
      "Message": "",
      "Files": [
          {
              "URI": "oss://your_bucket/dir/test.mp4",
              "Error": "",
              "ObjectStatus": "Indexed",
              "SequenceNumber": 4,
              "Insights": {
                  "Video": {
                      "Caption": "Indoor corner static scene",
                      "Description": "This is an indoor scene. The frame is split into left and right views: on the left is a glass door with white curtains, with a faint, blurry outdoor view beyond it. On the right is a corner area with a brown leather sofa, a gray chair, and a wooden cabinet. Next to the sofa is a black stroller and a green potted plant. A bright yellow ball sits on top of the cabinet."
                  }
              }
          }
      ],
      "UserData": ""
  }

SDK

Anda dapat memanggil operasi ini menggunakan SDK berikut:

Antarmuka baris perintah ossutil

Untuk informasi tentang perintah ossutil yang sesuai dengan operasi OpenMetaQuery, lihat open-meta-query.

Lampiran: Variabel dan operator untuk field Filters

Parameter

Type

Operator yang didukung

Description

Contoh filter

Size

Integer

=: Sama dengan. Setara dengan ==.

!=: Tidak sama dengan

>: Lebih besar dari

>=: Lebih besar dari atau sama dengan

<: Kurang dari

<=: Kurang dari atau sama dengan

Memfilter berdasarkan ukuran objek.

  • Size > 9: Ukuran objek lebih dari 9 byte.

Filename

String

=: Sama dengan. Setara dengan ==.

!=: Tidak sama dengan

prefix: Memiliki awalan

suffix: Memiliki akhiran

in: Dalam kumpulan

notin: Tidak dalam kumpulan

Memfilter berdasarkan nama objek. Nama objek harus di-Base64 encode dengan format URL-safe.

  • Filename == YWEvYmIvY2MuanBn : Nama objek adalah 'aa/bb/cc.jpg'.

  • Filename != YWEvYmIvY2MuanBn: Nama objek bukan 'aa/bb/cc.jpg'.

  • Filename notin (YWEvYmIvY2MuanBn, YWEvYmIvZGQuanBn): Nama objek bukan 'aa/bb/cc.jpg' atau 'aa/bb/dd.jpg'.

  • Filename in (YWEvYmIvY2MuanBn, YWEvYmIvZGQuanBn: Nama objek adalah 'aa/bb/cc.jpg' atau 'aa/bb/dd.jpg'.

  • Filename prefix (YWEvYmIv, YWEvY2Mv): Nama objek memiliki awalan 'aa/bb/' atau 'aa/cc/'.

  • Filename suffix (LmpwZw, LnBuZw): Nama objek memiliki akhiran '.jpg' atau '.png'.

FileModifiedTime

String

=: Sama dengan. Setara dengan ==.

!=: Tidak sama dengan

>: Lebih besar dari

>=: Lebih besar dari atau sama dengan

<: Kurang dari

<=: Kurang dari atau sama dengan

Memfilter berdasarkan waktu modifikasi objek. Gunakan format waktu RFC3339Nano.

  • FileModifiedTime > 2025-06-03T09:20:47.999Z: Objek dimodifikasi setelah 2025-06-03T09:20:47.999Z.

OSSTagging.*

String

=: Sama dengan. Setara dengan ==.

!=: Tidak sama dengan

!: Kunci tidak ada

exists: Kunci ada

prefix: Memiliki awalan

suffix: Memiliki akhiran

in: Dalam kumpulan

notin: Tidak dalam kumpulan

Memfilter berdasarkan tag. Kunci dan nilai tag harus di-Base64 encode dengan format URL-safe.

  • OSSTagging.Zm9v == YWJj: Kunci tag adalah 'foo' dan nilainya adalah 'abc'.

  • !OSSTagging.Zm9v: Kunci tag 'foo' tidak ada.

  • OSSTagging.Zm9v: Kunci tag 'foo' ada.

    Catatan

    Untuk memeriksa keberadaan kunci, cukup tentukan kuncinya saja. Kata kunci exists tidak diperlukan.

  • OSSTagging.Zm9v in (YWJj, ZWZn): Kunci tag adalah 'foo' dan nilainya adalah 'abc' atau 'efg'.

  • OSSTagging.Zm9v prefix (YWEvYmIv, YWEvY2Mv): Kunci tag adalah 'foo' dan nilainya memiliki awalan 'aa/bb/' atau 'aa/cc/'.