2017-08-17 127 views
1

返回null我使用的Java應用程序來執行聚集和我使用的依賴沃森發現新聞聚合的過濾器和時間片

<dependency> 
<groupId>com.ibm.watson.developer_cloud</groupId> 
<artifactId>java-sdk</artifactId> 
<version>3.8.0</version> 
</dependency> 

聚集是:

builder.filter("crawl_date>2017-08-11,crawl_date<2017-08-17"); 
builder.aggregation("filter(enriched_title.entities.type::Company).term(enriched_title.entities.text).timeslice(crawl_date,1day).term(enriched_text.sentiment.document.label)"); 
    QueryResponse response = discovery.query(builder.build()).execute(); 

但響應即將到來爲空。如果在IBM Bluemix查詢構建器中放置了相同的代碼,它將提供正確的輸出。

這可能是什麼原因造成的?

回答

0

這個問題可能發生,因爲你缺少時區參數的timeslice內:

根據IBM沃森發現文檔時間片是使用日期創建,細分專業化直方圖。有效的日期間隔值是分鐘,小時,星期,星期,月份和年份。語法是timeslice(<field>,<interval>,<time_zone>)。 要使用時間片,文檔中的時間字段必須是日期數據類型和ISO 8601格式。除非滿足這兩個要求,否則時間片參數無法正確工作...

請參閱官方參考,使用聚合here

0

其實,這是3.8.0版本的沃森 - 開發者 - 雲/ Java的SDK的限制 - 它目前並不支持所有的API支持聚合類型。版本3.8.0僅支持「term」,「histogram」和計算(「average」,「min」,「max」,「sum」)。

您可以在https://github.com/watson-developer-cloud/java-sdk/issues?q=is%3Aopen+is%3Aissue+label%3Adiscovery

+0

我可以知道哪個版本支持過濾器和時間片 –

+0

應該支持他們的是最新版本的https://github.com看到的所有與沃森發現服務的突出問題的列表/watson-developer-cloud/java-sdk/releases/tag/java-sdk-4.0.0 –