2017-01-02 9 views
1

私は現在sparklyrに取り組んでおり、私はCassandraで新しいキースペースを作成しようとしています。まったく可能ですか?もしそうなら、どうですか?Rを使用してcassandraにキースペースとテーブルを作成するには?

sql(sqlContext, "CREATE KEYSPACE key1 WITH REPLICATION = {'class': 'SimpleStrategy', 'replication_factor': 1 }") 

をしかし、結果に、私はエラーを取得しています:

私は表現の下にしようとしていた

Error in invokeJava(isStatic = FALSE, objId$id, methodName, ...) : 
    java.lang.RuntimeException: [1.1] failure: ``with'' expected but identifier CREATE found 

答えて

1

が新しいカサンドラテーブルやKeyspacesを作成するためのスパークSQLにはSQLコマンドはありません。 Spark Sqlは、すでに存在するCassandra Tablesに関連するメタデータを作成または破棄することしかできません。新しいテーブルを作成するには、Scala/Javaで追加されたカスタムDataFrame Apisを使用する必要があります。

val renamed = df.withColumnRenamed("col1", "newcolumnname") 
renamed.createCassandraTable(
    "test", 
    "renamed", 
    partitionKeyColumns = Some(Seq("user")), 
    clusteringKeyColumns = Some(Seq("newcolumnname"))) 

Dataframe Docs

これは基本的に私はこれを行うために、任意の簡単な方法を知りませんR.からのJavaのクロス言語の呼び出しのいくつかの種類をしなければならないだろうと私はちょうど呼び出すことをお勧め意味サポートされている言語のCassandraドライバのいずれか。例えばPythonとpythonドライバを使うだけです。

関連する問題