簡體   English   中英

將不同遠程源中的數據庫同步到PostgreSQL數據庫

[英]Synchronize databases in different remote sources to a PostgreSQL database

我在不同地理位置有幾個可以脫機工作的應用程序,因為這些地方沒有Internet訪問。 所有應用程序都存儲相同類型的信息,並且每個應用程序都將信息存儲在其自己的本地數據庫中。

問題在於,每隔給定的時間,我需要將信息從所有本地數據庫復制到單個數據庫。 我已經考慮過為每個應用程序生成一個JSON文件,然后通過Internet訪問將其加載到某個位置,並使用Web服務讀取該文件並存儲信息。

我不知道這是否是最好的方法,因為文件可能包含成千上萬條記錄並且信息是敏感的。 我想知道是否有更好的方法來解決這個問題。

我對您的應用程序一無所知,因此無法確定ID,唯一索引或類似內容是否存在嚴重沖突。

但是從技術上講,您可以使用分區簡化將所有本地數據庫中的數據組合到中央數據庫中的過程。 分區充當具有獨立索引的完全獨立的表,因此即使使用相同的ID,您也不會遇到將數據導入分區的問題。 並且由於從一個主父表繼承,您將能夠以簡單的方式從所有主表中進行選擇。

可以對所有表使用相同的分區解決方案(即,每個本地數據庫使用單獨的分區后綴),因此您無需擔心多主復制等問題。這將需要在導入部分上進行一些工作,但可以為您節省很多問題一些“更復雜”的解決方案。

從數據庫的角度來看,從本地數據庫傳輸數據的方式並不那么重要。 如果您喜歡JSON,為什么不呢? 但是PostgreSQL這么胖就沒有對JSON導出/導入的本機支持-因此您必須編寫自己的函數。 另一方面,在PostgreSQL中,轉儲/還原或CSV導出/導入本來就可以很好地工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM