Cassandra "in" 子句的 Sparklyr 查询问题
Sparklyr Query Problem With Cassandra "in" clause
我需要用 Spark 查询 cassandra tables。我正在使用一个名为 sparklyr 的 R 库。当我尝试在分区键上使用 where 条件时(我的 cassandra table 有 2 个分区键),每个分区键都没有问题。但是如果我每个使用多个分区键,它会花费太多时间。我该如何处理这个问题。 (pyspark没有问题。)
我尝试使用 sparlyr、dplyr、DBI 库。但是我解决不了。
我成功查询的是;
spark_session(sc) %>% invoke("sql", "select * from sensor_data")%>%
invoke("where", "sensor_id=109959 and filter_time ='2018060813'")%>%
invoke("count")
#it takes 2 secs. (Number of spark tasks: 2)
#
问题是;
spark_session(sc) %>% invoke("sql", "select * from sensor_data")%>%
invoke("where", "sensor_id=109959 and filter_time in ('2018060813','2018061107')")%>%
invoke("count")
#It takes 9 mins.(Number of spark tasks: 987)
#
我想我无法在 "in" 中有效地使用分区键。我该如何解决?对此有什么想法吗?
问题已通过删除“'”得到解决。
旧值为'2018121205'
,新值为2018121205
。
它对我有用..
我需要用 Spark 查询 cassandra tables。我正在使用一个名为 sparklyr 的 R 库。当我尝试在分区键上使用 where 条件时(我的 cassandra table 有 2 个分区键),每个分区键都没有问题。但是如果我每个使用多个分区键,它会花费太多时间。我该如何处理这个问题。 (pyspark没有问题。)
我尝试使用 sparlyr、dplyr、DBI 库。但是我解决不了。
我成功查询的是;
spark_session(sc) %>% invoke("sql", "select * from sensor_data")%>%
invoke("where", "sensor_id=109959 and filter_time ='2018060813'")%>%
invoke("count")
#it takes 2 secs. (Number of spark tasks: 2)
#
问题是;
spark_session(sc) %>% invoke("sql", "select * from sensor_data")%>%
invoke("where", "sensor_id=109959 and filter_time in ('2018060813','2018061107')")%>%
invoke("count")
#It takes 9 mins.(Number of spark tasks: 987)
#
我想我无法在 "in" 中有效地使用分区键。我该如何解决?对此有什么想法吗?
问题已通过删除“'”得到解决。
旧值为'2018121205'
,新值为2018121205
。
它对我有用..