設置對象 IDs - AWS IoT SiteWise

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設置對象 IDs

AWS IoT SiteWise 定義各種類型的永久性物件,例如資產、資產模型、屬性和階層。所有此類物件都具有唯一識別元,您可以使用這些識別元來擷取、更新和刪除它們。

AWS IoT SiteWise 為客戶建立 ID 提供不同的選項。 AWS IoT SiteWise 依預設,會在物件建立時為您產生一個。使用者也可以提供自IDs己的物件。

使用物件 UUIDs

中的每個持久性對象都 AWS IoT SiteWise 有UUID一個標識它。例如,資產模型具有資產模型 ID,資產具有資產 ID,依此類推。此 ID 會在您建立物件時指派,而且在物件的生命週期內保持不變。

當您建立新物件時,依預設會為您 AWS IoT SiteWise 產生唯一的 ID。您也可以在建立時以UUID格式提供自己的 ID。

注意

UUIDs必須在建立 AWS 區域內以及相同物件類型的全域唯一性。當您 AWS IoT SiteWise 自動產生 ID 時,它永遠是唯一的。如果您選擇自己的 ID,請確保它是唯一的。

例如,如果您透過呼叫建立新的資產模型 CreateAssetModel,您可以在要求的選用assetModelId欄位UUID中提供您自己的資產模型。

相比之下,如果您assetModelId從請求中省略,則 AWS IoT SiteWise 會UUID為新的資產模型生成一個。

使用外部 IDs

若要以某種格式定義您自己的 IDUUID,您可以指派外部 ID。例如,如果您重複使用您在不是系統中使用的 ID AWS,或者更易於閱讀,則可以執行此操作。外部IDs有一個更靈活的格式。您可以使用它們來參照 AWS IoT SiteWise API作業中的物件,否則您將使用UUID。

就像UUIDs,每個外部 ID 在其上下文中必須是唯一的。例如,您不能有兩個具有相同外部 ID 的資產模型。此外,就像UUIDs,一個對象在其生命週期中只能有一個外部 ID,這是不能更改的。

外部IDs和之間的差異 UUIDs

外部IDs與以下幾UUIDs個方面有所不同:

  • 每個對象都有一個UUID,但外部IDs是可選的。

  • AWS IoT SiteWise 永遠不會產生外部IDs。你自己提供這些。

  • 如果物件還沒有,您可以隨時指定外部 ID。

外部格式 IDs

有效的外部 ID 具有以下屬性:

  • 長度介於 2 到 128 個字元之間。

  • 第一個和最後一個字符必須是字母數字(A-Z,a-z,0-9)。

  • 除了第一個和最後一個字元必須是英數字元,否則必須是下列其中一個字元:_-.:

例如,外部 ID 必須符合下列規則運算式:

[a-zA-Z0-9][a-zA-Z0-9_\-.:]*[a-zA-Z0-9]+

使用外部參考物件 IDs

在許多地方,你可以使用它來引用一個對象UUID,你可以改用它的外部 ID,如果它有一個。若要這麼做,請將外部 ID 附加至字串externalId:

例如,假設您有 UUID (資產模型 ID) 為的資產模型a1b2c3d4-5678-90ab-cdef-11111EXAMPLE,也有外部 ID myExternalId。致電獲DescribeAssetModel取有關它的詳細信息。您可以使用下列其中一項作為值assetModelId

  • 使用資產模型 ID (UUID) 本身:a1b2c3d4-5678-90ab-cdef-11111EXAMPLE

  • 使用外部識別碼:externalId:myExternalId

aws iotsitewise describe-asset-model --asset-model-id a1b2c3d4-5678-90ab-cdef-11111EXAMPLE aws iotsitewise describe-asset-model --asset-model-id externalId:myExternalId
注意

externalId:綴本身不是外部 ID 的一部分。只有在提供外部 ID 給接受UUIDs或外部API作業的外部 ID 時,才需要提供前置詞IDs。例如,當您查詢或更新現有物件時,請提供前置詞。

當您定義物件的外部 ID (例如建立資產模型時) 時,請勿包含前置字元。

您可以使用IDs外部來代替UUIDs中的許多API操作 AWS IoT SiteWise,但不是全部。例如 GetAssetPropertyValue必須使用UUIDs;它不支援外部 ID 使用。

若要判斷特定API作業是否支援此用法,請參閱API參考資料