【发布时间】:2016-05-21 00:56:10
【问题描述】:
我是 spark 新手,我想将我的 spark 数据保存到 cassandra,条件是我有一个 RDD,并且我想将此 RDD 的数据保存到 cassandra 中的多个表中?如果可以的话,这可能吗?
【问题讨论】:
标签: cassandra apache-spark spark-streaming rdd
我是 spark 新手,我想将我的 spark 数据保存到 cassandra,条件是我有一个 RDD,并且我想将此 RDD 的数据保存到 cassandra 中的多个表中?如果可以的话,这可能吗?
【问题讨论】:
标签: cassandra apache-spark spark-streaming rdd
使用 Spark-Cassandra 连接器。
如何将数据保存到 cassandra:文档中的示例:
val collection = sc.parallelize(Seq(("cat", 30), ("fox", 40)))
collection.saveToCassandra("test", "words", SomeColumns("word", "count"))
在此处查看项目和完整文档:https://github.com/datastax/spark-cassandra-connector
【讨论】:
Python pyspark Cassandra saveToCassandra Spark
想象一下你的桌子是这样的:
CREATE TABLE ks.test (
id uuid,
sampleId text,
validated boolean,
cell text,
gene text,
state varchar,
data bigint, PRIMARY KEY (id, sampleId) );
如何仅更新键空间 ks 中测试表中给定 sampleId 的“已验证”字段?您可以使用以下行在 Python 中更新表。
from pyspark import SparkConf
import pyspark_cassandra
from pyspark_cassandra import CassandraSparkContext
conf = SparkConf().set("spark.cassandra.connection.host", <IP1>).set("spark.cassandra.connection.native.port",<IP2>)
sparkContext = CassandraSparkContext(conf = conf)
rdd = sparkContext.parallelize([{"validated":False, "sampleId":"323112121", "id":"121224235-11e5-9023-23789786ess" }])
rdd.saveToCassandra("ks", "test", {"validated", "sample_id", "id"} )
【讨论】: