問題タブ [cql3]
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を使用して、cqlshのCQL3にテーブルを作成しました。
locationidは整数であることに注意してください。
ただし、データを挿入してselectを実行した後、locationidの昇順の並べ替えは整数ではなく文字列に基づいているように見えることに気付きました。
0 10 5.実際のデータ型でソートする方法はありますか?
ありがとう、アリソン
cassandra - 複合キーのCQL2列スライスとCQL3の場所は同等ですか?
私はCQLの周りに私の脳を包むいくつかの問題を抱えています。私はCQL3で列スライス(これが正しい用語だと思います)を操作しようと試みてきましたが、それに関するすべてのドキュメントはCQL2を参照しているようです。
たとえば、次の表があります。
これで、CQL2で次のことができます。
これは、すべての行の範囲内のすべての列を返します
さて、CQL3では(少なくともcqlshでは)それを行うことはできませんが、次のことはできます。
これにより、基本的に同じ情報が得られますが、形式が少し異なります。
問題は-これらは同等ですか?許可フィルタリングを追加しない場合にcqlshがパフォーマンスの問題について警告するという事実は、CQL2バージョンの方が効率的であり、CQL3クエリの動作が異なることを示していますが、確認する正解を見つけることができませんでした。ここに私の直感。
編集:私が懸念している具体的なことは、CQL2クエリを実行してもcqlshからの苦情は発生しませんが、 「フィルタリングを許可」せずにCQL3クエリを実行すると、予測できないパフォーマンスが懸念されるため、cqlshはクエリの実行を拒否します。
cassandra - Cassandra 1.2/Cql3 で動的列が推奨されない場合、Mysql よりも機能的にどのように優れているのでしょうか?
最初に Cassandra の学習を始めたのは、動的列が私の注意を引いたからです。詳細を学び始めると、複合主キーが動的列よりも優先され、Cassandra がスキーマ ベースに移行していることを知りました (スキーマはオプションであり、必須ではありませんが、推奨されます)。ただし、cql3では必須であり、cql3がcassandraの新しいアプリケーションに最適なアプローチであると読みました。
ここで、興味深い質問に直面します。特定のスライド (Mysql vs Casssandra) - http://lanyrd.com/2012/austin-mysql-meetup-january/spdrx/ (31 枚のスライドに移動) を読んでいました。ここでは、不正検出のユース ケースについて説明しています。
「FraudDetection では、リスクを計算するために、問題のアカウントでこれまでに使用されたすべての電子メール、宛先、送信元、デバイス、場所、電話番号などを知る必要があるのが一般的です。」
リレーショナルの世界で電子メール、宛先、発信元などの個々のテーブルを維持する方法と、動的な列のキーと値を使用してカサンドラの世界にいることがいかに簡単かを説明しました。(31 ~ 34 枚のスライド)。
列のキーと値が動的になり、落胆したので、どうすればこの問題を解決できるでしょうか。メールや送信先などごとに個別の列ファミリーを維持する必要がありますか? では、リレーショナルの世界とどう違うのでしょうか? スケーラビリティだけですか?スキーマのないアプローチを進めることはできますか? これは「スキーマはオプションで推奨されますが、必須ではありません」という黄金律ですか?
ありがとう
schema - Cassandra CQL クローン キースペース スキーマ
別のキースペースにインポートするために使用できる Cassandra キースペースのスキーマをダンプしようとしています。たとえば、cassandra キースペースをバックアップして、同じスキーマを持つ別のキースペースに復元します。
私はcqlshを使用しています:
最初に、CLUSTERING ORDER タイムスタンプ DESCENDING 順序でスキーマを作成します。
次に、CQL 関数を使用して、有効な CQL3 と思われるものをダンプします。
それを cqlsh にインポートしようとすると、次のエラーが発生します。
作成された列定義(もともとCLUSTERING ORDER BYで作成されたもの)の解析に失敗していると思います:
特定のキースペースのスキーマをダンプする他の方法はありますか?
map - Astyanax マップ データ アクセス cql3
Astyanax を使用してマップ列の型にアクセスしようとしています。例から、私は以下を取り上げました。行をループしており、データ型 MAP を持つ列 storename を除くすべての列からデータを取得できます。オブジェクトにデータを取得するには、マップの要素をループする必要があると思いますが、列からマップ データを取得する方法がわかりません。
column.getValue を試していますが、getByteBuffer を試しましたが、どちらも機能しません。列オブジェクトを取得でき、ColumnMap インターフェイスがあることがわかりますが、それを拡張または使用するオブジェクトにデータを取得する方法がわかりません。MapSerializer インターフェースも表示されますが、それを実装する方法もわかりません...
getValue() は、2 番目の引数としてシリアライザーを使用し、3 番目の引数としてデフォルトを使用するため、少し混乱しています。MapSerializer を 2 番目の引数として渡すにはどうすればよいですか、または getValue() メソッドを使用する必要がありますか? デフォルトはマップのキー値ですか? マップ内のすべての値を返したい場合はどうすればよいですか? ありがとう。
cassandra - マップから特定の値を選択
20,000 列以上の WIDE 列テーブルを作成しようとしています
最初に私は私が使用することを考えていました:
このテーブルへの挿入は正常に機能します
ただし、個々の詳細を読みたいと思います。
このクエリを実行すると、次のエラーが発生します。
これは機能しますか、それとも別のアプローチが必要ですか?
cassandra - Cassandra:列ファミリの列名を取得しますか?
静的スキーマを持つ特定の列ファミリの列名を取得できる CQL3 のクエリがあるかどうか疑問に思っていますか?
前もって感謝します :)