すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:DoMetaQuery

最終更新日:Oct 17, 2024

特定の条件を満たすオブジェクトを照会し、特定のフィールドとソート方法に基づいてオブジェクトに関する情報を一覧表示します。 ネストされたクエリを使用して複雑なクエリを実行し、集計操作を実行して異なるフィールドの値を収集および分析することもできます。

使用上の注意

特定の条件を満たすオブジェクトをクエリするには、oss:DoMetaQuery権限が必要です。 詳細については、「RAMユーザーへのカスタムポリシーのアタッチ」をご参照ください。

リクエスト構文

MetaSearch

POST /?metaQuery&comp=query&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>
  <NextToken></NextToken>
  <MaxResults>5</MaxResults>
  <Query>{"Field": "Size","Value": "1048576","Operation": "gt"}</Query>
  <Sort>Size</Sort>
  <Order>asc</Order>
  <Aggregations>
    <Aggregation>
      <Field>Size</Field>
      <Operation>sum</Operation>
    </Aggregation>
    <Aggregation>
      <Field>Size</Field>
      <Operation>max</Operation>
    </Aggregation>
  </Aggregations>
</MetaQuery>

AISearch

POST /?metaQuery&comp=query&mode=semantic HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue 
<?xml version="1.0" encoding="UTF-8"?>
<MetaQuery>
  <MaxResults>99</MaxResults>
  <Query>Overlook the snow-covered forest</Query>
  <MediaTypes>
    <MediaType>image</MediaType>
  </MediaTypes>  
  <SimpleQuery>{"Operation":"gt", "Field": "Size", "Value": "30"}</SimpleQuery>
</MetaQuery>

リクエストヘッダー

DescribeRegionsリクエストのすべてのヘッダーは、共通のリクエストヘッダーです。 詳細については、「共通リクエストヘッダー」をご参照ください。

リクエスト要素

MetaSearch

要素

タイプ

必須

説明

mode

String

必須

basic

MetaSearchを使用してオブジェクトを照会することを指定します。

メタクエリ

Container

必須

非該当

クエリ条件を格納するコンテナー。

子ノード: NextToken、MaxResults、Query、Sort、Order、およびAggregations

NextToken

String

任意

MTIzNDU2Nzg6aW1tdGVzdDpleGFtcGxlYnVja2V0OmRhdGFzZXQwMDE6b3NzOi8vZXhhbXBsZWJ1Y2tldC9zYW1wbGVvYmplY3QxLmpw ****

オブジェクトの総数がMaxResultsの値を超えたときに次のクエリに使用されるトークン。

オブジェクト情報は、NextTokenの値からアルファベット順に返されます。

この操作を初めて呼び出すときは、この要素をnullに設定します。

親ノード: MetaQuery

MaxResults

整数

選択可能

5

返されるオブジェクトの最大数。 有効値: 0~100。

このパラメーターが設定されていないか、0に設定されている場合、最大100個のオブジェクトが返されます。

親ノード: MetaQuery

クエリ

String

必須

{"フィールド": "サイズ","値": "1048576","操作": "gt"}

クエリ条件。 クエリ条件には、次の要素が含まれます。

  • 操作: オペレータ。 有効値: eq (equal to) 、gt (greater than) 、gte (greater than or equal to) 、lt (less than) 、lte (less than or equal to) 、match (ファジークエリ) 、prefix (prefix query) 、および (and) 、または (or) 、およびnot (NOT) 。

  • フィールド: フィールド。 サポートされているフィールドとそのフィールドでサポートされている演算子の詳細については、「付録: MetaSearchでサポートされているフィールドと演算子」をご参照ください。

  • 値: フィールドの値。

  • SubQueries: サブクエリ条件。 この要素に含まれるオプションは、単純なクエリのオプションと同じです。 OperationがAND、OR、またはNOTに設定されている場合にのみ、サブクエリ条件を指定する必要があります。

詳細は、「」をご参照ください。

親ノード: MetaQuery

ソート

String

任意

サイズ

クエリ結果をソートするフィールドです。 詳細については、「付録: MetaSearchでサポートされているフィールドと演算子」をご参照ください。

親ノード: MetaQuery

Order

String

任意

asc

クエリ結果の並べ替えに使用するメソッド。 有効な値:

  • asc: 昇順

  • desc (デフォルト): descending

親ノード: MetaQuery

集約

Container

選択可能

非該当

集計操作に関する情報を格納するコンテナー。

子ノード: Aggregation

親ノード: MetaQuery

集約

Container

選択可能

非該当

単一の集計操作に関する情報を格納するコンテナー。

子ノード: フィールドと操作

親ノード: 集計

フィールド

String

任意

サイズ

フィールドの名前を設定します。 サポートされているフィールドとそのフィールドでサポートされている演算子の詳細については、「付録: MetaSearchでサポートされているフィールドと演算子」をご参照ください。

親ノード: Aggregation

操作

String

任意

sum

集計操作の演算子。 有効な値:

  • min

  • max

  • 平均

  • sum

  • 集計

  • distinct

  • group

親ノード: Aggregation

AISearch

要素

タイプ

必須

説明

mode

String

必須

セマンティック

AISearchを使用してオブジェクトを照会することを指定します。

メタクエリ

Container

必須

非該当

クエリ条件を格納するコンテナー。

子ノード: MaxResults、Query、MediaTypes、SimpleQuery

MaxResults

整数

選択可能

5

返されるオブジェクトの最大数。 有効値: 0~100。

このパラメーターが設定されていないか、0に設定されている場合、最大100個のオブジェクトが返されます。

親ノード: MetaQuery

クエリ

String

必須

雪に覆われた森を見下ろす

オブジェクトのクエリに使用するセマンティックコンテンツ。

親ノード: MetaQuery

MediaTypes

Container

必須

非該当

マルチメディアメタデータ条件。

親ノード: MetaQuery

MediaType

String

必須

イメージ

クエリするマルチメディアのタイプ。 有効な値:

  • イメージ

  • video

  • audio

  • ドキュメント

親ノード: MediaTypes

SimpleQuery

String

任意

{"Operation": "gt", "Field": "Size", "Value": "30"}

クエリ条件。 クエリ条件には、次の要素が含まれます。

  • 操作: オペレータ。 有効値: eq (equal to) 、gt (greater than) 、gte (greater than or equal to) 、lt (less than) 、lte (less than or equal to) 、match (ファジークエリ) 、prefix (prefix query) 、および (and) 、または (or) 、およびnot (NOT) 。

  • 値: フィールドの値。

  • SubQueries: サブクエリ条件。 この要素に含まれるオプションは、単純なクエリのオプションと同じです。 OperationがAND、OR、またはNOTに設定されている場合にのみ、サブクエリ条件を指定する必要があります。

親ノード: MetaQuery

レスポンスヘッダー

DescribeRegions要求に対する応答のすべてのヘッダーは、共通の応答ヘッダーです。 詳細については、「共通レスポンスヘッダー」をご参照ください。

レスポンス要素

MetaSearch

要素

タイプ

説明

メタクエリ

Container

非該当

クエリ結果が格納されるコンテナー。

子ノード: NextToken、Files、およびAggregions

NextToken

String

MTIzNDU2Nzg6aW1tdGVzdDpleGFtcGxlYnVja2V0OmRhdGFzZXQwMDE6b3NzOi8vZXhhbXBsZWJ1Y2tldC9zYW1wbGVvYmplY3QxLmpw ****

オブジェクトの総数がMaxResultsの値を超えたときに次のクエリに使用されるトークン。

NextTokenの値は、次のリクエストで未返さの結果を返すために使用されます。

すべてのオブジェクトが返されない場合にのみ、この要素の値が返されます。

親ノード: MetaQuery

ファイル

Container

非該当

オブジェクトに関する情報が格納されているコンテナ。

子ノード: ファイル

親ノード: MetaQuery

ファイル

Container

非該当

単一のオブジェクトに関する情報が格納されるコンテナ。

子ノード: Filename、Size、FileModifiedTime、OSSObjectType、OSSStorageClass、ObjectACL、ETag、OSSTaggingCount、OSSTagging、OSSUserMeta、OSSCRC64、およびServerSideEncryption

親ノード: ファイル

ファイル名

String

exampleobject.txt

オブジェクトのフルパス。The full path of the object.

親ノード: ファイル

サイズ

Integer

120

オブジェクトのサイズ。 単位はバイトです。

親ノード: ファイル

FileModifiedTime

String

2021-06-29T15:04:05.000000000Z07:00

オブジェクトが最後に変更された時刻。 値はRFC 3339の標準に従います。

親ノード: ファイル

OSSObjectType

String

正常

オブジェクトのタイプです。 有効な値:

  • Normal: オブジェクトはPutObject操作を呼び出してアップロードされたか、CreateDirectory操作を呼び出して作成されました。

  • Appendable: オブジェクトはAppendObject操作を呼び出してアップロードされました。

  • Multipart: オブジェクトはMultipartUpload操作を呼び出してアップロードされました。

  • Symlink: シンボリックリンクは、PutSymlink操作を呼び出すことによって作成されました。

親ノード: ファイル

OSSStorageClass

String

標準

オブジェクトのストレージクラス。 有効な値:

  • Standard: Standardストレージクラスは、頻繁にアクセスされるデータに対して、信頼性が高く、可用性が高く、パフォーマンスの高いオブジェクトストレージを提供します。

  • IA: 低頻度アクセス (IA) ストレージクラスは、月に1回または2回アクセスされるデータなど、アクセス頻度の低いデータに適しています。

  • アーカイブ: アーカイブストレージクラスは、長期間 (6か月以上) 保存する必要があり、ほとんどアクセスされないデータに適しています。 アーカイブオブジェクトの復元に必要な時間は約1分です。

  • ColdArchive: Cold Archiveストレージクラスは、長期間保存する必要があるコールドデータに適しています。

親ノード: ファイル

ObjectACL

String

default

オブジェクトのアクセス制御リスト (ACL) 。 有効な値:

  • default: オブジェクトのACLは、オブジェクトが格納されているバケットのACLと同じです。

  • private: オブジェクトのACLがprivateです。 オブジェクトの読み取りおよび書き込み権限を持つのは、オブジェクトの所有者および許可されたユーザーのみです。

  • public-read: オブジェクトのACLはpublic-readです。 オブジェクトの読み取りおよび書き込み権限を持つのは、オブジェクトの所有者および許可されたユーザーのみです。 他のユーザーには、オブジェクトに対する読み取り権限のみがあります。 オブジェクトのACLをこの値に設定する場合は注意してください。

  • public-read-write: オブジェクトのACLはpublic-read-writeです。 すべてのユーザーは、オブジェクトに対する読み取りおよび書き込み権限を持っています。 オブジェクトのACLをこの値に設定する場合は注意してください。

親ノード: ファイル

ETag

String

"fba9dede5f27731c9771645a3986 ****"

オブジェクトの作成時に生成されるETag。 ETagは、オブジェクトのコンテンツを識別するために使用されます。

  • PutObject操作を呼び出してオブジェクトが作成された場合、オブジェクトのETag値はオブジェクトコンテンツのMD5ハッシュになります。

  • オブジェクトが別のメソッドを使用して作成された場合、ETag値はオブジェクトコンテンツのMD5ハッシュではなく、特定のルールに基づいて計算された一意の値になります。

説明

オブジェクトのETag値を使用して、オブジェクトの内容が変更されているかどうかを確認できます。 データの整合性を検証するために、オブジェクトのETag値の代わりにオブジェクトのMD5ハッシュを使用することを推奨します。

親ノード: ファイル

OSSTaggingCount

Integer

2

オブジェクトのタグの数。

親ノード: ファイル

OSSTagging

Container

非該当

オブジェクトタグに関する情報が格納されているコンテナ。

子ノード: タグ付け

親ノード: ファイル

タギング

Container

非該当

単一のオブジェクトタグに関する情報が格納されているコンテナ。

子ノード: キーと値

親ノード: OSSTagging

Key

String

owner

タグまたはユーザーメタデータのキー。

ユーザーメタデータの先頭にx-oss-meta- を付ける必要があります。

親ノード: タグ付けとUserMeta

String

John

タグまたはユーザーメタデータの値。

親ノード: タグ付けとUserMeta

OSSUserMeta

Container

非該当

ユーザーメタデータが格納されているコンテナ。

子ノード: UserMeta

親ノード: ファイル

UserMeta

Container

非該当

ユーザーメタデータが格納されるコンテナ。

子ノード: キーと値

親ノード: OSSUserMeta

OSSCRC64

String

4858A48BD1466884

オブジェクトのCRC-64値。 この値は、ECMA-182 標準に基づいて計算されます。

ServerSideEncryption

String

AES256

オブジェクトの作成時にOSSがオブジェクトの暗号化に使用するサーバー側暗号化アルゴリズム。 有効値は AES256 です。

親ノード: ファイル

ServerSideEncryptionCustomerAlgorithm

String

SM4

ローカルクライアントでオブジェクトを暗号化するために使用されるアルゴリズム。

親ノード: ファイル

集約

Container

非該当

集計操作に関する情報を格納するコンテナー。

子ノード: フィールド、操作、操作、値、およびグループ

親ノード: MetaQuery

フィールド

String

サイズ

フィールドの名前を設定します。

親ノード: 集計

操作

String

sum

集計操作の演算子。

親ノード: 集計

浮動小数点

200

集計操作の結果。

親ノード: 集計

Groups

Container

非該当

グループ化された集約。

子ノード: 値とカウント

親ノード: 集計

String

100

グループ化された集計の値。

親ノード: グループ

集計

Integer

5

グループ化された集計の結果の数。

親ノード: グループ

AISearch

要素

タイプ

説明

メタクエリ

Container

非該当

クエリ結果が格納されるコンテナー。

子ノード: ファイル

ファイル

配列

非該当

オブジェクト情報のリスト。

子ノード: ファイル

親ノード: MetaQuery

ファイル

Container

非該当

単一のオブジェクトに関する情報。

親ノード: ファイル

URI

String

oss:// examplebucket/test-object.jpg

オブジェクトのフルパス。The full path of the object.

親ノード: ファイル

ファイル名

String

exampleobject.txt

オブジェクト名

親ノード: ファイル

サイズ

Integer

120

オブジェクトのサイズ。 単位はバイトです。

親ノード: ファイル

ObjectACL

String

default

オブジェクトのACL。 有効な値:

  • default: オブジェクトのACLは、オブジェクトが格納されているバケットのACLと同じです。

  • private: オブジェクトのACLがprivateです。 オブジェクトの読み取りおよび書き込み権限を持つのは、オブジェクトの所有者および許可されたユーザーのみです。

  • public-read: オブジェクトのACLはpublic-readです。 オブジェクトの読み取りおよび書き込み権限を持つのは、オブジェクトの所有者および許可されたユーザーのみです。 他のユーザーには、オブジェクトに対する読み取り権限のみがあります。 オブジェクトのACLをこの値に設定する場合は注意してください。

  • public-read-write: オブジェクトのACLはpublic-read-writeです。 すべてのユーザーは、オブジェクトに対する読み取りおよび書き込み権限を持っています。 オブジェクトのACLをこの値に設定する場合は注意してください。

親ノード: ファイル

FileModifiedTime

String

2021-06-29T15:04:05.000000000Z07:00

オブジェクトが最後に変更された時刻。 値はRFC 3339の標準に従います。

親ノード: ファイル

ServerSideEncryption

String

AES256

オブジェクトの作成時にOSSがオブジェクトの暗号化に使用するサーバー側暗号化アルゴリズム。 有効値は AES256 です。

親ノード: ファイル

ServerSideEncryptionCustomerAlgorithm

String

SM4

ローカルクライアントでオブジェクトを暗号化するために使用されるアルゴリズム。

親ノード: ファイル

ETag

String

"fba9dede5f27731c9771645a3986 ****"

オブジェクトの作成時に生成されるETag。 ETagは、オブジェクトのコンテンツを識別するために使用されます。

  • PutObject操作を呼び出してオブジェクトが作成された場合、オブジェクトのETag値はオブジェクトコンテンツのMD5ハッシュになります。

  • オブジェクトが別のメソッドを使用して作成された場合、ETag値はオブジェクトコンテンツのMD5ハッシュではなく、特定のルールに基づいて計算された一意の値になります。

説明

オブジェクトのETag値を使用して、オブジェクトの内容が変更されているかどうかを確認できます。 データの整合性を検証するために、オブジェクトのETag値の代わりにオブジェクトのMD5ハッシュを使用することを推奨します。

親ノード: ファイル

OSSCRC64

String

4858A48BD1466884

オブジェクトのCRC-64値。 この値は、ECMA-182 標準に基づいて計算されます。

親ノード: ファイル

生産時間

String

2021-06-29T14:50:13.011643661 + 08:00

画像またはビデオが撮影された時刻。

親ノード: ファイル

ContentType

String

画像 /jpeg

オブジェクトのMIME (Multipurpose Internet Mail Extensions) タイプ。

親ノード: ファイル

MediaType

String

イメージ

マルチメディアのタイプ。

親ノード: ファイル

LatLong

String

30.134390,120.074997

経度と緯度の情報。

親ノード: ファイル

タイトル

String

test

オブジェクトのタイトル。

親ノード: ファイル

OSSExpiration

String

2124-12-01T12:00:00.000Z

オブジェクトの有効期限。

親ノード: ファイル

AccessControlAllowOrigin

String

https://aliyundoc.com

クロスオリジンリクエストで許可されているオリジン。

親ノード: ファイル

AccessControlRequestMethod

String

PUT

許可されているクロスオリジン要求メソッド。

親ノード: ファイル

ServerSideDataEncryption

String

SM4

オブジェクトの暗号化に使用されるアルゴリズム。

親ノード: ファイル

ServerSideEncryptionKeyId

String

9468da86-3509-4f8d-a61e-6eab1eac ****

key Management Service (KMS) によって管理されるカスタマーマスターキー (CMK) のID。

親ノード: ファイル

CacheControl

String

no-cache

オブジェクトがダウンロードされたときに実行されるwebページのキャッシュ動作。

親ノード: ファイル

ContentDisposition

String

添付ファイル; filename =test.jpg

ダウンロードされたときのオブジェクトの名前。

親ノード: ファイル

ContentEncoding

String

UTF-8

オブジェクトがダウンロードされたときのオブジェクトのコンテンツエンコード形式。

親ノード: ファイル

ContentLanguage

String

zh-CN

オブジェクトコンテンツの言語。

親ノード: ファイル

ImageHeight

Integer

500

画像の高さ。 単位: ピクセル

親ノード: ファイル

ImageWidth

Integer

270

イメージの幅。 単位: ピクセル

親ノード: ファイル

VideoWidth

Integer

1080

ビデオ画像の幅。 単位: ピクセル

親ノード: ファイル

VideoHeight

Integer

1920

ビデオ画像の高さ。 単位: ピクセル

親ノード: ファイル

VideoStreams

配列

非該当

ビデオストリームのリスト。

親ノード: ファイル

VideoStream

Container

非該当

ビデオストリーム。

親ノード: VideoStreams

CodecName

String

h264

コーデックの略称。

親ノード: VideoStream

言語

String

en

ビデオストリームで使用される言語。 値はBCP47形式に従います。

親ノード: VideoStream

ビットレート

Integer

5407765

ビットレート。 単位:bit/s。

親ノード: VideoStream

フレームレート

String

25/1

ビデオストリームのフレームレート。

親ノード: VideoStream

StartTime

倍精度浮動小数点

0.000000

ビデオストリームの開始時刻。 単位は秒です。

親ノード: VideoStream

有効期間

倍精度浮動小数点

22.88

ビデオストリームの長さ。 単位は秒です。

親ノード: VideoStream

フレームカウント

Integer

572

ビデオフレームの数

親ノード: VideoStream

BitDepth

Integer

8

ビット深度。

親ノード: VideoStream

PixelFormat

String

yuv420p

ビデオストリームのピクセル形式。

親ノード: VideoStream

ColorSpace

String

bt709

カラースペース。

親ノード: VideoStream

Height

Integer

720

ビデオストリームの画像の高さ。 単位: ピクセル

親ノード: VideoStream

Integer

1280

ビデオストリームの画像幅。 単位: ピクセル。

親ノード: VideoStream

AudioStreams

配列

非該当

オーディオストリームのリスト。

親ノード: ファイル

AudioStream

Container

非該当

オーディオストリーム。

親ノード: AudioStreams

CodecName

String

aac

コーデックの略称。

親ノード: AudioStream

ビットレート

Integer

320087

ビットレート。 単位:bit/s。

親ノード: AudioStream

サンプルレート

Integer

48000

サンプリングレート。 単位: Hz

親ノード: AudioStream

StartTime

倍精度浮動小数点

0.0235

オーディオストリームの開始時間 (秒単位) 。

親ノード: AudioStream

有効期間

倍精度浮動小数点

3.690667

オーディオストリームの長さ (秒単位) 。

親ノード: AudioStream

Channels

Integer

2

サウンドチャンネルの数。

親ノード: AudioStream

言語

String

en

オーディオストリームで使用される言語。 値はBCP47形式に従います。

親ノード: AudioStream

字幕

配列

非該当

字幕ストリームのリスト。

親ノード: ファイル

字幕

Container

非該当

字幕ストリーム。

親ノード: 字幕

CodecName

String

mov_text

コーデックの略称。

親ノード: サブタイトル

言語

String

en

字幕の言語。 値はBCP47形式に従います。

親ノード: サブタイトル

StartTime

倍精度浮動小数点

0.000000

字幕ストリームの開始時間 (秒単位) 。

親ノード: サブタイトル

有効期間

倍精度浮動小数点

71.378

字幕ストリームの長さ (秒単位) 。

親ノード: サブタイトル

ビットレート

Integer

13091201

ビットレート。 単位:bit/s。

親ノード: ファイル

アーティスト

String

ジェーン

アーティスト。

親ノード: ファイル

AlbumArtist

String

ジェニー

歌手だ

親ノード: ファイル

Composer

String

ジェーン

作曲家。

親ノード: ファイル

出演者

String

ジェーン

プレイヤー。

親ノード: ファイル

アルバム

String

FirstAlbum

アルバム。

親ノード: ファイル

有効期間

倍精度浮動小数点

15.263000

ビデオの合計時間。 単位は秒です。

親ノード: ファイル

アドレス

配列

非該当

アドレス。

親ノード: ファイル

アドレス

Container

非該当

アドレス。

親ノード: アドレス

AddressLine

String

No.969, Wenyi West Road, Yuhang District, 杭州, 浙江, 中国

フルアドレス。

親ノード: アドレス

都市

String

杭州

市町村

親ノード: アドレス

地区

String

ユハン区

地区。

親ノード: アドレス

言語

String

zh-ハンス

アドレスの言語。 値はBCP47形式に従います。

親ノード: アドレス

Province

String

Zhejiang

都道府県

親ノード: アドレス

String

ウェニーウェストロード

通りだ

親ノード: アドレス

OSSObjectType

String

正常

オブジェクトのタイプです。

親ノード: ファイル

OSSStorageClass

String

標準

オブジェクトのストレージクラス。

親ノード: ファイル

OSSTaggingCount

Integer

2

オブジェクトのタグの数。

親ノード: ファイル

OSSTagging

配列

非該当

タグに関する情報。

子ノード: タグ付け

親ノード: ファイル

タギング

Container

非該当

単一のオブジェクトタグに関する情報が格納されているコンテナ。

子ノード: キーと値

親ノード: OSSTagging

Key

String

owner

タグのキー。

親ノード: タグ付け

String

John

タグの値。

親ノード: タグ付け

OSSUserMeta

配列

非該当

ユーザーメタデータに関する情報。

子ノード: UserMeta

親ノード: ファイル

UserMeta

Container

非該当

ユーザーメタデータが格納されるコンテナ。

子ノード: キーと値

親ノード: OSSUserMeta

Key

String

owner

ユーザーメタデータのキー。

親ノード: タグ付け

String

John

ユーザーメタデータの値。

親ノード: タグ付け

サンプルリクエスト

MetaSearch

POST /?metaQuery&comp=query&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>
  <NextToken></NextToken>
  <MaxResults>5</MaxResults>
  <Query>{"Field": "Size","Value": "1048576","Operation": "gt"}</Query>
  <Sort>Size</Sort>
  <Order>asc</Order>
  <Aggregations>
    <Aggregation>
      <Field>Size</Field>
      <Operation>sum</Operation>
    </Aggregation>
    <Aggregation>
      <Field>Size</Field>
      <Operation>max</Operation>
    </Aggregation>
  </Aggregations>
</MetaQuery>

AISearch

POST /?metaQuery&comp=query&mode=semantic HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: Date: Thu, 12 Sep 2024 13:08:38 GMT
Authorization: SignatureValue 
<?xml version="1.0" encoding="UTF-8"?>
<MetaQuery>
  <MaxResults>99</MaxResults>
  <Query>Overlook the snow-covered forest</Query> // This parameter is required.
  <MediaTypes>
    <MediaType>image</MediaType>
  </MediaTypes>
  // SimpleQuery is equivalent to the Query field in Simple mode. 
  <SimpleQuery>{"Operation":"gt", "Field": "Size", "Value": "30"}</SimpleQuery>
</MetaQuery>

サンプル応答

MetaSearch

HTTP/1.1 200 OK
x-oss-request-id: 5C1B138A109F4E405B2D****
Date: Mon, 26 Jul 2021 13:08:38 GMT
Content-Length: 118
Content-Type: application/xml
Connection: keep-alive
Server: AliyunOSS
<?xml version="1.0" encoding="UTF-8"?>
<MetaQuery>
  <NextToken>MTIzNDU2Nzg6aW1tdGVzdDpleGFtcGxlYnVja2V0OmRhdGFzZXQwMDE6b3NzOi8vZXhhbXBsZWJ1Y2tldC9zYW1wbGVvYmplY3QxLmpw****</NextToken>
  <Files>
    <File>
      <Filename>exampleobject.txt</Filename>
      <Size>120</Size>
      <FileModifiedTime>2021-06-29T15:04:05.000000000Z07:00</FileModifiedTime>
      <OSSObjectType>Normal</OSSObjectType>
      <OSSStorageClass>Standard</OSSStorageClass>
      <ObjectACL>default</ObjectACL>
      <ETag>"fba9dede5f27731c9771645a3986****"</ETag>
      <OSSCRC64>4858A48BD1466884</OSSCRC64>
      <OSSTaggingCount>2</OSSTaggingCount>
      <OSSTagging>
        <Tagging>
          <Key>owner</Key>
          <Value>John</Value>
        </Tagging>
        <Tagging>
          <Key>type</Key>
          <Value>document</Value>
        </Tagging>
      </OSSTagging>
      <OSSUserMeta>
        <UserMeta>
          <Key>x-oss-meta-location</Key>
          <Value>hangzhou</Value>
        </UserMeta>
      </OSSUserMeta>
    </File>
  </Files>
</MetaQuery>

AISearch

HTTP/1.1 200 OK
x-oss-request-id: 5C1B138A109F4E405B2D****
Date: Thu, 12 Sep 2024 13:08:38 GMT
Content-Length: 118
Content-Type: application/xml
Connection: keep-alive
Server: AliyunOSS
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<MetaQuery>
  <Files>
    <File>
      <URI>oss://examplebucket/test-object.jpg</URI>
      <Filename>sampleobject.jpg</Filename>
      <Size>1000</Size>
      <ObjectACL>default</ObjectACL>
      <FileModifiedTime>2021-06-29T14:50:14.011643661+08:00</FileModifiedTime>
      <ServerSideEncryption>AES256</ServerSideEncryption>
      <ServerSideEncryptionCustomerAlgorithm>SM4</ServerSideEncryptionCustomerAlgorithm>
      <ETag>\"1D9C280A7C4F67F7EF873E28449****\"</ETag>
      <OSSCRC64>559890638950338001</OSSCRC64>
      <ProduceTime>2021-06-29T14:50:15.011643661+08:00</ProduceTime>
      <ContentType>image/jpeg</ContentType>
      <MediaType>image</MediaType>
      <LatLong>30.134390,120.074997</LatLong>
      <Title>test</Title>
      <OSSExpiration>2024-12-01T12:00:00.000Z</OSSExpiration>
      <AccessControlAllowOrigin>https://aliyundoc.com</AccessControlAllowOrigin>
      <AccessControlRequestMethod>PUT</AccessControlRequestMethod>
      <ServerSideDataEncryption>SM4</ServerSideDataEncryption>
      <ServerSideEncryptionKeyId>9468da86-3509-4f8d-a61e-6eab1eac****</ServerSideEncryptionKeyId>
      <CacheControl>no-cache</CacheControl>
      <ContentDisposition>attachment; filename =test.jpg</ContentDisposition>
      <ContentEncoding>UTF-8</ContentEncoding>
      <ContentLanguage>zh-CN</ContentLanguage>
      // The following content may be returned if MediaType is set to image:
      <ImageHeight>500</ImageHeight>
      <ImageWidth>270</ImageWidth>
      // The following content may be returned if MediaType is set to video:
      <VideoWidth>1080</VideoWidth>
      <VideoHeight>1920</VideoHeight>
      <VideoStreams>
        <VideoStream>
          <CodecName>h264</CodecName>
          <Language>en</Language>
          <Bitrate>5407765</Bitrate>
          <FrameRate>25/1</FrameRate>
          <StartTime>0</StartTime>
          <Duration>22.88</Duration>
          <FrameCount>572</FrameCount>
          <BitDepth>8</BitDepth>
          <PixelFormat>yuv420p</PixelFormat>
          <ColorSpace>bt709</ColorSpace>
          <Height>720</Height>
          <Width>1280</Width>
        </VideoStream>
        <VideoStream>
          <CodecName>h264</CodecName>
          <Language>en</Language>
          <Bitrate>5407765</Bitrate>
          <FrameRate>25/1</FrameRate>
          <StartTime>0</StartTime>
          <Duration>22.88</Duration>
          <FrameCount>572</FrameCount>
          <BitDepth>8</BitDepth>
          <PixelFormat>yuv420p</PixelFormat>
          <ColorSpace>bt709</ColorSpace>
          <Height>720</Height>
          <Width>1280</Width>
        </VideoStream>
      </VideoStreams>
      // The following content may be returned if MediaType is set to audio/video:
      <AudioStreams>
        <AudioStream>
          <CodecName>aac</CodecName>
          <Bitrate>1048576</Bitrate>
          <SampleRate>48000</SampleRate>
          <StartTime>0.0235</StartTime>
          <Duration>3.690667</Duration>
          <Channels>2</Channels>
          <Language>en</Language>
        </AudioStream>
      </AudioStreams>
      // The following content may be returned if MediaType is set to video:
      <Subtitles>
        <Subtitle>
          <CodecName>mov_text</CodecName>
          <Language>en</Language>
          <StartTime>0</StartTime>
          <Duration>71.378</Duration>
        </Subtitle>
        <Subtitle>
          <CodecName>mov_text</CodecName>
          <Language>en</Language>
          <StartTime>72</StartTime>
          <Duration>71.378</Duration>
        </Subtitle>
      </Subtitles>
      <Bitrate>5407765</Bitrate>
      <Artist>Jane</Artist>
      <AlbumArtist>Jenny</AlbumArtist>
      <Composer>Jane</Composer>
      <Performer>Jane</Performer>
      <Album>FirstAlbum</Album>
      <Duration>71.378</Duration>

      <Addresses>
        <Address>
          <AddressLine>No. 969, Wenyi West Road, Yuhang District, Hangzhou City, Zhejiang Province, China</AddressLine>
          <City>Hangzhou</City>
          <Country>China</Country>
          <District>Yuhang</District>
          <Language>zh-Hans</Language>
          <Province>Zhejiang</Province>
          <Township>Wenyi West Road</Township>
        </Address>
        <Address>
          <AddressLine>No. 970, Wenyi West Road, Yuhang District, Hangzhou City, Zhejiang Province, China</AddressLine>
          <City>Hangzhou</City>
          <Country>China</Country>
          <District>Yuhang</District>
          <Language>zh-Hans2</Language>
          <Province>Zhejiang</Province>
          <Township>Wenyi West Road</Township>
        </Address>
      </Addresses>
      <OSSObjectType>Normal</OSSObjectType>
      <OSSStorageClass>Standard</OSSStorageClass>
      <OSSTaggingCount>2</OSSTaggingCount>
      <OSSTagging>
        <Tagging>
          <Key>key</Key>
          <Value>val</Value>
        </Tagging>
        <Tagging>
          <Key>key2</Key>
          <Value>val2</Value>
        </Tagging>
      </OSSTagging>
      <OSSUserMeta>
        <UserMeta>
          <Key>key</Key>
          <Value>val</Value>
        </UserMeta>
      </OSSUserMeta>
    </File>
  </Files>
</MetaQuery>

クエリの例

クエリはネストできます。 ネストされたクエリを使用して、複雑なクエリと完全一致を実行できます。 次のサンプルコードでは、ネストされたクエリの実行例を示します。

  • 名前がexampleobject.txtで、サイズが1,000バイト未満のオブジェクトをクエリする場合は、次の例に示すようにクエリを設定できます。

    
    {
      "SubQueries":[
        {
          "Field":"Filename",
          "Value": "exampleobject.txt",
          "Operation":"eq"
        },         
        {
          "Field":"Size",
          "Value":"1000",
          "Operation":"lt"
        }
      ],
      "Operation":"and"
    }
                
  • プレフィックスがexampledir/ で、type=documentまたはowner=Johnタグを含み、サイズが10 MBを超えるオブジェクトをクエリする場合は、次の例に示すようにクエリを設定できます。

    
    {
      "SubQueries": [
        {
          "Field": "Filename",
          "Value": "exampledir/",
          "Operation": "prefix"
        },
        {
          "Field": "Size",
          "Value": "1048576",
          "Operation": "gt"
        },
        {
          "SubQueries": [
            {
              "Field": "OSSTagging.type",
              "Value": "document",
              "Operation": "eq"
            },
            {
              "Field": "OSSTagging.owner",
              "Value": "John",
              "Operation": "eq"
            }
          ],
          "Operation": "or"
        }
      ],
      "Operation": "and"
    }
            
                

集計操作を実行して、指定した条件に基づいてさまざまなデータを収集および分析することもできます。 たとえば、クエリ条件を満たすすべてのファイルの合計、カウント、平均値、または最大値を計算できます。 クエリ条件を満たす画像のサイズ分布を計算することもできます。