HBaseのシリーズ(5) - HBaseの一般的なシェルコマンド

まず、基本的なコマンド

HBaseのシェルを開きます。

# hbase shell

1.1ヘルプの表示

# 获取帮助
help
# 获取命令的详细信息
help 'status'

1.2 Viewサーバのステータス

status

1.3バージョン情報

version

テーブルの上に第二に、操作

表2.1すべてを表示します

list

2.2テーブルの作成

構文:「テーブル名」を作成、「グループ名欄1」、「2列ファミリ名」、「列名のN」

# 创建一张名为Student的表,包含基本信息(baseInfo)、学校信息(schoolInfo)两个列族
create 'Student','baseInfo','schoolInfo'

2.3ビューの基本情報テーブル

フォーマット:DESC「テーブル名」

describe 'Student'

表2.4有効/無効

このテーブルは、is_enabledや障害のチェックリストであることをis_disabledかどうかを有効/無効にすると、あなたが有効にすることができます無効にします

# 禁用表
disable 'Student'
# 检查表是否被禁用
is_disabled 'Student'
# 启用表
enable 'Student'
# 检查表是否被启用
is_enabled 'Student'

2.5テーブルが存在チェック

exists 'Student'

2.6テーブルの削除

# 删除表前需要先禁用表
disable 'Student'
# 删除表
drop 'Student'

第三に、追加および削除

3.1列ファミリを追加

フォーマット:ALTER「テーブル」、「グループ名の列」

alter 'Student', 'teacherInfo'

3.2列ファミリを削除します。

フォーマット:ALTER 'テーブル'、{NAME => 'グループ名の列'、METHOD => 'を削除' }

alter 'Student', {NAME => 'teacherInfo', METHOD => 'delete'}

列ファミリバージョン3.3のストレージの制限を変更します

デフォルトでは、データの複数のバージョンを格納するために必要に応じて、データのバージョンを格納するだけ列グループは、必要が列グループのプロパティを変更します。修正後できるdescコマンドを表示します。

alter 'Student',{NAME=>'baseInfo',VERSIONS=>3}

3.4データの挿入

フォーマット:PUT「テーブル」、「OKボタン」、「グループ列:列」、「値」

注意:新しいデータ行キー、列ファミリ名、列名が、同等の更新元のデータと同一である場合

put 'Student', 'rowkey1','baseInfo:name','tom'
put 'Student', 'rowkey1','baseInfo:birthday','1990-01-09'
put 'Student', 'rowkey1','baseInfo:age','29'
put 'Student', 'rowkey1','schoolInfo:name','Havard'
put 'Student', 'rowkey1','schoolInfo:localtion','Boston'

put 'Student', 'rowkey2','baseInfo:name','jack'
put 'Student', 'rowkey2','baseInfo:birthday','1998-08-22'
put 'Student', 'rowkey2','baseInfo:age','21'
put 'Student', 'rowkey2','schoolInfo:name','yale'
put 'Student', 'rowkey2','schoolInfo:localtion','New Haven'

put 'Student', 'rowkey3','baseInfo:name','maike'
put 'Student', 'rowkey3','baseInfo:birthday','1995-01-22'
put 'Student', 'rowkey3','baseInfo:age','24'
put 'Student', 'rowkey3','schoolInfo:name','yale'
put 'Student', 'rowkey3','schoolInfo:localtion','New Haven'

put 'Student', 'wrowkey4','baseInfo:name','maike-jack'

3.5指定された行の指定された行、列ファミリーおよび列情報を取得します

# 获取指定行中所有列的数据信息
get 'Student','rowkey3'
# 获取指定行中指定列族下所有列的数据信息
get 'Student','rowkey3','baseInfo'
# 获取指定行中指定列的数据信息
get 'Student','rowkey3','baseInfo:name'

3.6行のカラムを指定し、指定された行を削除

# 删除指定行
delete 'Student','rowkey3'
# 删除指定行中指定列的数据
delete 'Student','rowkey3','baseInfo:name'

第四に、クエリ

2つの基本的な方法でHBaseのアクセスデータ:

  • データ指定のrowKeyを取得:メソッドを取得します。

  • 指定されたデータの取得条件:スキャン方法。

scan開始と終了のパラメータは、範囲内のすべてのデータにアクセスするために提供することができます。特別なスキャンを開始し、終了すると本質的に同じで取得します。

4.1Get問い合わせ

# 获取指定行中所有列的数据信息
get 'Student','rowkey3'
# 获取指定行中指定列族下所有列的数据信息
get 'Student','rowkey3','baseInfo'
# 获取指定行中指定列的数据信息
get 'Student','rowkey3','baseInfo:name'

4.2全体のデータテーブルを照会します

scan 'Student'

4.3クエリは、データの列クラスタを指定します

scan 'Student', {COLUMN=>'baseInfo'}

4.4条件お問い合わせ

# 查询指定列的数据
scan 'Student', {COLUMNS=> 'baseInfo:birthday'}

カラムに加え(COLUMNS)外部修飾子、HBaseの支持体Limit(クエリ結果の行の数を制限する)、 STARTROWROWKEYこれは、に基づいて、第1になり、行を開始するkey位置指定region再度スキャンした後、)、 STOPROW(エンドライン)、 TIMERANGEタイムスタンプ制限された範囲)、 VERSIONS(バージョン番号)、及びFILTER(条件付きのラインフィルタ)等が挙げられます。

代表として始まり、データ名の2列、3列の下で、最新バージョンを検索しますrowkey2rowkey

scan 'Student', {COLUMNS=> 'baseInfo:name',STARTROW => 'rowkey2',STOPROW => 'wrowkey4',LIMIT=>2, VERSIONS=>3}

4.5条件フィルタ

条件のフィルタ範囲は、フィルタリングに設定することができます。我々は、すべてのデータの値を照会する場合は24に等しくなります。

scan 'Student', FILTER=>"ValueFilter(=,'binary:24')"

エール値は、すべてのデータが含まれています。

scan 'Student', FILTER=>"ValueFilter(=,'substring:yale')"

の誕生のために列名を接頭辞:

scan 'Student', FILTER=>"ColumnPrefixFilter('birth')"

FILTERフィルタ条件を組み合わせるブラケット複数のサポート、AND、及びOR:

# 列名中的前缀为birth且列值中包含1998的数据
scan 'Student', FILTER=>"ColumnPrefixFilter('birth') AND ValueFilter ValueFilter(=,'substring:1998')"

PrefixFilter の決意のためのrowKey接頭辞:

scan 'Student', FILTER=>"PrefixFilter('wr')"

もっと大きなデータ系列は、GitHubのオープンソースプロジェクトを見つけることができますビッグデータははじめに

おすすめ

転載: www.cnblogs.com/heibaiying/p/11406896.html