【问题标题】:SparkSQL spanning of Cassandra logical rows跨越 Cassandra 逻辑行的 SparkSQL
【发布时间】:2016-03-13 13:27:04
【问题描述】:

我有一种情况,我想使用 SparkSQL“迭代”或映射“宽行”而不是逻辑 Cassandra 行(CQL 行)。

基本上我的数据按timestamp(分区键)进行分区,并且有一个集群键,即传感器 ID。

对于每个timestamp我想做的操作,一个简单的例子就是做sensor1/sensor2

我怎样才能通过保持数据局部性使用 SparkSQL 有效地做到这一点(而且我认为我的数据模型非常适合这些任务)?

我读到 this post on Datastax 在 Cassandra 连接器中提到了 spanByspanByKey。这将如何与 SparkSQL 一起使用?

伪代码示例(pySpark):

ds = sqlContext.sql("SELECT * FROM measurements WHERE timestamp > xxx")
# span the ds by clustering key
# filter the ds " sensor4 > yyy "
# for each wide-row do sensor4 / sensor1

【问题讨论】:

    标签: apache-spark cassandra pyspark apache-spark-sql pyspark-sql


    【解决方案1】:

    目前不可能。 spanBy API 只能通过编程 API 访问。要在 SparkSQL 中启用它,需要扩展 SparkSQL 语法以注入额外的子句,这是一项艰巨的工作......

    【讨论】:

    • 感谢您的信息。它在 pyspark (targetholding) 连接器中可用吗?你认为你可以用 SparkSQL 提出另一种方法吗?
    • 我认为它不适用于 pyspark,因为 pyspark 在下面使用数据帧(文档说您仅限于 DataFrame 操作
    • 最好的选择是创建一个 JIRA 并请求将 spanBy 功能扩展到 pySpark 或/和 SparkSQL。
    猜你喜欢
    • 2011-07-04
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 2012-12-15
    • 2022-01-20
    • 1970-01-01
    • 2011-02-19
    • 2023-03-25
    相关资源
    最近更新 更多