Mais conteúdo relacionado
Semelhante a 5分でわかる Apache HBase 最新版 #hcj2014 (18)
Mais de Cloudera Japan (20)
5分でわかる Apache HBase 最新版 #hcj2014
- 3. 3
Who
am
I?
• 嶋内 翔(しまうち しょう)
• Clouderaの社員
• email:
sho@cloudera.com
• twiHer:
@shiumachi
- 8. 8
HBaseの復旧時間
CDHバージョン
HBaseのベースバージョン
障害発生時の復旧時間
CDH3
0.90
数時間内の復旧
CDH4
0.92
/
0.94
数分以内の復旧
CDH5.0
0.96
書き込みは数秒以内、読
み出しは10秒以内の復旧
HBaseは復旧時間が最大の問題の一つだった
- 9. 9
Mean
Time
To
Recovery
(MTTR)
平均修復時間
• そもそも分散システムではHW障害はよくある話
• 障害から自動的に復旧するまでの時間がダウンタイ
ムとなる
復旧
通知
修復
検知
リージョン障害
リージョン復旧済
クライアント検知済
リージョン復旧済
クライアント未検知
- 10. 10
分散ログ分割
(HBase
0.92)
• HBaseにおける修復は、「分割」「アサイン」「リプレイ」の3
フェーズ
• 0.90
まではマスターだけでログ分割を行っていた
• 0.92
からはRSで分散処理できるようになった
• 修復時間短縮に大きく貢献
復旧
リプレイ
アサイン
分割
リージョン障害
リージョンで
読み書き可能
hdfs
検知
hdfs
hdfs
- 11. 11
障害の即時通知・検知(HBase
0.96)
• HMasterの障害を即座に通知
• RSの障害を即座に通知
• 復旧後、クライアントに通知
復旧
リプレイ
アサイン
分割
リージョン障害
リージョンで
読み書き可能
hdfs
検知
hdfs
hdfs
- 12. 12
分散ログリプレイ(HBase
0.96)
• アサインを先にして分割+リプレイをまとめて実行
• ログ分割のworkerが新しいリージョンにWALを書きこむ
• このときリージョンは書き込み可能になる(読み込みは不
可)
• 書き込み可能になるまでの時間を大幅に短縮
• 0.96
ではデフォルトオフ
• 1.0
ではデフォルトオンになる予定
復旧
分割とリプレイ
アサイン
リージョン
障害
リージョンで読み書き可能
リージョンで
書き込み可能
hdfs
検知
- 13. 13
名前空間とマルチテナント
• 名前空間の導入
(0.96)
• ns1:t1
という形式でテーブルを記述できる
• .META.
テーブルは hbase:meta
に変更になった
• マルチテナント用機能を開発中
• セキュリティ(名前空間毎のACL)
(0.96)
• クォータ
• リソース分割
• etc.
Namespace
blue
Namespace
green
Namespace
orange
- 14. 14
uber
hbck
(0.92
/
0.94)
• hbck
の機能が大幅強化
• HDFS上のデータからmetaを復旧
• HDFS上のリージョンの「穴」やオーバラップを復旧
• .regioninfo
をロストしたリージョンの復旧
• etc.
• hbase
hbck
-‐fix
はもう古い
• hbase
hbck
-‐repair
を使いましょう
- 15. 15
その他諸々の機能
• HBase
テーブルスナップショット (0.94)
• 任意のバージョンに戻すことが可能
• HBase
レプリケーション
(0.92)
• 別のHBaseクラスタに非同期でレプリケーションする
• オンラインリージョンマージ
(0.96)
• オンラインスキーマ変更
(0.96)
• コンパクションポリシーの変更
(0.96)
• かしこくなった
• -‐ROOT-‐
が削除された
(0.96)
- 16. 16
HBase
0.98
• リバーススキャン
• セルレベルのアクセスコントロール
• 透過的サーバサイド暗号化
• スナップショットに対するMapReduce
• Stripe
compacaon