标签: sparkr

SparkR vs sparklyr

有人对SparkR vs sparklyr的优缺点有所概述吗?谷歌没有产生任何令人满意的结果,两者看起来非常相似.尝试两种方式,SparkR看起来更麻烦,而sparklyr非常简单(既可以安装也可以使用,特别是使用dplyr输入).sparklyr只能用于并行运行dplyr函数或"普通"R代码吗?

最好

r apache-spark sparkr sparklyr

51
推荐指数
4
解决办法
2万
查看次数

安装SparkR

我有R - 3.2.1的最后一个版本.现在我想在R上安装SparkR.执行后:

> install.packages("SparkR")
Run Code Online (Sandbox Code Playgroud)

我回来了:

Installing package into ‘/home/user/R/x86_64-pc-linux-gnu-library/3.2’
(as ‘lib’ is unspecified)
Warning in install.packages :
  package ‘SparkR’ is not available (for R version 3.2.1)
Run Code Online (Sandbox Code Playgroud)

我也在我的机器上安装了Spark

Spark 1.4.0
Run Code Online (Sandbox Code Playgroud)

我怎么能解决这个问题?

r apache-spark sparkr

46
推荐指数
2
解决办法
3万
查看次数

如何在R中读取Parquet并将其转换为R DataFrame?

我想用R编程语言处理Apache Parquet文件(在我的例子中,在Spark中生成).

是否有R读卡器?或者正在进行一项工作?

如果没有,那么到达那里最方便的方式是什么?注意:有Java和C++绑定:https://github.com/apache/parquet-mr

r apache-spark parquet sparkr

31
推荐指数
5
解决办法
2万
查看次数

createOrReplaceTempView和registerTempTable之间的区别

我是新来的火花,sparkSql当我遇到这两个命令时,我正在尝试使用python中的一些命令:

createOrReplaceTempView()和registerTempTable().

这两个命令有什么区别?它们似乎具有相同的功能集.

apache-spark apache-spark-sql pyspark sparkr pyspark-sql

15
推荐指数
3
解决办法
9444
查看次数

无法在RStudio中启动SparkR

经过漫长而艰难的SparkR安装过程后,我遇到了启动SparkR的新问题.

我的设置

R 3.2.0    
RStudio 0.98.1103    
Rtools 3.3    
Spark 1.4.0
Java Version 8
SparkR 1.4.0
Windows 7 SP 1  64 Bit
Run Code Online (Sandbox Code Playgroud)

现在我尝试在R中使用以下代码:

library(devtools)
library(SparkR)
Sys.setenv(SPARK_MEM="1g")
Sys.setenv(SPARK_HOME="C:/spark-1.4.0")
sc <- sparkR.init(master="local")
Run Code Online (Sandbox Code Playgroud)

我收到以下信息:

JVM is not ready after 10 seconds
Run Code Online (Sandbox Code Playgroud)

我还试图添加一些系统变量,如spark path或java path.

你有什么建议让我解决这个问题.

测试本地主机后,下一步是在我运行的hadoop集群上开始测试.

windows r rstudio apache-spark sparkr

13
推荐指数
1
解决办法
5982
查看次数

将列添加到sparkR中的DataFrame

我想N在SparkR中的DataFrame中添加一个填充了字符的列.我会像非SparkR代码那样做:

df$new_column <- "N"
Run Code Online (Sandbox Code Playgroud)

但是使用SparkR,我收到以下错误:

Error: class(value) == "Column" || is.null(value) is not TRUE
Run Code Online (Sandbox Code Playgroud)

我已经尝试过疯狂的东西来管理它,我能够使用另一个(现有的)创建一个列df <- withColumn(df, "new_column", df$existing_column),但这个简单的事情,不...

有帮助吗?

谢谢.

r sparkr

13
推荐指数
1
解决办法
3211
查看次数

使用SparkR JVM从Scala jar文件中调用方法

我希望能够在Scala jar文件中打包DataFrames并在R中访问它们.最终目标是创建一种方法来访问Python,R和Scala中特定且经常使用的数据库表,而无需为每个表编写不同的库. .

为此,我在Scala中创建了一个jar文件,其中的函数使用SparkSQL库来查询数据库并获取我想要的DataFrame.我希望能够在R中调用这些函数而不创建另一个JVM,因为Spark已经在R中的JVM上运行.但是,JVM Spark使用的内容未在SparkR API中公开.为了使其可访问并使Java方法可调用,我修改了SparkR包中的"backend.R","generics.R","DataFrame.R"和"NAMESPACE"并重新构建了包:

在"backend.R"中,我制作了"callJMethod"和"createJObject"正式方法:

  setMethod("callJMethod", signature(objId="jobj", methodName="character"), function(objId, methodName, ...) {
  stopifnot(class(objId) == "jobj")
  if (!isValidJobj(objId)) {
    stop("Invalid jobj ", objId$id,
         ". If SparkR was restarted, Spark operations need to be re-executed.")
  }
  invokeJava(isStatic = FALSE, objId$id, methodName, ...)
})


  setMethod("newJObject", signature(className="character"), function(className, ...) {
  invokeJava(isStatic = TRUE, className, methodName = "<init>", ...)
})
Run Code Online (Sandbox Code Playgroud)

我修改了"generics.R"也包含这些功能:

#' @rdname callJMethod
#' @export
setGeneric("callJMethod", function(objId, methodName, ...) { standardGeneric("callJMethod")})

#' @rdname newJobject
#' @export
setGeneric("newJObject", function(className, ...) {standardGeneric("newJObject")})
Run Code Online (Sandbox Code Playgroud)

然后我将这些函数的导出添加到NAMESPACE文件中:

export("cacheTable", …
Run Code Online (Sandbox Code Playgroud)

scala r apache-spark apache-spark-sql sparkr

12
推荐指数
1
解决办法
914
查看次数

同时使用 SparkR 和 Sparklyr

据我了解,这两个包为 Apache Spark 提供了相似但主要不同的包装函数。Sparklyr 较新,但仍需要在功能范围内增长。因此,我认为目前需要同时使用这两个软件包才能获得完整的功能范围。

由于这两个包本质上都包装了对 Scala 类的 Java 实例的引用,因此我猜应该可以并行使用这些包。但实际上有可能吗?你的最佳实践是什么?

r apache-spark sparkr sparklyr

9
推荐指数
1
解决办法
349
查看次数

如何处理SparkR中的空条目

我有一个SparkSQL DataFrame.

此数据中的某些条目为空,但它们的行为不像NULL或NA.我怎么能删除它们?有任何想法吗?

在RI中可以很容易地删除它们,但在sparkR中它表示S4系统/方法存在问题.

谢谢.

r apache-spark sparkr apache-spark-1.4

8
推荐指数
1
解决办法
4423
查看次数

带有sparkr的zeppelin不会将数据帧显示为表

zeppelin R解释器文档说明:

If you return a data.frame, Zeppelin will attempt to display it using Zeppelin's built-in visualizations.
Run Code Online (Sandbox Code Playgroud)

这可以在文档示例中看到:

在此输入图像描述

但是,当我尝试从我的zeppelin 0.6.0笔记本运行相同的R命令时,我看到以下内容:

在此输入图像描述

知道为什么我没有看到表格输出吗?

apache-zeppelin sparkr

8
推荐指数
1
解决办法
986
查看次数