本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 API 擷取資料 AWS IoT SiteWise
您可以使用 AWS IoT SiteWise API 將時間戳記的產業資料傳送至資產的屬性和測量屬性。該 API 接受包含 timestamp-quality-value(TQV)結構的有效負載。
使用此 BatchPutAssetPropertyValue 操作上傳您的資料。透過此操作,您可以一次上傳多個資料項目,以便從多個裝置收集資料,並透過單一要求傳送所有資料。
重要
該BatchPutAssetPropertyValue操作受以下配額限制:
如需這些配額的詳細資訊,請參閱 AWS IoT SiteWise API 參考BatchPutAssetPropertyValue中的。
若要識別資產性質,您可以指定下列其中一項:
-
您要傳送
propertyId
資料的目標資產屬性的assetId
和。 -
的
propertyAlias
,它是一個數據流別名(例如,/company/windfarm/3/turbine/7/temperature
)。若要使用這個選項,您必須先設定您的資產屬性別名。若要了解如何設定屬性別名,請參閱將工業資料串流對應到資產屬性。
以下範例示範如何從儲存在 JSON 檔案的承載中,設定風力渦輪機的溫度和每分鐘旋轉 (RPM) 讀數。
aws iotsitewise batch-put-asset-property-value --cli-input-json file://batch-put-payload.json
batch-put-payload.json
中的範例裝載包含以下內容。
{ "entries": [ { "entryId": "
unique entry ID
", "propertyAlias": "/company/windfarm/3/turbine/7/temperature", "propertyValues": [ { "value": { "integerValue": 38 }, "timestamp": { "timeInSeconds": 1575691200 } } ] }, { "entryId": "unique entry ID
", "propertyAlias": "/company/windfarm/3/turbine/7/rpm", "propertyValues": [ { "value": { "doubleValue": 15.09 }, "timestamp": { "timeInSeconds": 1575691200 }, "quality": "GOOD" } ] } ] }
承載中的每個項目都包含 entryId
,您可以將其定義為任何獨特的字串。如果有任何請求項目失敗,每個錯誤都會包含對應請求的 entryId
,這樣您就可以知道要重試哪些請求。
的清單中的每個結構都propertyValues
是一個 timestamp-quality-value (TQV) 結構,其中包含value
timestamp
、a 和選擇性的。quality
-
value
— 包含下列其中一個欄位的結構,視所設定的屬性類型而定:-
booleanValue
-
doubleValue
-
integerValue
-
stringValue
-
-
timestamp
— 包含目前 Unix 紀元時間 (以秒為單位) 的結構。timeInSeconds
如果您有臨時精確的數據,也可以在timestamp
結構中設置密offsetInNanos
鑰。 AWS IoT SiteWise 拒絕任何時間戳記早於過去 7 天或 future 10 分鐘以上的資料點。 -
quality
— (選用) 下列其中一個品質字串:-
GOOD
— (預設) 資料不會受到任何問題的影響。 -
BAD
— 數據受到諸如傳感器故障等問題的影響。 -
UNCERTAIN
— 數據受到傳感器不准確等問題的影響。
如需有關如何在計算中 AWS IoT SiteWise 處理資料品質的詳細資訊,請參閱公式運算式中的資料品質。
-