2
我正在做Clojure的數據分析。在此數據分析過程中,我正在與一個SQlite文件進行交互,其中大約有三百兆字節的數據。某些查詢關於此數據集像我在使用Clojure時沒有足夠的空間,我該怎麼辦?
(select crawls)
回報很長的爬行信息的列表。然而,針對大列等查詢給我:
的OutOfMemoryError Java堆空間org.sqlite.NativeDB.column_text (NativeDB.java:-2)
我可以用咖喱得到這個與簡單的東西如:
(select authors)
至於會:
=> (first (select stories))
OutOfMemoryError Java heap space org.sqlite.NativeDB.column_text (NativeDB.java:-2)
有誰知道我該如何解決這個問題?這是我第一個大數據分析項目。
我試過(取10(選擇作者)),我仍然墜毀。根據我的理解,不會意識到整個名單。 – Joshua
'(第一作者)' - 作者是否以嵌套數據結構的方式存儲?您可能需要以懶惰的方式訪問一位作者內部的密鑰。 '(鍵(第一作者))'怎麼樣?另外,當你調試這個問題時,它可能有助於將-Xmx arg提升到jvm:':jvm-opts [「-Xmx4g」]'(或者給出可用物理內存的任何適當的東西)在你的'project.clj '如果使用leinengen(你應該)。 – noisesmith
他們沒有嵌套結構。 =>(首先(選擇故事)) OutOfMemoryError Java堆空間org.sqlite.NativeDB.column_text(NativeDB.java:-2) – Joshua