2
我使用sparklyr
來運行一些分析,但我也有興趣使用DBI
編寫原始SQL
查詢。DBI/Spark:如何將結果存儲在Spark Dataframe中?
我能夠運行下面的查詢
query <- "SELECT col1, FROM mydata WHERE some_condition"
dataframe <- dbGetQuery(spark_connection, query)
但這返回數據到R(在數據幀)。
我想要的是將數據保存在Spark中並將其存儲在另一個Spark Dataframe中,以便與sparklyr
進一步交互。
任何想法?
問題與使用DBI是內存。你將無法獲取大量的數據。如果你的查詢結果返回了大量的數據,這個意志將壓倒火花的驅動程序內存,並導致內存不足的錯誤......因此,如果你想用它來返回小的數據集,你不需要火花。 – eliasah
沒關係。我想處理Spark數據框並將數據保存在spark中。只有在後面的一個,經過幾次更多的SQL查詢之後,我將把數據拉入R. –
然後DBI不是您的解決方案;你應該使用普通的SparkR,如果你想堅持與R的那個 – eliasah