2017-04-05 73 views
0

我想讀取一個csv文件到與谷歌計算羣集中的sparklyr包的結構。這是配置:閱讀csv函數sparklyr錯誤

測試星火框架
install.packages("sparklyr") 
install.packages("dplyr") 


library(sparklyr) 
spark_install(version = "1.6.2") 


Sys.setenv(SPARK_HOME="/usr/lib/spark") 
config <- spark_config() 

    sc <- spark_connect(master = "yarn-client", config=config ,version = "1.6.2") 

有表示「無效參數」的錯誤只是粘貼,我將用於spark_read_csv功能路徑字符串後。即使我沒有點擊保存按鈕,它也會彈出。

任何想法,爲什麼我得到這個錯誤?有趣的是,我只是在amazon EMR中嘗試了相同的安裝配置,並且遇到了同樣的問題。

阿爾比特enter image description here

回答

0

它看起來像你需要在spark_read_csv到周圍使用name參數報價。你嘗試過嗎?見?spark_read_csv

+0

感謝您的建議schristel,但我使用了spack_read_csv指南中指出的格式,但仍然遇到錯誤。在谷歌計算的情況下,我將文件傳輸到rstudio工作區,並嘗試使用「file:// home/ruser/filename」和「file:/// home/ruser/filename」。 –

+0

好吧,如果沒有可重複使用的例子,我無法排除故障,但是運氣好。如果您找到解決方案,請跟進! – schristel

+0

謝謝Schristel。這是我如何設置命令:secondary_two_tbl < - spark_read_csv(sc,「SECONDARYtwo.csv」, path =「file:/// home/ruser/sparkly-blog」) –

0

我能夠通過創建在Hadoop的一個目錄,傳輸文件的Hadoop /用戶/目錄下,然後使用spark_read_csv功能修復以前的錯誤:

secondary_two_tbl <- spark_read_csv(sc, "SECONDARYtwo.csv", 
         path = "/user/ruser/secondary/") 

後來我有一個新的錯誤:

Error: org.apache.spark.sql.AnalysisException: It is not allowed to add database prefix `SECONDARYtwo` for the TEMPORARY view name.; 
at org.apache.spark.sql.execution.command.CreateViewCommand.<init>(views.scala:79) 
at org.apache.spark.sql.Dataset$$anonfun$createOrReplaceTempView$1.apply(Dataset.scala:2421) 
at org.apache.spark.sql.Dataset$$anonfun$createOrReplaceTempView$1.apply(Dataset.scala:2415) 
at org.apache.spark.sql.Dataset.org$apache$spark$sql$Dataset$$withPlan(Dataset.scala:2603) 
at org.apache.spark.sql.Dataset.createOrReplaceTempView(Dataset.scala:2415) 
at org.apache.spark.sql.Dataset.registerTempTable(Dataset.scala:2385) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:498) 
at sparklyr.Handler.handleMethodCall(handler.scala:118) 
at spar 

這個我試過從 「SECONDARYtwo.csv」 文件中刪除名爲 「.csv」 的一部分,並再次運行spark_read_csv功能後..

tbl_secondary_two <- spark_read_csv(sc, "SECONDARYtwo", 
         path = "/user/ruser/secondary/") 

這最後一次工作。