Enviar búsqueda
Cargar
H base chapter_5
•
0 recomendaciones
•
592 vistas
M
masahiro_minami
Seguir
Empresariales
Denunciar
Compartir
Denunciar
Compartir
1 de 35
Descargar ahora
Descargar para leer sin conexión
Recomendados
とあるDBAの黒い画面(ターミナル)II
とあるDBAの黒い画面(ターミナル)II
Kazuhiro Yoshikawa
とあるDBAの黒い画面(ターミナル)
とあるDBAの黒い画面(ターミナル)
Kazuhiro Yoshikawa
Czvxcxcg
Czvxcxcg
PAOL - ISCAP
親民黨簡介
親民黨簡介
James Soong
Anualização modo oral 3.ºciclo
Anualização modo oral 3.ºciclo
sandravieira1969
Guia apa 6ta
Guia apa 6ta
Cklaudiia Leal D Saldiiernaa
Climat et saisons
Climat et saisons
Vietnam Original Travel
Lesson plan n° 9 otamendi gomez
Lesson plan n° 9 otamendi gomez
Mileynatica
Recomendados
とあるDBAの黒い画面(ターミナル)II
とあるDBAの黒い画面(ターミナル)II
Kazuhiro Yoshikawa
とあるDBAの黒い画面(ターミナル)
とあるDBAの黒い画面(ターミナル)
Kazuhiro Yoshikawa
Czvxcxcg
Czvxcxcg
PAOL - ISCAP
親民黨簡介
親民黨簡介
James Soong
Anualização modo oral 3.ºciclo
Anualização modo oral 3.ºciclo
sandravieira1969
Guia apa 6ta
Guia apa 6ta
Cklaudiia Leal D Saldiiernaa
Climat et saisons
Climat et saisons
Vietnam Original Travel
Lesson plan n° 9 otamendi gomez
Lesson plan n° 9 otamendi gomez
Mileynatica
Global Rule(変換・フィルターなど)の詳細
Global Rule(変換・フィルターなど)の詳細
QlikPresalesJapan
Apache Hive 紹介
Apache Hive 紹介
あしたのオープンソース研究所
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
miso- soup3
Apexコアデベロッパーセミナー(Apexコード)071010
Apexコアデベロッパーセミナー(Apexコード)071010
stomita
Qlik composeを利用したDWH構築の流れ
Qlik composeを利用したDWH構築の流れ
QlikPresalesJapan
Rawlerフレームワーク(全体)
Rawlerフレームワーク(全体)
Takaichi Ito
svelte-ja.pdf
svelte-ja.pdf
ssuser65180a
Qlik Replicateでのテーブル設定詳細(変換・フィルターなど)
Qlik Replicateでのテーブル設定詳細(変換・フィルターなど)
QlikPresalesJapan
SAP Application(DB)のソースエンドポイントとしての利用
SAP Application(DB)のソースエンドポイントとしての利用
QlikPresalesJapan
Customization of DBIC::Schema::Loader
Customization of DBIC::Schema::Loader
Toru Yamaguchi
Más contenido relacionado
Similar a H base chapter_5
Global Rule(変換・フィルターなど)の詳細
Global Rule(変換・フィルターなど)の詳細
QlikPresalesJapan
Apache Hive 紹介
Apache Hive 紹介
あしたのオープンソース研究所
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
miso- soup3
Apexコアデベロッパーセミナー(Apexコード)071010
Apexコアデベロッパーセミナー(Apexコード)071010
stomita
Qlik composeを利用したDWH構築の流れ
Qlik composeを利用したDWH構築の流れ
QlikPresalesJapan
Rawlerフレームワーク(全体)
Rawlerフレームワーク(全体)
Takaichi Ito
svelte-ja.pdf
svelte-ja.pdf
ssuser65180a
Qlik Replicateでのテーブル設定詳細(変換・フィルターなど)
Qlik Replicateでのテーブル設定詳細(変換・フィルターなど)
QlikPresalesJapan
SAP Application(DB)のソースエンドポイントとしての利用
SAP Application(DB)のソースエンドポイントとしての利用
QlikPresalesJapan
Customization of DBIC::Schema::Loader
Customization of DBIC::Schema::Loader
Toru Yamaguchi
Similar a H base chapter_5
(10)
Global Rule(変換・フィルターなど)の詳細
Global Rule(変換・フィルターなど)の詳細
Apache Hive 紹介
Apache Hive 紹介
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
Hokuriku.NET ASP.NET MVC入門 「実践」 20120825
Apexコアデベロッパーセミナー(Apexコード)071010
Apexコアデベロッパーセミナー(Apexコード)071010
Qlik composeを利用したDWH構築の流れ
Qlik composeを利用したDWH構築の流れ
Rawlerフレームワーク(全体)
Rawlerフレームワーク(全体)
svelte-ja.pdf
svelte-ja.pdf
Qlik Replicateでのテーブル設定詳細(変換・フィルターなど)
Qlik Replicateでのテーブル設定詳細(変換・フィルターなど)
SAP Application(DB)のソースエンドポイントとしての利用
SAP Application(DB)のソースエンドポイントとしての利用
Customization of DBIC::Schema::Loader
Customization of DBIC::Schema::Loader
H base chapter_5
1.
HBase
The Definitive Guide 5.Client API : Administrative Features
2.
この章について この章では、スキーマに関する説明と、実際にスキーマやデータを 操作する為のAPIに関して説明している。 ● Schema Definition
○ Tables ○ Table Properties ○ Column Families ● HBaseAdmin ○ Basic Operations ○ Table Operations ○ Schema Operations ○ Cluster Operations ○ Cluster Status Information
3.
Schema Definition :
Tables HBaseのデータは全てテーブルに格納 テーブルはHTableDescriptorクラスを用いて操作 テーブルにはカラムファミリを定義 この章で説明する大半のクラス(APIを提供する)には、パラメータなしのコンストラクタ が存在する。 これは、HadoopのWritableインターフェースを実装する事に起因する。 リモート間の通信を行うRPCフレームワークはWritableインターフェースを利用してお り、write, readFieldsメソッドを実装している。 カスタムのHBaseのExtensionを作成する場合は、以下のルールを守る ● 送信/受信双方のRPC通信チャネルを利用可能にする。 ● Writableインターフェースのwrite(), readFields()を実装する。 ● パラメータのないコンストラクタを持つ。
4.
Schema Definition :
Tables HTableDescriptor HtableDescriptorインスタンスかテーブル名から、テーブルを作 成 パラメータなしのコンストラクタは、デシリアライズ用なので直接利 用するべきではない テーブル名はファイルパスで利用される為、ファイルパスに利用 できる文字でのみ指定可能 カラム志向のHBaseでは、RDBMSのように多くのテーブルに分け ず、1つのテーブルにたくさんの詳細情報を詰める RDBMSの正規化はHBaseには当てはまらない
5.
Schema Definition :
Table Properties Name テーブル名の取得・設定 ※テーブル名は[a-zA-Z_0-9-.]が利用可能だが、[.-]を最初にはできない。 Column families カラムファミリの追加・存在確認・取得・削除 カラムファミリはHColumnDescriptorを使って扱う HColumnDescriptorに関しては後述(本ではP.212)
6.
Schema Definition :
Table Properties Maximum file size リージョンの最大ファイルサイズを取得・設定(バイト単位) ※「Maxmum file size」とあるが、実際には、カラムファミリ毎作成されるファイルサイ ズではなく、ストアのサイズを指定するので「maxStoreSize」の方が相応しい。 設定したサイズを超えるとリージョンのスピリットが発生 デフォルトは256MBになっているが、システム毎に適切なサイズ を検討する事が必要 Read-only テーブルの読込専用を設定・状態確認 デフォルトはfalse
7.
Schema Definition :
Table Properties Memstore flush size データ書込時にディスクに描き込まず、メモリで処理するデータサ イズの取得・設定 デフォルトは64MB 容量を大きくすれば、パフォーマンスは良くなるが、 障害時にフ ラッシュされていないデータをWALから復旧する作業に時間がかか る。 Deferred log flush WALの遅延書き込みを利用するかの設定 デフォルトはfalse
8.
Schema Definition :
Table Properties Miscellaneous option その他設定の取得・設定・削除 ByteかStringでデータは設定するが、内部的には ImmutableBytesWritableで保持 例えば、Coprocessorの読み込み設定などに利用
9.
Schema Definition :
Column Families HColumnDescriptorを使って、カラムファミリに対しての設定を行う ※カラムファミリのパラメータを定義している為、HColumnDescriptorというよりは、 HColumnFamilyDescriptorの方が相応しい。 カラムファミリーへの設定は、それに含まれる全てのカラムに適用さ れる。 カラムは任意の数作成でき、以下のように「:」区切りでカラムファミ リとカラムクオリファイアを分割して表現する。 family:qualifier
10.
Schema Definition :
Column Families カラムファミリは、ディレクトリパスに利用される為、表示可能な文字 列で指定しなければならない。 ※クオリファイアは省略して、カラムファミリだけで扱う事も可能です。 他のカラムと同様に読み書きが可能であるが、他と区別する為にそれ以外のカラム にはクオリファイア名を付ける必要がある。 HColumnDescriptorのインスタンスは、引数なし、カラムファミリ名、 カラムファミリの設定から作成する。
11.
Schema Definition :
Column Families Name カラムファミリ名の取得 ※カラムファミリ名の変更はできない。 カラムファミリを変更したい場合は、カラムファミリを新規で追加し、データのコピー を行うのが一般的である。 ※カラムファミリ名には、[:/u0000-u001Fu007F-u009F]とISOに制御文字は利 用できず、[.-]を最初にはできない。 Maximum versions データを保持する世代数の取得・設定 デフォルト3で最小は1
12.
Schema Definition :
Column Families Compression 圧縮アルゴリズムの設定・確認 圧縮アルゴリズムは、[NONE][GZ][LZO][SNAPPY]の4種類が設 定でき、デフォルトは[NONE]、[NONE]だと圧縮なし、それ以外は、 記載されている圧縮アルゴリズムが利用される。 圧縮の詳細は本のP.424参照
13.
Schema Definition :
Column Families Block size ブロックサイズの取得・設定 HBaseの保存ファイルは、RDBMSのページ同様に細かいブロッ クに分割されて管理 デフォルトは64KBで、バイト単位で設定 ※HFileとHDFSのブロックサイズには重要な違いがある。 MapReduceは分散・並列処理の為に大きなサイズ(デフォルト64MB)を指定してい るが、HBaseのストレージファイルは効率的にロードし、ブロック操作のデータをキャッ シュする為に、細かいサイズ(デフォルト64KB)を指定する。
14.
Schema Definition :
Column Families Block cache HBaseのブロックキャッシュを有効を取得・設定 HBaseは効率的なI/Oを行う為、一度読み込んだブロックを キャッシュとしてメモリに保持し、再度読みこむ際はキャッシュを利 用 デフォルトはtrueになっているが、特定のカラムファミリに対して、 シーケンシャルリードを行う場合には、設定をfalseにした方がよい。
15.
Schema Definition :
Column Families Time-to-live データの生存期間の取得・設定 指定された時間経過し、メジャーコンパクションが発生した際に データを削除 デフォルト値は、Ingteger.MAX_VALUEになっており、この設定の 際は、メジャーコンパクションが発生してもデータは削除されない
16.
Schema Definition :
Column Families In-memory ブロックキャッシュのメモリロードの取得・設定 デフォルトはFalseで、Trueに設定された場合、カラムファミリの全 てのブロックがメモリにロードされるかどうかは保証されない この設定はユーザテーブルのパスワードなど小さいカラムファイ ミリには適する Bloom filter Bloom filterの取得・設定 デフォルトは[NONE]、[NONE][ROW][ROWCOL]が設定可能 特定のアクセスパターンにおいて、データ参照時間が向上 詳細は本のP.377を参照
17.
Schema Definition :
Column Families Replication scope レプリケーションの有効化の取得・設定 デフォルトは0で、レプリケーションしない レプリケーションの詳細は本のP.462参照 isLegalFamilyName カラムファミリ名のチェック ユーザがカラムファミリを入力するシステムの場合に、名前の正 当性を確認するのに利用
18.
HBaseAdmin HBaseAdmin 管理系のタスクを実行するクライアントAPI
RDBMSのDMLと類似した機能 テーブル・カラムファミリの作成・存在確認・定義変更削除などの 操作が可能
19.
HBaseAdmin : Basic
Operations クライアントAPIを利用するには、HBaseAdminクラスのインスタンス を生成する必要がある ※このセクションのほとんどのメソッドはIOException(それと継承したExceptionを含 め)かInterruptedExceptionをThrowしますが、それは省略している。 既存のCofigurationインスタンスとAPIを用いれば、クライアントAPI 同様、クラスタの利用しているZookeeperの定数が分かる HBaseAdminのインスタンスは不要になった場合、削除が必要
20.
HBaseAdmin : Basic
Operations Abort 強制中止の実行 Frameworkから自動で呼ばれる為、ユーザが直接呼ぶべきでは ない getMaster マスタサーバに直接通信するRPCプロキシのインスタンスである HMasterInterfaceを返却 HBaseAdminクラスは、HMasterInterfaceのラッパーで提供する 機能は全て利用可能 ※getMasterから返るHMasterInterfaceは直接利用せず、HbaseAdminクラスを利用 する。
21.
HBaseAdmin : Basic
Operations isMasterRunning マスタサーバの稼働確認 getConnection 本のP203にある、HConnectionインスタンスを返却 getConfiguration HBaseAdminインスタンスを生成する為のConfigurationインスタ ンスを返却 close HBaseAdminのリソース解放とマスタサーバとの接続断
22.
HBaseAdmin : Table
Operations CreateTable HTableDescriptorを用いて、テーブルを作成 例にあるように、StartKey, EndKey, リージョン数を指定して CreateTableを実行する事も可能 StartKey, EndKeyは数値として解釈され、EndKeyはStartKeyよ り大きい値を設定 リージョン数は3以上を設定 同様にSplitKeyを指定して、テーブルを作成する事も可能 SplitKeyはByte列の配列で指定
23.
HBaseAdmin : Table
Operations CreateTableAsync HTableDescriptorを用いて、非同期にテーブルを作成 ※大半のテーブル関連の管理APIは非同期に実行される。 同期メソッドも実際には、非同期のメソッドのラッパーで非同期メソッドの結果を ループで待ち続けているだけである。
24.
HBaseAdmin : Table
Operations TableExists listTables テーブルの存在確認・一覧取得 deleteTable テーブルの削除
25.
HBaseAdmin : Table
Operations disableTable テーブルを利用不可に設定 テーブルの削除を行う前にこの操作を行う事が必要 enableTable 利用不可にしたテーブルを再度利用可能に設定
26.
HBaseAdmin : Table
Operations isTableEnabled isTableDisabled isTableAvailabled テーブルの利用可否や有効かどうかの確認 EnableとAvailableの違いは、disable状態でも物理的に存在して いて、ステータスに問題がなければavailable
27.
HBaseAdmin : Table
Operations modifyTable テーブルの設定を変更 HTableDescriptorを取得し、その設定を変更し、modifyTableに てテーブルにHTableDescriptorを設定 ※modifyTableは同期処理のメソッドはなく、必ず非同期で処理される。 変更が全てのサーバに適用されたかは、getHTableDescriptorで取得したインタン スとの比較で判断する。
28.
HBaseAdmin : Schema
Operations HBaseAdminには、modifyTable以外にもテーブルスキーマの設定 を変更するメソッドがある。 ただし、modifyTableと同様に、テーブルの状態がDisabledに設定さ れている必要がある。 addColumn deleteColumn modifyColumn カラムファミリの追加・削除・変更
29.
HBaseAdmin : Cluster
Operations HBaseAdminのクラスタ関連のAPIは、ステータス確認・テーブルや リージョンでのタスク実行 ※多くの操作は、AdvancedUser向けなので利用には要注意 CheckHBaseAvailable 利用しているクライアントアプリケーションが、リモートサーバと通 信できるか確認 戻り値はvoidになっており、利用不可能な場合には、Exceptionが Throwされ、利用可能時は正常終了
30.
HBaseAdmin : Cluster
Operations getClusterStatus クラスターの情報取得 クラスターの情報にアクセスする為のClusterStatusクラスに関し ては後述 closeRegion リージョンサーバにデプロイされているリージョンを閉じる 有効なテーブルのリージョンに対して、マスタから閲覧できない状 態にする
31.
HBaseAdmin : Cluster
Operations flush リージョンサーバのMemStoreに保持されてflushされていない データをflush compact 指定リージョン・テーブルでコンパクションを実行 コンパクションは長い時間がかかる可能性がある為、必ず非同 期に実行 テーブル名が指定された場合、該当テーブルの全リージョンでコ ンパクションを実行
32.
HBaseAdmin : Cluster
Operations majorCompact 指定リージョン・テーブルでメジャーコンパクションを実行 compactと同様、非同期で、テーブル名指定は、全リージョンが 対象 split 指定リージョン・テーブルでスピリットを実行 テーブル名が指定された場合、該当テーブルの全リージョンでス ピリットを実行 splitPointにて、RowKeyを指定する事が可能だが、不正な RowKeyが指定された場合は、Exceptionが発生
33.
HBaseAdmin : Cluster
Operations assign unassign リージョンの設置・削除を実行 forceオプションを付けると、既にassign/unassignを実行していて も、さらに同じ操作を実行 move リージョンを指定したサーバへ移動 destServerNameにNullを設定した場合は、ランダムなサーバへ 移動
34.
HBaseAdmin : Cluster
Operations balanceSwitch バランサー機能のON/OFFを設定 balancer バランサー機能がONの時に実行されると、リージョンのバランシ ングを実行 バランシングに関しては、本のP.432を参照 shutDown stopMaster stopRegionServer クラス全体・マスタ・リージョンサーバを停止
35.
HBaseAdmin : Cluster
Status Information getClusterStatusで取得した、ClusterStatusのインスタンスを利用 する事で、マスタサーバの保持するクラスタ情報を取得可能 setから始まるsetterメソッドも存在するが、ClusterStatusのインスタ ンスのコピーでしかない為、変更する意味は特にない ClusterStauts, ServerName, HServerLoad, RegionLoadクラスの 各メソッドで取得可能 バージョン・ID・名称・サイズなどの各種情報を取得可能
Descargar ahora