これは、経由カサンドラテーブルからデータを取得する方法の方法であるJavaの+スパーク+ SparkSession:
SparkSession spark = SparkSession
.builder()
.appName("JavaDemoDataSet")
.config("spark.sql.warehouse.dir", "/file:C:/temp")
.config("spark.cassandra.connection.host", "127.0.0.1")
.config("spark.cassandra.connection.port", "9042")
.master("local[2]")
.getOrCreate();
Dataset<Row> dataset = spark.read()
.format("org.apache.spark.sql.cassandra")
.options(new HashMap<String, String>() {
{
put("keyspace", "chat");
put("table", "dictionary");
}
})
.load()
.filter("value_id BETWEEN 1 AND 5");
しかし、このテーブルの行(少なくとも1行)を追加または変更する方法を調査しているとき、それを行うための最良の方法を見つけることができませんでした。たとえば、GUIを使用して単純なアプリケーションを開発していて、「辞書」テーブルに新しい値を追加する必要があります。したがって、この場合、私の観点からは、これを行うためにDataSetは必要ありません。
私はSparkSessionを経由して1つの行を追加する方法を研究していた場合-私はそれを行う方法のJava +スパーク+ Sparksessionの例を見つけることができませんでした。私は間違いなく経由CQL文でそれを行うことができステートメントが、それを行うための一つの方法は、更新に最善をであるか、1つのまたは2行を追加しますか?特に私がSparkSessionを使ってそれらを読んでいるとき。
私は例(またはハイパーリンクでさえ、私はたくさん研究しましたが、重要な何かを見逃したかもしれません)を本当に感謝します、可能であれば、私はそれらすべてにかなり新しいので。
ありがとうございました!
私は強く、単一の行の更新を行うためにスパークを使用しないことをお勧めします。組み込みのコネクタメソッドは、大量のデータを対象としているため、単一行の変更ではおそらく非常に非効率的です。ドライバを直接使用するか、CassandraConnectorインターフェイスを使用する方がはるかに優れています。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加