我試圖建立一個查詢,首先讓我得到一個跟隨用戶的追隨者列表,其次它應該採取該列表,然後檢查他們是否在線。Elasticsearch通過RESTful API進行查詢設計
我有兩個「索引」或端點/通道和/以下。
通道端點JSON對象看起來像這樣(縮寫份)
{ channel: {"username":"username1", ... , "online":"true" } }
以下端點對象看起來有點像這樣
{ following : {"username1":{"username2":"username2", "username3":"username3"} }
如果用完一個簡單的查詢/以下/ _search我找回像...
{
"_index": "following",
"_type": "following",
"_id": "_Liso_",
"_score": 1,
"_source": {
"Gabe": "Gabe",
"Gavin": "Gavin"
}
}
這個結果意味着加文是關注加貝。
我相信問題是我如何存儲數據。
在火力點我的數據是這樣的
following
|---Gabe
|----Gavin:Gavin
所以以下對象{用戶名}的鍵/值兒童的每個子對象:{用戶名}
現在我可以運行查詢單獨地獲得滿意的結果我需要。例如,如果我詢問ElasticSearch(ES)如果頻道「Gavin」是「在線」,我會根據它們是否在線獲取一個結果。和以下相同。然而,我似乎無法讓查詢先查看誰在跟蹤Gavin,然後查看他們是否在線並返回在線用戶。
@marcinn實際上有一些東西類似於REST風格的東西,例如https://www.elastic.co/guide/en/elasticsearch/reference/1.4/search.html 它使用curl -GET請求。如果我沒有記錯的關鍵詞「GET」是REST風格的 REST風格的定義使用的措辭,如GET,POST,PUT等 https://en.wikipedia.org/wiki/Representational_state_transfer 所以實際上它類似於RESTful。 – user1171911
@marcinn此外,它使用其他RESTful語言,例如PUT,在這個例子中你可以更新你的數據。再次,非常類似於RESTful https://www.elastic.co/guide/en/elasticsearch/reference/1.4/_modifying_your_data.html – user1171911