Как читать и записывать таблицу Cassandra, используя Spark Dataframe? - PullRequest
0 голосов
/ 24 июня 2018

Итак, я понял, что когда нам нужно создать кадр данных, используя пространство ключей Cassandra и имя таблицы, приведенный ниже фрагмент кода сделает эту работу.

val df = spark.read.format("org.apache.spark.sql.cassandra").options(Map("table" -> "table_name", "keyspace" -> "keyspace_name")).load()

Теперь, после изменения вышеуказанного df (dataframe), я хочу вернуть его в ту же таблицу, перезаписав исходное содержимое.

Я пытался поставить запись вместо чтения, но это не сработало.

Как перезаписать содержимое таблицы Cassandra измененным фреймом данных?

1 Ответ

0 голосов
/ 24 июня 2018

write работает просто отлично (пример из документации ):

df.write
  .format("org.apache.spark.sql.cassandra")
  .options(Map("table" -> "words_copy", "keyspace" -> "test"))
  .mode(org.apache.spark.sql.SaveMode.Append)
  .save()

Но вы должны быть осторожны при обратной записи: если вы изменили содержимое столбцов разделов и кластеров, вы не будете перезаписывать данные, а вставлять новые данные ...

...