假設我有如下表:ElasticSearch映射表與SQL表的外鍵
{
"ID": 1,
"Name": "Episode 2",
"TVSeriesID": 4
}
如果我那麼有:
`title`
- id
- name
- tv_series_id
Example:
id=1, name="Episode 2", tv_series_id=4
我可以在ElasticSearch使用以下JSON結構容易映射此第二個表叫做tv_series
表title
表中引用的一個外鍵,例如:
`tv_series`
- id
- name
Example:
id=4, name='Friends'
那麼我會如何在Elasticsearch中映射這種關係?有沒有一種通用的方法可以在Elasticsearch中映射兩個具有一個或多個外鍵關係的表?例如,通過執行某個連接語句?
感謝您的迴應,所以在這種情況下,我需要做一個'LEFT OUTER JOIN',以防萬一項目沒有'tv_series_id'。否則,如果我們執行了「INNER JOIN」,它會從結果中排除該項目。或者我應該做另一種類型的連接? – David542
當然,JOIN的類型顯然取決於你的數據模型,如果你認爲你的劇集不屬於某個特定系列,那麼你需要和OUTER JOIN,否則如果所有劇集都與一個系列相關,那麼一個左加入是好的。底線是你需要找到一種方法來規範你的數據。 – Val
但是在TVSeriesName被更新的情況下。我將不得不更新整個Episode文檔(父文檔)。否則,新的值不會出現在這裏。假設有數千個這樣的「父母」文件,那將是一種矯枉過正的方式。有沒有更好的方法來實現這一目標? –