問題タブ [cql]
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 - Cassandraがスキーマの変更を無視するのはなぜですか?
私はカサンドラにかなり慣れていません。シングルノードクラスターを数日間問題なく実行していましたが、今日、CQLコマンドの一部を無視し始めました。 SELECT
sは正常に動作しますがDROP TABLE foo;
、cqlshから実行すると、何も起こりません。0.5秒休止すると、プロンプトに戻りますが、テーブルは削除されませんでした。を使用してインデックスを作成する場合も同様CREATE INDEX
です。
Ubuntu 12.04でOpenStaxのCassandraディストリビューションを使用して、仮想マシンで実行しています。
Cassandraログを確認し、CREATE INDEXを実行すると確実に出力が得られますが、明らかなエラーはありません。
生産:
node.js - 「SELECT * FROM cf」は、NodeJS に Helenus を使用して、Cassandra でインデックス付きの列のみを返します
私は Cassandra を初めて使用するので、非常に単純なものを見落としている可能性があります。
まず、列ファミリーからすべての行を取得して表示する単純な nodejs アプリケーションから始めました。そして、次を実行すると:
取得するのは、インデックスが付けられた最初の 2 つの列のデータだけです。他の列のデータは表示されません。一方、cassandra-cli にログインして を実行するとlist tweets
、すべての列のデータが表示されます。
なぜこれが起こっているのでしょうか?
node.js - cassandraでcompositetypeキーを選択します
そこで、行キーに複合IDを使用する列ファミリーを定義しました。つまり、複合キーはCompositeType(LongType,LongType)
です。だから私はこのタイプのアイテムを保存することをテストしました、そしてそれはSELECT
私が完全なキーを知っているときもうまく機能しそして期待通りに機能します。しかし、最初の要素が0で、2番目の要素が何かであるすべてのキーが必要だとします。これまでのところ、このクエリを実行するために私が見ることができる唯一の方法は次のとおりです。
私がすべて0:*のキーである場合key >= 0:0 AND key < 1:0
、順序を保持するパーティショナーがある限り機能するCQLクエリを実行します。
私の質問は次のとおりです。
1)この奇妙な構文は、CQLドライバーを使用しているためです(thrift以外のnodejsのオプションのみ)
2)このタイプのクエリに非効率性はありますか?CQLではサポートされていないため、基本的にスーパーカラムの代わりにコンポジットキーを使用しています。このように使用することに制限がない限り、コードでこのロジックを処理することに問題はありません。
cassandra - CQL: "Where" 句で Null チェックができない
特定のフィールドが null または null でないすべての行を返すようにしてください。
また
addr1 は、ブール値またはテキスト フィールドにすることができます。
、、、および!= null
_ is null
_<> null
isnull(addr1, 'NULL')
しかし、私は得る
また
Cassandra 1.1.1 & Java 1.7_05 の使用
cassandra - すべての行をページングするためのCassandraCQLメソッド
大きなcassandraテーブルのすべての行をプログラムで調べたいので、CQLを使用したいと考えていました。multigetを使用して一度に10,000(またはそれ以上)の行を取得し、最後に取得したキーを次のmultiget呼び出しに渡すことで、これを節約して行うことができることを私は知っています。しかし、私はCQL selectに関するすべてのドキュメントを調べましたが、これを行う方法はないようです。選択制限をどんどん高く設定し、それに合わせてタイムアウトをどんどん高く設定することにしました。
開始点をCQLselectに渡すための文書化されていない方法はありますか、それともthrift APIを使用してコードを分解して書き直す必要がありますか?
java - データを取得するための CQL 複合主キー クエリ
2 つの主キーを持つ列ファミリーがあります
これをJavaで作成しました。1つのuser_name(sunil)主キーに異なるIDで6行を挿入しました。sunil主キーのすべての値を取得しようとすると、詳細が1つしか表示されません
それは私に1つの出力しか与えません。クエリに何か問題がありますか?キーsunilの下にあるすべてのデータが必要です。
arrays - 多次元配列をcassandraに格納する方法
配列のようなオブジェクトをcassandraに格納したいのですが、cqlでもすべての要素にアクセスする必要があるため、インデックスを作成する必要があります。残念ながら、配列のサイズは動的です(ただし、次元の数ではなく、事前定義されています)。次のような配列を格納するための最も適切な方法は何でしょうか。
matrix[x][y][z]
したがって、1次元(vector[n]
)配列の場合、非常に単純になります。スーパーコラムが適切だと思います
多次元配列(matrix[x][y][z]
)はもう少し複雑です。次のように格納します。
しかし、どちらの場合も、column_validation_classesを定義する方法を理解できませんでした(私はpycassaを使用しています)...
また、複合コンパレータを使用して、すべてを次のような標準の列に配置してみました。
1次元の場合:
または複数の次元:
しかし、この場合、他の情報を含む列を追加したい場合、コンパレータを適切に定義する方法がわかりません。
さらに、このためのインデックスを作成する方法と、複合コンパレータのselectステートメントを作成する方法を理解できませんでした。
私の問題に対するあらゆる種類の提案、アイデア、または解決策をありがとう;)
乾杯
database - Cassandra でデータのインデックス作成のパフォーマンスを向上させる方法
Cassandralike clause.... in MySQL
には、データベース内のより具体的なデータを検索するような CQL はありません。
私はいくつかのデータを見て、いくつかのアイデアを思いつきました
1.Hadoopの利用
2.MySQLサーバーを別のデータベース サーバーとして使用する
しかし、Cassandra DBのパフォーマンスを簡単に向上させる方法はありますか?
cassandra - Astyanax クライアントを使用して複合キーを持つテーブルを作成できません
astyanax クライアントを使用して複合キーを持つテーブルを作成するにはどうすればよいですか。今のところ、cqlsh -3 で作成しました。cli では次のようになります。
これは、cqlshにあると私が期待する方法です:
問題であるブロブとして保存された複合キーで動作するようになりました。
私のコード
CF
KS
突然変異
cqlsh:KS>describe columnfamily my_cf;
cqlsh:KS>select * from my_cf;
cqlsh:KS> select * from my_cf where key = 'THEKEY_B' order by timeid desc;
以下のcassandra-cliで正しく見えませんか?cqlsh で動作しないのはなぜですか?
cassandra-cli] リスト my_cf;
私は何を間違っていますか?(astyanax 1.0.6、カサンドラ 1.1.2) cqlsh>[cqlsh 2.2.0 | カサンドラ 1.1.2 | CQL 仕様 3.0.0 | 倹約プロトコル 19.32.0]