本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
更新资产和模型
您可以在 Amazon IoT SiteWise 中更新资产和资产模型以修改其名称和定义。以下更新操作是异步的,需要时间来通过 Amazon IoT SiteWise 传播。在进行其他更改之前,请检查资产或资产模型的状态。您必须等待更改传播之后才能继续使用更新的资产或模型。
更新资产
您可以使用 Amazon IoT SiteWise 控制台或 API 更新资产的名称。
当您更新资产时,该资产的状态UPDATING
一直保持在更改传播之前。有关更多信息,请参阅资产和模型状态:
更新资产(控制台)
您可以使用 Amazon IoT SiteWise 控制台更新资产详细信息。
更新资产(控制台)
更新资产 (CLI)
您可以使用 Amazon CLI 更新资产的名称。
使用UpdateAsset操作更新资产。指定以下参数:
-
assetId
— 资产的 ID。 -
assetName
— 资产的新名称。
更新资产的名称 (CLI)
-
运行以下命令以更新资产的名称。将
asset-id
替换为资产的 ID,将asset-name
替换为资产的新名称。aws iotsitewise update-asset \ --asset-id
asset-id
\ --asset-nameasset-name
更新资产模型
您可以使用 Amazon IoT SiteWise 控制台或 API 更新资产模型。
您无法更改现有属性的类型或数据类型。您也无法更改现有指标的窗口。
如果您从资产模型中移除某个属性,则Amazon IoT SiteWise会删除该属性的所有先前数据。如果您从资产模型中删除层次结构定义,Amazon IoT SiteWise 将取消关联该层次结构中的所有资产。
更新资产模型时,基于该模型的每个资产都会反映您对基础模型所做的任何更改。在更改传播之前,每个资产都具有 UPDATING
状态。您必须等待这些资产恢复到 ACTIVE
状态,然后才能与它们进行交互。在此期间,更新的资产模型的状态将为 PROPAGATING
。有关更多信息,请参阅资产和模型状态:
更新资产模型(控制台)
您可以使用 Amazon IoT SiteWise 控制台更新资产模型。
更新资产模型(控制台)
-
在导航窗格中,选择 Models (模型)。
-
选择要更新的资产模型。
-
选择 Edit(编辑)。
-
在 Edit model (编辑模型) 页面上,执行以下任何操作:
-
在 Model details (模型详细信息) 中,更改模型的 Name (名称)。
-
更改任何 Attribute definitions (属性定义)。您无法更改现有属性的 Data type (数据类型)。有关更多信息,请参阅定义静态数据(属性):
-
更改任何 Measurement definitions (测量值定义)。您无法更改现有测量值的 Data type (数据类型)。有关更多信息,请参阅定义来自设备(测量)的数据流:
-
更改任何 Transform definitions (转换定义)。有关更多信息,请参阅转换数据(转换):
-
更改任何 Metric definitions (指标定义)。您无法更改现有指标的 Time interval (时间间隔)。有关更多信息,请参阅聚合来自属性和其他资产的数据(指标):
-
更改任何 Hierarchy definitions (层次结构定义)。您无法更改现有层次结构的 Hierarchy model (层次结构模型)。有关更多信息,请参阅定义资产模型(层次结构)之间的关系。
-
-
选择 Save(保存)。
更新资产模型 (CLI)
您可以使用 Amazon CLI 更新资产模型。
使用该UpdateAssetModel操作更新资产模型的名称、描述、属性和层次结构。指定以下参数:
-
assetModelId
— 资产模型的 ID。
指定负载中更新的资产模型。要了解资产模型的预期格式,请参阅创建资产模型。
该UpdateAssetModel操作使用您在负载中提供的模型覆盖现有模型。为避免删除资产模型的属性或层次结构,您必须在更新的资产模型负载中包含其 ID 和定义。要了解如何查询模型的现有结构,请参阅DescribeAssetModel操作。
更新资产模型 (CLI)
-
运行以下命令以检索现有资产模型定义。
asset-model-id
替换为要更新的资产的资产的资产的资产的资产的资产的资产的资产的资产aws iotsitewise describe-asset-model --asset-model-id
asset-model-id
此操作将返回包含资产模型详细信息的响应。该响应具有以下结构。
{ "assetModelId": "
String
", "assetModelArn": "String
", "assetModelName": "String
", "assetModelDescription": "String
", "assetModelProperties":Array of AssetModelProperty
, "assetModelHierarchies":Array of AssetModelHierarchyDefinition
, "assetModelCompositeModels":Array of AssetModelCompositeModel
, "assetModelCreationDate": "String
", "assetModelLastUpdateDate": "String
", "assetModelStatus": { "state": "String
", "error": { "code": "String
", "message": "String
" } } }有关更多信息,请参阅DescribeAssetModel操作。
-
创建一个名为
update-asset-model.json
的文件,并将上一命令的响应复制到该文件中。 -
从
update-asset-model.json
中的 JSON 对象中删除以下键/值对:-
assetModelId
-
assetModelArn
-
assetModelCreationDate
-
assetModelLastUpdateDate
-
assetModelStatus
该UpdateAssetModel操作需要具有以下结构的有效载荷。
{ "assetModelName": "
String
", "assetModelDescription": "String
", "assetModelProperties":Array of AssetModelProperty
, "assetModelHierarchies":Array of AssetModelHierarchyDefinition
, "assetModelCompositeModels":Array of AssetModelCompositeModel
} -
-
在
update-asset-model.json
中,执行以下任何操作:-
更改资产模型的名称 (
assetModelName
)。 -
更改、添加或删除资产模型的描述 (
assetModelDescription
)。 -
更改、添加或删除资产模型的任何属性 (
assetModelProperties
)。您无法更改现有属性的dataType
或现有指标的window
。有关更多信息,请参阅定义数据属性: -
更改、添加或删除资产模型的任何层次结构 (
assetModelHierarchies
)。您无法更改现有层次结构的childAssetModelId
。有关更多信息,请参阅定义资产模型(层次结构)之间的关系:
-
-
运行以下命令,使用存储在
update-asset-model.json
中的定义更新资产模型。asset-model-id
替换资产的资产的资产的资产的资产的资产的资产的资产的资产aws iotsitewise update-asset-model \ --asset-model-id
asset-model-id
\ --cli-input-json file://model-payload.json