在亞馬遜雲搜尋中從索引欄位擷取資料 - Amazon CloudSearch

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在亞馬遜雲搜尋中從索引欄位擷取資料

預設情況下,搜尋結果將包含所有啟用傳回的欄位。如要傳回一部分啟用傳回的欄位或傳回相符文件的運算式值,您可以指定 return 參數。若只要傳回相符文件的文件 ID,請指定 return=_no_fields。若要擷取對每份文件算出的相關性分數,請指定 return=_score。您可將多個傳回欄位指定成以逗號分隔的清單。例如,return=title,_score 只會傳回片名和每份文件的相關性分數。

唯有設定為啟用傳回的欄位才可納入搜尋結果。欄位啟用傳回將導致您的索引大小增加,以致可能會增加您運行網域的成本。您應只有在使用其他方式擷取資料不易或成本昂貴時才對欄位啟用傳回以將文件資料存放於搜尋索引。由於文件更新套用至整個網域需要一些時間,像定價資訊之類的重要資料應使用傳回的文件 ID 從外部來源擷取而不是從索引傳回。

例如,若要將 title 和相關性分數 _score 納入搜尋結果,則指定以下內容:

search?q=star -wars&return=title,_score&size=3

指定的欄位在搜尋結果中隨附於各個命中項目:

{ "status" : { "rid" : "y9Dzhs8oEwqMHnk=", "time-ms" : 2 }, "hits" : { "found" : 76, "start" : 0, "hit" : [ { "id" : "tt1411664", "fields" : { "title" : "Bucky Larson: Born to Be a Star", "_score" : "9.231539" } }, { "id" : "tt1911658", "fields" : { "title" : "The Penguins of Madagascar", "_score" : "7.1051397" } }, { "id" : "tt0120601", "fields" : { "title" : "Being John Malkovich", "_score" : "6.206055" } } ] } }