问题标签 [sparklyr]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 将 SparkR DataFrame 序列化为 jobj
我希望能够使用 SparkR SparkDataFrame 上的 Java 方法将数据写入 Cassandra。
sparklyr
例如,使用扩展,我可以做这样的事情:
它可以实现每秒约 20k 行的写入速度。
然而,对于我的用例,我希望能够使用SparkR::spark.lapply
这样我可以在本地收集我的 Cassandra 表的子集,在它们上运行脚本并将数据写回。我尝试使用的每种方法sparklyr
都以单线程结束,因此根本没有使用 spark。
使用SparkR
,我可以使用以下方式编写数据:
但是在这种情况下,写入速度接近每秒 2k 行。我想我可以SparkR::sparkR.callJMethod
用来调用与案例相同的链sparklyr
来实现更高的写入速度,但是我首先需要序列化具有我无法做到SparkDataFrame
的句柄的那些。jobj
这可能吗?
如果可能的话,我也愿意接受任何其他实现这一目标的方法。我已经调查过尝试在两者之间移动sparkR
,sparklyr
但后端似乎太不同了(据我所知)。从这里我也相信,到目前为止还没有类似lapply
的东西sparklyr
。
谢谢你的帮助
r - SparklyR 将一个 Spark DataFrame 列分成两列
我有一个数据框,其中包含一个名为COL的列,其结构如下:
价值1###价值2
以下代码正在运行
如果我删除collect
,我会收到此错误:
有没有其他方法可以实现我想要的,但没有收集我的火花驱动器上的所有东西?
r - 无法使用 sparklyr 连接到 Spark
我正在尝试使用 R 中的 sparklyr 包连接到 spark,但出现以下错误:
任何建议如何解决它?
谢谢!拉米
r - sparklyr 枢轴数据框
目前sparklyr (0.5.1)
还没有pivot
Spark 的实现。
所以,我想知道如何使用invoke
函数来实现它。
到目前为止,我到了这里。
并坚持如何编写聚合表达式?
r - 可以在本地机器上使用 Sparklyr 来绕过 R 的内存限制吗?
我需要在不适合我计算机内存的数据上安装 GLM。通常为了解决这个问题,我会对数据进行采样,拟合模型,然后在内存不足的不同样本上进行测试。这对我来说是 R 的主要限制,这就是为什么适合 GLM 的 SAS 是首选的原因,因为它不会因不适合内存的数据而绊倒。
我一直在尝试寻找在本地机器上使用 R 解决此问题的方法,并想知道 Sparklyr 是否可用于解决内存问题?我意识到 Spark 旨在用于集群环境等,但直接 - Sparklyr 可以用于处理我本地机器上的数据,否则这些数据将不适合其内存?
r - 无法在 RStudio 中将 Spark 连接到 Cassandra DB
上周我一直在试图弄清楚如何使用 sparlyr 让 spark 连接到我们本地集群上的 cassandra,但我碰壁了 - 任何帮助将不胜感激。我是唯一一个尝试使用 R/Rstudio 建立这种连接的人(其他人都在 NetBeans 和 Maven 上使用 Java),但我不确定我需要做什么才能完成这项工作。
我正在使用的堆栈是:Ubuntu 16.04(在 VM 中) sparklyr:0.5.3 Spark:2.0.0 Scala:2.11 Cassandra:3.7
相关的 config.yml 文件设置:
Sys.setnev 设置用于本地安装 Java 和 spark,配置设置为使用 yml 文件。Spark 连接使用以下命令启动:
Spark 会话通过以下方式启动:
到这里为止一切似乎都很好,(sc 连接和 sparkSession),但现在尝试访问我知道存在的 cassandra 表(keyspace_1 中的 table_1):
抛出以下错误:
r - 使用 sparklyr 将数据从数据库传输到 Spark
我在数据库中有一些数据,我想在 Spark 中使用sparklyr使用它。
我可以使用基于DBI的包将数据库中的数据导入 R
然后使用将数据从 R 复制到 Spark
对于大数据集,复制两次很慢。
如何将数据直接从数据库复制到 Spark?
sparklyr有几个spark_read_*()
导入功能,但与数据库无关。 sdf_import()
看起来有可能,但目前尚不清楚如何在这种情况下使用它。
r - 在 sparklyr Spark DataFrame 中将列的类别更改为日期
我正在使用 sparklyr,并且无法更改列类以及使用 dplyr 聚合数据。这是我目前的代码:
基于此的两个问题:
1) 如何将 DATE 列更改为日期类。我过去的做法是:
这是错误:
任何帮助都会很棒,谢谢!
apache-spark - DSE Spark 和 RStudio Sparklyr 集成
我正在尝试将我的 RStudio 服务器连接到我的 DSE Analytics 集群。
设置:
- CentOS 7
- openjdk-1.8
- RStudio Server v1.0.136(最新版 sparklyr by
>devtools::install_github("rstudio/sparklyr")
) - DSE 5.0(火花 1.6.2)
- 集群内一个 DC 中的 5 个 DSE Analytics 节点(由另一个 DC 共享用于 OLTP)
- 独立运行 DSE Analytics (VM) 的 RStudio Server
因为,与sparklyr 教程不同,我带来了我自己的(DSE 的)Spark。SPARK_HOME
没有设置。也不是JAVA_HOME
。所以:
我的 config.yml (在这里找到了例子):
我的会话信息:
现在,当我尝试生成火花上下文时,这就是我得到的:
从这个输出中,我的猜测是 sparklyr 没有识别DSE Analytics
. 据我了解,DSE 的 spark 它通过连接器与 Cassandra 深度集成,甚至还有自己的dse spark-submit
. 我确定我将错误的配置传递给 sparklyr。我只是迷失了传递给它的东西。欢迎任何帮助。谢谢你。
编辑:我显然遇到了同样的错误> sc <- spark_connect(master="local")
apache-spark - SparklyR 连接到独立的 Spark 集群,仅连接到 2/6 个工作人员
我终于设法将我的堆栈设置为使用 RStudio 通过 sparklyR 连接到独立的 spark 集群(在 CassandraDB 中具有文件存储)。
我仍然无法解决的唯一问题是如何让我的 sparklyR 连接以利用集群上所有可用的工作节点(总共有 6 个)。每次我连接时,执行器摘要页面显示 sparklyR 连接仅使用 2 个工作程序(每个节点上有 1 个执行器)。
我已经尝试使用 config.yml 文件进行spark_connect
调用,包括设置spark.executor.instances: 6
and spark.num.executors: 6
,但这并没有什么不同。我可以使用另一种设置来让 sparklyR 使用所有节点吗?我可以以某种方式传递所有工作人员 IP 地址的列表,spark_connect
以便它连接到它们吗?
我的设置如下:RStudio:1.0.136,sparklyR:0.5.3-9000,Spark 版本(集群和本地):2.0.0。