忍者ブログ

ビーキョウのIT

このブログは99%ののほほんと1%のお菓子でできています。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


Cassandra - CLI操作 -

こんちゃ(´・ω・)ノ

CassandraCLIの操作について記載する。



【ヘルプ】
■ヘルプ一覧表示
[default@unknown] help;
または
[default@unknown] ?;


■ヘルプ詳細表示
[default@unknown] help {コマンド};




【キーススペース操作】
■キースペース一覧
[default@unknown] show keyspaces;


■キースペースの情報参照
[default@unknown] describe sample;
Keyspace: sample:
Replication Strategy: org.apache.cassandra.locator.NetworkTopologyStrategy
Durable Writes: true
Options: [datacenter1:1]
Column Families:


■キースペースを作成
[default@unknown] create keyspace sample;


■キースペースを削除
[default@unknown] drop keyspace sample;


■キースペースに移動(使用するキースペース指定)
[default@unknown] use sample;




【カラムファミリ操作】
■カラムファミリを作成
・通常のカラムファミリを作成
[default@sample] create column family users;

・通常のカラムファミリを作成(UTF-8)
[default@sample] create column family users with comparator=UTF8Type and default_validation_class=UTF8Type and key_validation_class=UTF8Type;

・スーパーカラムありのカラムファミリを作成
[default@sample] create column family users with column_type = 'Super';

・スーパーカラムありのカラムファミリを作成(UTF-8)
[default@sample] create column family users with column_type=Super and comparator=UTF8Type and subcomparator=UTF8Type and default_validation_class=UTF8Type and key_validation_class=UTF8Type;


■カラムファミリの情報参照
[default@sample] describe users;
ColumnFamily: users
Key Validation Class: org.apache.cassandra.db.marshal.BytesType
Default column value validator:org.apache.cassandra.db.marshal.BytesType
Columns sorted by: org.apache.cassandra.db.marshal.BytesType
GC grace seconds: 864000
Compaction min/max thresholds: 4/32
Read repair chance: 0.1
DC Local Read repair chance: 0.0
Populate IO Cache on flush: false
Replicate on write: true
Caching: KEYS_ONLY
Bloom Filter FP chance: default
Built indexes: []
Compaction Strategy: org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy
Compression Options: sstable_compression: org.apache.cassandra.io.compress.SnappyCompressor


■カラムファミリの削除
[default@sample] drop column family users;


■カラムファミリのデータ削除
[default@sample] truncate users;




【カラム操作】
■挿入
・通常のカラムファミリにデータを挿入
[default@sample] set users['rowkey1']['column1'] = 'value1';

・スーパカラムありのカラムファミリにデータを挿入
[default@sample] set users['rowkey1']['spcolumn1']['column1'] = 'value1';

※ カラムファミリーを作成する際にUTF-8を指定しないとここで以下のエラーが発生する。
org.apache.cassandra.db.marshal.MarshalException: cannot parse 'col1' as hex bytes

■件数取得
・ロウキー単位でのカラム件数取得
[default@sample] count users['rowkey1'];

・スーパーカラム単位でのカラム件数取得
[default@sample] count users['rowkey1']['spcolumn1'];


■取得
・ロウキーで取得
[default@sample] get users['rowkey1'];

・ロウキー+カラム名で取得
[default@sample] get users['rowkey1']['column1'];

・ロウキー+スーパーカラム名で取得
[default@sample] get users['rowkey1']['spcolumn1'];

・ロウキー+スーパーカラム名+カラム名で取得
[default@sample] get users['rowkey1']['spcolumn1']['column1'];

・全て取得
[default@sample] list users;


■削除
・ロウを削除
[default@sample] del users['rowkey1'];

・ロウキー+カラム名で削除
[default@sample] del users['rowkey1']['column1'];

・ロウキー+スーパーカラム名で削除
[default@sample] get users['rowkey1']['spcolumn1'];

・ロウキー+スーパーカラム名+カラム名で削除
[default@sample] get users['rowkey1']['spcolumn1']['column1'];




【セカンダリインデックス】
カラムファミリに対してセカンダリインデックスを作成することで、
値を検索してデータを取得することができる。

■セカンダリインデックス作成
・新規カラムファミリにインデックスを作成
カラムファミリ作成時に「column_metadata」オプションを付ける。
[default@sample] create column family users with column_metadata = [ { column_name: column1, validation_class: UTF8Type, index_type: KEYS} ];

・既存カラムファミリにインデックスを作成
[default@sample] update column family users with column_metadata = [ { column_name: column1, validation_class: UTF8Type, index_type: KEYS} ];


■セカンダリインデックスで取得
[default@sample] get users where column1 = 'value1';




【Cassandra】
Cassandra - 概要 -
Cassandra - データモデル -
Cassandra - 読み込み・書き込みのアーキテクチャ -
Cassandra - ディレクトリ構成 -
Cassandra - CLI操作 -
Cassandra - バックアップ・リカバリ -
Cassandra - 使用ポート番号 -



拍手[0回]

PR

COMMENT

Name
Title
Mail
URL
Color
Emoji Vodafone絵文字 i-mode絵文字 Ezweb絵文字
Comment
Pass   コメント編集用パスワード
 管理人のみ閲覧

カレンダー

03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

最新コメント

[11/13 NEX-C3]
[01/24 R]
[07/30 ビーキョウ]
[07/25 unknown]
[06/24 ブログランキング]

最新トラックバック

バーコード

広告

カウンター

ブログ内検索

プロフィール


HN:ビーキョウ
職業:SI屋(PG、SE)
<自己紹介>
ちゃお(´・ω・)ノ
ビーキョウです。
どんどんスキルアップして、 その中で学んだことを忘れないようにメモ代わり的な 感じで記事を書いていこうという考えです。

なので、適当な部分が多々あるとは思いますが、 なにとぞよろしくお願いします
(´ ▽`)

バナーエリア

Copyright ©  -- ビーキョウのIT --  All Rights Reserved
Designed by CriCri / Photo by Geralt / Powered by [PR]
/ 忍者ブログ