【LINE DEV DAY 2017】HBase at LINE 2017 #line_devday
LINEのトラフィックを支えるHBaseという技術について
LINEのメッセージングサービスにおけるHBaseエンジニアリングについて
運用環境の改善、HBase 0.90.6から1.2.5へのサービス無停止でのアップグレード、HBaseの新機能の活用事例などについて
HBaseについて
LINEで使われているOSSのNoSQLデータベース
どこで使っているか?
Messaging
GAME Platform
Timeline
Statistics
どんなデータを入れているか?
user
addressbook
backup
など
オペレーション
HBase運用専用チームはいない
Operator = Developer
モニタリング環境
プロメテウス(Prometheus)を使用している
クラスターごとのPrometheusを集めるためのPrometheusも使用している。(こちらはポーリング間隔は長めにしている)
HBase Versions
最新版は1.3。
今までLINEでは、安定版0.90.6-cdh3u5を使用していて、順次1.2へアップグレードしている。
バージョン切り替え手順
dual write (0.9と1.2のDB両方に書き込み)
bulk copy (0.9のデータを1.2にコピー)
testing phase (移行したデータの確認)
HBaseアップグレード当たって
パフォーマンスの測定
Kafka -> Shadow環境に本番運用とほぼ同じ負荷で測定可能にしている。
HBase 0.90から1.20への切り替え
HBaseクライアントにパッチを当てた。
2~3週間はちゃんと動いていたが、徐々にレスポンスタイムが悪くなっていった。
アップグレードして良かったか?
BucketCache
昔はCacheをJVMのヒープに持っていたが、1.2からはヒープ外に持つようになったため、GCの対象にならずパフォーマンスがあがった。
しかし、移行は簡単ではなく色々な課題を解決する必要があった。
まとめ
機能面でも性能面でも恩恵を受けている。
もうすぐHBase 2.0が出るという噂。
今後も継続してアップグレードしていく必要がある。
Author And Source
この問題について(【LINE DEV DAY 2017】HBase at LINE 2017 #line_devday), 我々は、より多くの情報をここで見つけました https://qiita.com/asksaito/items/11348a0fafe38aa000f5著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .