什麼是指數PostgreSQL數據庫中的Solr的/ Elasticsearch數據庫不斷變化的數據的最佳方式?索引數據/ elasticsearch
我對AWS RDS一個Postgres數據庫,我想對它進行復雜的搜索。然而,我要查詢的數據會隨着寫入/更新量的不斷變化而不斷變化。所以,我不知道,應該怎樣有效和可靠地數據傳輸到Solr的/ elasticsearch。
感謝您的幫助
什麼是指數PostgreSQL數據庫中的Solr的/ Elasticsearch數據庫不斷變化的數據的最佳方式?索引數據/ elasticsearch
我對AWS RDS一個Postgres數據庫,我想對它進行復雜的搜索。然而,我要查詢的數據會隨着寫入/更新量的不斷變化而不斷變化。所以,我不知道,應該怎樣有效和可靠地數據傳輸到Solr的/ elasticsearch。
感謝您的幫助
在Solr
情況下,一般的方法是使用Data Import Handler
(DIH
的簡稱)。配置完整導入& delta-import sql正確,其中delta import
導入數據庫中的數據,該數據庫自上次導入通過時間戳進行判斷(因此,您需要具有適當時間戳的設計模式)。
增量導入的定時,有2種樣式,其可單獨使用或組合:
有關DIH
的詳細信息,請參閱https://cwiki.apache.org/confluence/display/solr/Uploading+Structured+Data+Store+Data+with+the+Data+Import+Handler。
有人將此問題標記爲重複的風險,下面是在另一個StackOverflow線程中設置postgres-to-elasticsearch的鏈接。還有Atlassian的上是this blog post還談到了如何從PostgreSQL的獲取實時更新到ElasticSearch。
tl; dr羣體的Atlassian線程使用存儲的PGS過程將更新/插入的數據複製到登臺表,然後分別處理登臺表。這是一種適用於ES或Solr的好方法。不幸的是,除非你熟悉Clojure,否則這是一個自己動手的解決方案。