2014-03-13 41 views
0

我沒有持續很長時間一直在使用nosql,我有一個主表存儲對外部表的引用。用於搜索我用elasticsearch和我需要的連接(連接表)獲取所需的信息,但nosql不使用連接。我找到了孩子/家長解決方案,但它有他們的問題。有任何替代品或更好的更改結構,使用嵌套對象?MongoDB + ElasticSearch數據模型

回答

2

Nosql有一些缺點,如NoJoins。爲了解決這個問題,我們需要在mongodb中查詢兩個或三個集合。

1)要通過來了,是我們需要你store.If之前,你想從一組計算統計中收集的數據進行的MapReduce和存儲進行連接。

2)正如所說嵌套的對象也多effective.If硬盤空間ID不是一個問題,你可以使用嵌套docs.But我MongoDB的,你不能比16MB創建文檔更尺寸去。

使用Elasticsearch

3)在ES如果你想要的數據形成多個索引,那麼你可以用別名去。 參考http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/indices-aliases.html

4)和最後一個彈性的搜索..它的父子概念可能看起來像complex.But有很大幫助。

如果您應用更加寫入和讀出較少手段執行加入閱讀。像quering兩個或兩個以上的收集過程中得到一個信息

如果您應用較多的是讀取和寫入少執行存儲文檔。去與嵌套對象之前加入是不錯的選擇你將與一個call.It一次寫入多次讀取會降低CU使用了很多..

HOpe它helsp ..!