Amazon Forecast Query Java Integration

问题描述 投票:1回答:1

我正在寻找Amazon Forecast API的JAVA示例,因此可以将其集成到我的JAVA应用程序中。

我进行了搜索,但没有找到任何解决方案,即使我向AWS团队提出了支持票,他们也无法提供我作为屏幕快照附加的内容。 enter image description here

文档适用于python,NodeJS和其他语言,但不适用于JAVA。

我已经很努力地与AWS Forecast Java SDK集成。

UPDATE

最后,我在下面的答案中发布了一些内容,但仍在寻找更好的选择。

java amazon-web-services aws-java-sdk amazon-forecast
1个回答
0
投票

经过几天的搜索文档或工作示例后,我得到了这个解决方案。我可以使用此代码获得预测,但仍在寻找一些更好的方法(如果可能)。

package com.mayur.awsforecastexample;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.forecastquery.AmazonForecastQueryClientBuilder;
import com.amazonaws.services.forecastquery.model.DataPoint;
import com.amazonaws.services.forecastquery.model.Forecast;
import com.amazonaws.services.forecastquery.model.QueryForecastRequest;
import com.amazonaws.services.forecastquery.model.QueryForecastResult;

public class ForecastTest {
    AmazonForecastQueryClientBuilder client = AmazonForecastQueryClientBuilder.standard();

    public QueryForecastResult queryForecast(QueryForecastRequest request) {

        client.setCredentials(new AWSStaticCredentialsProvider(new BasicAWSCredentials("ACCESS_KEY", "SECRET_KEY")));
        client.setRegion("REGION");

        return client.build().queryForecast(request);
    }

    public static void main(String ar[]) {
        Map<String, String> filters = new HashMap<String, String>();
        filters.put("item_id", "YOUR_ITEM_ID");

        QueryForecastRequest request = new QueryForecastRequest();
        request.setForecastArn("FORECAST_ARN");
        request.setFilters(filters);
        request.setStartDate(null);
        request.setEndDate(null);

        ForecastTest forecastTest = new ForecastTest();
        QueryForecastResult res = forecastTest.queryForecast(request);
        Forecast f = res.getForecast();

        Map<String, List<DataPoint>> predictions = f.getPredictions();

        for (Entry<String, List<DataPoint>> entry : predictions.entrySet())
            System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
    }
}

请检查working Example

© www.soinside.com 2019 - 2024. All rights reserved.