希望使用 SparklyR 按索引对 Spark 数据帧进行排序
Looking to sort a Spark Data Frame by Index using SparklyR
library(sparklyr)
library(dplyr)
library(Lahman)
spark_install(version = "2.0.0")
sc <- spark_connect(master = "local")
batting_tbl <- copy_to(sc, Lahman::Batting, "batting"); batting_tbl
batting_tbl %>% arrange(-index())
# Error: org.apache.spark.sql.AnalysisException: Undefined function: 'INDEX'.
# This function is neither a registered temporary
# function nor a permanent function registered in the database 'default'.; line 3 pos 10
有人知道如何使用 dplyr 通过 Spark (sparklyr) DataFrame 按索引排序吗?
这是我能想到的最佳解决方案。虽然正确,但 sdf_with_unique_id
函数 returns 在 62,000 行之上有一些非常高的连续值。无论如何,这是使用 SparklyR 创建分布式索引列的一种方法。
library(sparklyr)
library(dplyr)
library(Lahman)
options(tibble.width = Inf)
options(dplyr.print_max = Inf)
spark_install(version = "2.0.0")
sc <- spark_connect(master = "local")
batting_tbl <- copy_to(sc, Lahman::Batting, "batting"); batting_tbl
tbl_uncache(sc, "batting")
y <- Lahman::Batting
batting_tbl <- batting_tbl %>% sdf_with_unique_id(., id = "id") # Note 62300 threshold for higher values
batting_tbl %>% arrange(-id)
library(sparklyr)
library(dplyr)
library(Lahman)
spark_install(version = "2.0.0")
sc <- spark_connect(master = "local")
batting_tbl <- copy_to(sc, Lahman::Batting, "batting"); batting_tbl
batting_tbl %>% arrange(-index())
# Error: org.apache.spark.sql.AnalysisException: Undefined function: 'INDEX'.
# This function is neither a registered temporary
# function nor a permanent function registered in the database 'default'.; line 3 pos 10
有人知道如何使用 dplyr 通过 Spark (sparklyr) DataFrame 按索引排序吗?
这是我能想到的最佳解决方案。虽然正确,但 sdf_with_unique_id
函数 returns 在 62,000 行之上有一些非常高的连续值。无论如何,这是使用 SparklyR 创建分布式索引列的一种方法。
library(sparklyr)
library(dplyr)
library(Lahman)
options(tibble.width = Inf)
options(dplyr.print_max = Inf)
spark_install(version = "2.0.0")
sc <- spark_connect(master = "local")
batting_tbl <- copy_to(sc, Lahman::Batting, "batting"); batting_tbl
tbl_uncache(sc, "batting")
y <- Lahman::Batting
batting_tbl <- batting_tbl %>% sdf_with_unique_id(., id = "id") # Note 62300 threshold for higher values
batting_tbl %>% arrange(-id)