2017-04-05 54 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/") 

这最后一次工作。