問題タブ [spark-cassandra-connector]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-spark - Pojo オブジェクト マッピングを使用してレコードを Cassandra に挿入する必要があります
Cassandra にレコードを挿入する必要があるため、csv ファイルを入力とする関数を作成しました。csv ファイルの名前が test.csv だとします。Cassandra には、テーブル テストがあります。csv ファイルの各行をテスト テーブルに格納する必要があります。私は spark Java api を使用しているので、Pojo のフィールドと Cassandra の列をマッピングするための POJO クラスまたは DTO クラスも作成しています。
ここでの問題は、test.csv に 50 個のカンマ区切りの値があり、cassandra の test テーブルの 50 個の列に格納する必要があり、合計で 400 個の列があることです。そのため、私のテスト POJO クラスでは、これらの 50 フィールドのコンストラクターを作成しました。
}
したがって、ここでは常に、test.csv ファイルの各行の TestPojo クラスの Object を Objects の Rdd に返しています。それが完了したら、TestPojo マッピングを使用して、その rdd を Cassandra テーブル テストに保存します。
私の問題は、将来、test.csv に 60 列ある場合、50 フィールドのみでコンストラクターを呼び出しているため、コードが機能しないことです。
私の質問は、test.csv に含まれるフィールドの数に関係なく、私のコードがそれを処理できるように、TestPojo に 400 個のフィールドすべてを持つコンストラクターを作成する方法です。
400 フィールドすべてを含む一般的なコンストラクターを作成しようとしましたが、コンストラクター パラメーターの制限は 255 フィールドのみであるというコンパイル エラーが発生しました。
または、このユースケースを処理するためのより良い方法はありますか??
質問 2: test.csv からのデータが cassandra の複数のテーブルに送信される場合、test.csv の 5 つの列が cassandra の test テーブルに送信され、他の 5 つの列が cassandra の test2 テーブルに送信されるとします。
ここでの問題は、私がやっているときです
TestPojo のオブジェクトを 1 つだけ返しています。test.csv からのデータが test table と test2 table に送られる場合、TestPojo と Test2Pojo の 2 つのオブジェクトを返す必要があります。
cassandra - mesos、cassandra、spark の物理 (テスト) クラスターをセットアップする方法に関するリソース
4 台の物理マシンを調達して、スパーク テスト クラスターをセットアップすることができました。データは cassandra に保存され、計算は spark (SQL とデータ フレーム) で行われます。開発者としてインフラストラクチャの作業をできるだけ少なくしたいので、mesos を使用することを計画しています。
ただし、私が見つけたほとんどすべてのチュートリアルは、商用の dcos インフラストラクチャを使用したメソフィアのものです。marathon を使用するように dcos cli を構成することができましたが、メソフィア サポート担当者の 1 人が、うまく動作しない可能性があると私に言いました。
Cassandra をインストールできましたが、marathon でステータスが「異常」と表示されます。Spark はそこまで到達していません。Marathon は、デプロイ タスクが失敗していることを通知しますが、長いメッセージもエラー メッセージも何も表示されません。
メソを使うのは悪い考えですか?代替手段はありますか?Cassandra と Spark を実行する方法に関する他のリソースはありますか? 本を買うのは構わない。
更新: 4 台のマシンすべてで CentOS 7 を実行しています。これらのマシンには、20 ギガを超える RAM、12 CPU、および約 1 テラバイトのディスクが搭載されています。そのうちの 1 つはマスター ノード (zookeeper と mesos マスターを実行) としてセットアップされ、残りのマシンはスレーブ/クライアントです。
mysql - C* 側のフィルター - フィルター/範囲クエリを Spark から C* にプッシュ ダウンします。
私はdatastax/spark-cassandra-connectorと1B以上の行で満たされたC *テーブル(datastax-enterprise dse 4.7.0)を使用してspark 1.2.1に取り組んでいます。タイム スタンプ パラメーターに対して範囲フィルター/WHERE クエリを実行する必要があります。
1B+ 行のテーブル全体をロードしてメモリをスパークさせずに (完了するまでに数時間かかる可能性があります)、実際にクエリを C* に戻す最善の方法は何ですか?
JoinWithCassandraTable で rdd を使用するか、プッシュダウンでデータ フレームを使用しますか? 他に何かありますか?
scala - Datastax の Spark Cassandra コネクタを使用して、TableDef に Cassandra クラスタリングの順序を設定する
カサンドラで新しいテーブルを作成しようとするたびにTableDef
、昇順のクラスタリング順序になり、降順で取得しようとしています。
Cassandra 2.1.10、Spark 1.5.1、および Datastax Spark Cassandra Connector 1.5.0-M2 を使用しています。
新しく作成していますTableDef
私が Cassandra に期待しているのは
私が最終的に何をするかは
クラスタリングの順序を降順に設定するにはどうすればよいですか?
cassandra - How to make workers to query only local cassandra nodes?
Suppose I have several machines each having spark worker and cassandra node installed. Is it possible to require each spark worker to query only its local cassandra node (on the same machine), so that no network operation involved when I do joinWithCassandraTable after repartitionByCassandraReplica using spark-cassandra-connector, so each spark worker fetches data from its local storage?
cassandra - Apache Spark で Cassandra パーティション データを取得する
Cassandraのパーティション キーでデータを適切に整理しています。このデータをSparkで取得し、同じパーティションを保持したいと考えています。
私の目標は、非常に大きなシャッフルを避けることです。
PS:Cassandra 2.1とSpark 1.5を使用しています
apache-spark - Spark ノードは、Spark-Cassandra コネクタを使用して別のサーバーでホストされている Cassandra ノードに接続できますか
Spark-Cassandra コネクタは、私が使用した 127.0.0.1 を参照しているため、Spark が別のサーバーでホストされている Cassandra ノードに接続できるかどうか疑問に思っています。
を。可能であれば、同じ物理サーバーでホストされている以外に、接続を確立するために必要な追加の手順はありますか?
b. それが不可能な場合、どうすれば Spark と Cassandra を接続できますか。