如何使用saveTOCassandra()

时间:2015-02-02 12:22:53

标签: cassandra apache-spark spark-streaming rdd

我是新来的火花我希望将我的火花数据保存到cassandra,条件是我有一个RDD并且我想将这个RDD的数据保存到cassandra中的一个表中?如果是,那么这是可能的吗?

2 个答案:

答案 0 :(得分:2)

使用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

答案 1 :(得分:1)

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的'validated'字段?您可以使用以下行来更新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"} )