私はCassandraで作業を始めました。 私は二次キーの概念と少し混乱しています。カッサンドラのテーブルにセカンダリインデックスを作成する
私が理解している定義からは、ソートされていないテーブルの非キー属性に対するインデックス付けはセカンダリインデックスです。
だから、私はこの
CREATE INDEX IF NOT EXISTS user_name_index ON userschema.user (name)
のようなインデックスを作成した場合、これは二次的指標でなければなりませんので、このテーブルに
CREATE TABLE IF NOT EXISTS userschema.user (id int,name text, address text, company text, PRIMARY KEY (id, name))
を持っています。
しかし、私の要件は、カラムname、id、companyを含むインデックスを作成することです。
Cassandraでこのようなセカンダリインデックスを作成するにはどうすればよいですか?
私はthisというリンクを持っていますが、この短いものを定義していますが、どのようにこれらの二次インデックスがテーブルではありませんか?
上記のユーザーテーブルは、実際の例ではありません。私はカサンドラ3.0.9
は何のクエリあなたがこのテーブルに対して実行しようとしている私を修正?クエリは通常、データモデルの決定に役立ちます。 PSAとして – mikea
ちょっと:ここで二次インデックスを避けたいと思うかもしれません。それらは非常に特殊なユースケース(カーディナリティー=ノード数)のために作られています。多くのリレーショナルDBの人の索引のようなものはありません。代わりに、新しいテーブルを作成して両方に書き込みます。 –