2017-03-10 28 views
0

終端目標是在我的Rails 5 API應用程序中將160萬條記錄導入Postgres進行發現。我有45個.json文件,每個文件都包含一個json對象數組。每個文件的每個文件介於2k到30k之間。文件大小從6MB到188MB不等。我嘗試使用seed.db文件並以這種方式讀取文件,但內存利用率太高。然後,我使用yajl gem將文件視爲流,但在較大的文件中,一段時間後我會遇到網絡錯誤,因爲寫入每個對象的過程需要一個小時。將.json文件數據加載到Postgres for Rails 5 API

有沒有一種更有效的方式,記憶方式來處理通過seed.db或Rails本身內的其他機制攝取大文件?

是否有一個特定的工具來處理將對象數組插入到Postgres中的json文件?我看到pgfutter,但我無法在我的Mac上獲得該工具初始化。

+0

是的,您可以使用seeds.rb或遷移,或幾種不同的方式。你能提供關於你的json數據文件結構的更多細節,以及它們與你的應用中模型的關係嗎? –

回答

0

通過使用Sqlize將json文件轉換爲SQL查詢來解決此問題。從那裏容易。