建立資料集後,您可以為儲存在Object Storage Service、相簿與網盤服務(PDS)等產品中的檔案建立中繼資料索引。通過建立中繼資料索引,您可以更有效地管理和檢索大量的媒體檔案。本文將介紹如何建立和管理中繼資料索引,以便於快速搜尋、篩選和管理您的媒體資源。
前提條件
已建立資料集。具體操作,請參見建立資料集。
概述
中繼資料索引是指對媒體檔案中的關鍵資訊進行結構化和索引化,以便有效地管理和檢索這些媒體檔案。這些中繼資料可以包括但不限於媒體檔案的標題、作者、關鍵詞、描述、建立日期、大小、格式、解析度等資訊。通過建立中繼資料索引,使用者可以方便地通過關鍵詞、屬性或其他標識快速地檢索、篩選和管理大量的媒體檔案,使媒體資源的利用更加高效和便捷。
操作步驟
您可以選擇自動為OSS Bucket中所有檔案建立中繼資料索引或者手動為OSS Bucket或PDS中的指定檔案建立中繼資料索引。
自動為OSS Bucket中所有檔案建立中繼資料索引
如果您需要自動為OSS Bucket中所有檔案建立中繼資料索引,請調用介面建立資料集和OSS Bucket的綁定關係或者通過Intelligent Media Management控制台在對應的資料集下新增資料來源進行綁定。綁定關聯建立後,Intelligent Media Management會先對OSS Bucket中已有的資料進行全量掃描,並抽取檔案中繼資料資訊進行索引。完成後,繼續對OSS中新增的檔案進行即時的增量追蹤掃描、抽取以及索引。
警告
重要:一旦綁定任務建立成功,將會對您對應OSS Bucket內的檔案進行存量或增量掃描,當您 Bucket 中的 Object 數量越多時,中繼資料掃描時產生的費用將越多,詳情請查看 IMM計費說明。如果您尚未確定其效果,或進行中測試,請選擇檔案數量較少的OSS Bucket,並謹慎選擇工作流程範本,以免給您帶來非預期費用。
調用介面建立資料集和OSS Bucket的綁定關係
新增資料來源
如下以在test-project專案下的test-dataset資料集,為test-bucket中的所有檔案建立中繼資料索引為例。
調用CreateBinding - 建立綁定任務介面為資料集和OSS Bucket建立綁定關係。
請求樣本
{
"ProjectName": "test-project",
"URI": "oss://test-bucket",
"DatasetName": "test-dataset"
}
返回樣本
{
"Binding": {
"Phase": "",
"ProjectName": "test-project",
"DatasetName": "test-dataset",
"State": "Ready",
"CreateTime": "2022-07-06T07:03:28.054762739+08:00",
"UpdateTime": "2022-07-06T07:03:28.054762739+08:00",
"URI": "oss://test-bucket"
},
"RequestId": "090D2AC5-8450-0AA8-A1B1-****"
}
完整範例程式碼(以Python SDK為例)
import os
from alibabacloud_imm20200930.client import Client as imm20200930Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_imm20200930 import models as imm_20200930_models
from alibabacloud_tea_util import models as util_models
from alibabacloud_tea_util.client import Client as UtilClient
class Sample:
def __init__(self):
pass
@staticmethod
def create_client(
access_key_id: str,
access_key_secret: str,
) -> imm20200930Client:
"""
使用AccessKey ID&AccessKey Secret初始化帳號Client。
@param access_key_id:
@param access_key_secret:
@return: Client
@throws Exception
"""
config = open_api_models.Config(
access_key_id=access_key_id,
access_key_secret=access_key_secret
)
config.endpoint = f'imm.cn-beijing.aliyuncs.com'
return imm20200930Client(config)
@staticmethod
def main() -> None:
imm_access_key_id = os.getenv("AccessKeyId")
imm_access_key_secret = os.getenv("AccessKeySecret")
client = Sample.create_client(imm_access_key_id, imm_access_key_secret)
create_binding_request = imm_20200930_models.CreateBindingRequest(
project_name='test-project',
dataset_name='test-dataset',
uri='oss://test-bucket'
)
runtime = util_models.RuntimeOptions()
try:
response = client.create_binding_with_options(create_binding_request, runtime)
print(response.body.to_map())
except Exception as error:
UtilClient.assert_as_string(error.message)
print(error)
if __name__ == '__main__':
Sample.main()
可選:調用GetBinding - 查詢繫結資訊介面查詢繫結運行狀態資訊。
在建立的專案中,找到已建立的資料集test-dataset。

點擊資料集test-dataset,選擇資料接入,然後點擊新增資料來源。

選擇需要綁定的儲存桶(Bucket),然後點擊確定。

說明
新增資料來源將首先產生與 Bucket 中存量檔案數量相當的中繼資料提取任務,然後持續監聽該資料來源的事件並產生中繼資料提取任務。任務運行會產生相應的費用,詳見計費概述。建議您使用資料規模較小的 Bucket 進行測試。
手動為OSS Bucket或PDS中指定檔案建立中繼資料索引
說明
選擇一個或多個儲存於 OSS Bucket 中的檔案,批量將其添加到資料集中。Intelligent Media Management(IMM)會非同步執行媒體集工作流程以對新增的檔案提取中繼資料並添加索引。媒體集工作流程會以任務的形式非同步運行,支援訊息通知。添加檔案時指定 MNS 主題資訊以接收任務執行結果,詳情請參考非同步通知訊息格式。
在建立的專案中,找到已建立的資料集test-dataset。

點擊資料集test-dataset,選擇資料接入,然後點擊大量新增。

添加檔案到資料集,然後點擊選擇檔案,請填寫需要返回的輕量訊息佇列(原MNS)訊息主題名稱,並將您需建立索引的檔案添加至資料集中。

