問題タブ [hector]
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.
cassandra - ヘクターを使用してカサンドラからカウンターカラムの値を取得するにはどうすればよいですか?
こんにちは、hector を使用して cassandra からデータを取得しようとしています。これには 2 つの方法があります。
1 つは、次のような cqlQuery を使用したものです。
クエリがなければ、次のようになりますが、動作させることができません。
どこで間違いを犯しますか?
java - Hector querySuperColumn が countSubColumns と一致しません
私はスーパーカラムファミリーを手に入れました:
コードは次のとおりです。
私がやろうとしているのは、nameKey 列ファミリーからすべての列名をフェッチすることですが、最初の 7 つの名前{name1, name2,..., name7}
(2 行目) のみを返しますが、count は返します8945
(1 行目)。そして、アサーションは3行目で失敗します...
sorting - RandomPartionerとHectorをクライアントとして使用しているときに、cassandraからソートされた行を取得するにはどうすればよいですか?
Hectorとcassandraのスキルを向上させるために、cassandraからデータをクエリするさまざまな方法を試しています。
現在、私は簡単なメッセージシステムを作ろうとしています。最後に投稿されたメッセージを最初に、投稿されたメッセージを時系列で取得したいと思います。
プレーンSQLでは、「orderby」を使用できます。OrderPreservingPartitionerを使用すれば可能ですが、このpartionerは非推奨であり、RandomPartionerよりも効率が低くなっています。タイムスタンプals値を使用して2次列にインデックスを作成することを考えましたが、データを取得する方法がわかりません。少なくとも2つのクエリを使用する必要があると確信しています。
私のコラムFamilyは次のようになります。
インデックス列にDataTypeを使用するか、longを使用するかはわかりませんが、この質問では重要ではないと思います。
では、どうすればデータを並べ替えることができますか?可能であれば、CQL構文とホワイトアウトをどのように実行するかを知りたいと思います。
前もって感謝します。
timestamp - Hector:複合型のパーツをクエリする方法
CompositeType
次のようなデータを使用して保存しています。
コンポジットには4つの部分があります:[タイムスタンプ:タイプ:価格:属性名]
を使用して1、2、またはすべてのコンポーネントパーツをクエリすることは可能SliceQuery
ですか?
- たとえば、タイムスタンプT1-> T2からクエリを実行したい(正常に動作します)
- また、タイムスタンプT1->T2およびType= "C"であり、"C"のみであると言う必要があります。
- タイムスタンプT1->T2、タイプ="C"AND価格="365.0"
この方法でコンポジットの一部を照会することは可能ですか?これまでの私のテストではできませんでした。コンポジットは、個々のコンポーネントではなく、ロングバイト配列のみであるかのように比較されているように見えます。
cassandra - 空のキーと存在しないキーに違いはありますか?
MultigetSliceQuery を使用すると、キーが存在しない場合でも、結果には各キーの行が含まれます。テストする唯一の方法は、各行に列が存在するかどうかを確認することです。
ただし、1 つ以上の列を含む行を作成してからすべての列を削除すると、MultigetSliceQuery からの結果は同じになります (最初に行が作成されなかったかのように)。
これを CLI でテストすると、「list CF」は空の行キーを表示しますが、「get CF[key] 」は「 Returned 0 results.」を返します。
列のない行は有効ですか?
空と存在の結果を確認する方法はありますか?
cassandra - Cassandra と hector の 1.0 へのアップグレードと単体テスト
Cassandra 0.7 を使用しており、cassandra 1.0.0 の安定版がリリースされたため、それにアップグレードする予定でした。まだ本番環境にないため、リスクは低いです。私たちは、すべての単体テストで組み込みサーバーを起動するために使用した testutils パッケージと EmbeddedServerHelper クラスを含む hector 0.7-29 を使用していました。
ただし、hector 1.0-1 (cassandra 1.0.x 用) のアップグレード バージョンでは、このパッケージ (me.prettyprint.cassandra.testutils) がコア ディストリビューションから削除されています。
新しい hector 1.0-1 API クライアントを使用した単体テストの計画を知りたいです。cassandra 組み込みサーバーを起動する方法はありますか?
ご協力いただきありがとうございます。
cassandra - Cassandra Hector: 行更新の成功/失敗を確認する方法 (エラー処理)
Hector を使用して、Java アプリケーションから cassandra データベースを操作しています。(ヘクター 1.0-1)
この例では、フィールドを挿入 (または更新) する方法を示しています。
しかし、手術の結果についてはあまり情報がありません。操作が成功したかどうかを確認するにはどうすればよいですか? 戻り値は ResultStatus の実装であり、呼び出すことができる 3 つのメソッドは次のとおりです。
execute() メソッドの呼び出しで例外が発生しなければ、操作は成功したと見なすことができますか?
java - Cassandra の低い書き込みパフォーマンス
NoSQL と Cassandra は初めてです。メモリ内キャッシュのみのソリューションを実現するための設定を試しています。100000 行のファイルから 1 行ずつ読み取り、Hector を使用して Cassandra に挿入することで処理しています。毎秒約 6000 回の挿入という非常に低いスループットに気付きました。書き込み操作全体で約 20.5 秒かかりますが、これは私たちのアプリケーションでは受け入れられません。1 秒あたり 100000 回の挿入が必要です。4GB RAM を搭載した Windows 7 コンピューターでテストしています。
挿入のみのテストを行っています。
どこが間違っているのか教えてください。1 秒あたりの挿入数を改善する方法を教えてください。
行キャッシュとキー キャッシュを設定する方法をいくつか試しました。
Cassandra CLI 経由
NodeCmd 経由: java org.apache.cassandra.tools.NodeCmd -p 7199 setcachecapacity Keyspace1 user 150000 150000
jar - Cassandra- Pelops : cassandra にデータを挿入しようとしているときに No such Method エラーが発生する
pelops api を使用して cassandra にデータを挿入しようとすると、次のエラーが発生します。
次のjarを使用しています
- scale7-core-1.3.0.jar
- scale7-pelops-0.912-0.7.0-rc4-1.jar
- cassandra-1.0.5 の lib ディレクトリにあるすべての jar
次の関数を呼び出すと例外が発生します
エラー スタックは次のとおりです。
cassandra - Cassandra Hector: 列ファミリーのすべての行を取得する方法は?
列ファミリーのすべての行とすべての列を取得するコード例を探しています。何かのようなもの:
これは RangeSlicesQuery を使用して実行できることがわかりましたが、それでも特定の範囲を指定する必要があります。また、列名も指定する必要があると思います。これを行うクリーンで安全な方法はありますか?
Hector 1.0 と Cassandra 1.0 を使用。