Azure Data Manager for Agriculture で天気予報データを取り込む
天気は農業において誰でも利用できる可能性が高いサービスです。 Azure Data Manager for Agriculture は顧客に、顧客が選択した気象プロバイダーと連携する機能を提供します。
Azure Data Manager for Agriculture では、拡張機能ベースで、かつプロバイダー非依存のアプローチを使用し、現在および予測の気象データを提供します。 気象拡張機能を記述する手順に従って、選択したプロバイダーと連携することができます。
設計の概要
Azure Data Manager for Agriculture はプロバイダー非依存のアプローチで気象データを提供するため、ユーザーはプロバイダーの API に精通する必要がありません。 代わりに、プロバイダーに関係なく、同じ Azure Data Manager for Agriculture API を使用することができます。
プロバイダー非依存の API の動作に関する注意事項を次に示します。
- 1 回の呼び出しで最大 50 か所の気象データを要求することができます。
- 予測のデータは 15 分以内のものです。 現状のデータは 10 分以内のものです。
- ある場所に対して最初の呼び出しが行われると、データは定義された有効期間 (TTL) キャッシュされます。
次のセクションでは気象データをフェッチし、それを Azure Data Manager for Agriculture に取り込むコマンドを示します。
手順 1: 気象拡張機能をインストールする
この拡張機能をインストールするには、Azure Resource Manager ARMClient ツールを使用して、次のコマンドを実行します。
山かっこ (<>
) 内のすべての値を、ご利用のそれぞれの環境の値に置き換えてください。 現在サポートされている拡張機能 ID は IBM.TWC
です。
armclient PUT /subscriptions/<subscriptionid>/resourceGroups/<resource-group-name>/providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-resource-name>/extensions/<extensionid>?api-version=2020-05-12-preview '{}'
このインストール コマンドの出力例を次に示します。
{
"id": "/subscriptions/<subscriptionid>/resourceGroups/<resource-group-name>/providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-resource-name>/extensions/<extensionid>",
"type": "Microsoft.AgFoodPlatform/farmBeats/extensions",
"systemData": {
"createdBy": "testuser@abc.com",
"createdByType": "User",`
"createdAt": "2021-03-17T12:36:51Z",
"lastModifiedBy": "testuser@abc.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2021-03-17T12:36:51Z"
},
"properties": {
"category": "Weather",
"installedExtensionVersion": "1.0",
"extensionAuthLink": "https://www.<provider.com/integration/",
"extensionApiDocsLink": "https://docs.<provider>.com/documentation/Weather_Data/Historical_and_Climatological_Weather/latest#_daily_historical_ag_weather_v1_0"
},
"eTag": "92003c91-0000-0700-0000-804752e00000",
"name": "<provider>"
}
拡張機能のインストールが完了したら、気象データを取り込むことができます。
手順 2: 気象データを取得する
API にアクセスするために必要な資格情報を取得したら、Weather Data API を呼び出して気象データをフェッチする必要があります。