10 周年を迎えた Apache HBase!

10 周年を迎えた Apache HBase!

By Krishna Maheshwari

この記事は 2020/05/14 に公開された「Happy Birthday Apache HBase! 10 years of resilience, stability, and performance」の翻訳です。

Apache HBase が Apache のトッププロジェクトに採択され、Cloudera がコントリビューションを初めた 2010 年から 10 年が経ちました。これまでの間に HBase はビッグデータ市場の中で最も大きく人気のオープンソースの一つとなり、最も広まった NoSQL データベースの一つとなりました。

Apache HBase の 10 周年をアナウンスした Apache Software Foundation(英語記事)

HBase はキーバリューと大量のカラムの保持をサポートする NoSQL のデータベースであり、エンタープライズの領域でも幅広く使われています。Cloudera には HBase を本番環境で運用している 500 以上のお客様がいます。そのユースケースはミッションクリティカルのトランザクショナルなアプリケーションから、データウェアハウス、機械学習、そしてデータエンジニアリングと様々です。我々のお客様が HBase を選択するのは、その信頼性(数年来に渡って 100% のアプリケーション稼働時間を記録しているお客様もいます)、安定性、パフォーマンス、そして運用コストが低いためであると考えられます。HBase を単一で構築するだけでなく、お客様によっては SQL ベースのデータベースを構築するため Phoenix と一緒に採用したり、Apache Impala あるいは Apache Hive とともに HBase 上に OLAP システムを構築することもあります。

私(Krishna Maheshwari)は2018年から Cloudera の Operational Database 製品のプロダクトマネージャーをやっており、多くのお客様の声を聞く機会に恵まれてきました。そして、お客様が実に様々な形で HBase を採用していることに感心させられています。分野によらず、そのユースケースの幅は実に広く、多種多様であります。分析を重ねた結果、私はシンプルにユースケースを分類してみました。HBase をミッションクリティカルなシステムで使っているお客様と、そうでないお客様です。ここでのミッションクリティカルなアプリケーションは、トランザクショナルな性質をもち、お客様の収益を支えるものであったり、効率的な事業戦略を支えるものとしましょう。つまり、HBase が停止した場合に事業の収益に影響を与えるようなもの、最悪の場合人の死を招くようなケースがあります。

ミッションクリティカルなユースケースの例:

  • あるヘルスケアソフトウェアベンダーでは、HBase 上で数百のアプリケーションが動いています。なんらかの理由でこれらのアプリケーションが実行に失敗すると、人の死、ヘルスケアコストの増大を招きます。このお客様は計 7000 以上のノードに HBase をデプロイし、70PB 以上のデータを保持しています。
  • ある電話機製造業者では音声アシスタントやその他多くのユースケースにおいて、計 6000 ノード以上の規模で HBase をデプロイしています。
  • ある金融系メディアではトレーダーらに株価の動向やトレンドに関するコンテキストを提供するために HBase を採用し、計 1200 ノード以上保有しています。
  • ある業界大手のメールマーケティングプラットフォームの企業では、約 1000 ノード規模の HBase クラスタを保有しています。
  • ある保険事業者はすべてのクレームに関する情報を約 1000 ノード規模の HBase クラスタに格納し活用しています。
  • 図書館サービスのプロバイダでは、全世界の図書館を跨いだ貸し借りをサポートするため計 400 ノード以上の HBase クラスタを運用しています。
  • グローバルで電力供給を行うある企業では計 400 ノード以上の HBase クラスタ上で、700 万世帯以上のスマートメーターの情報を収集し、電力供給ネットワーク内での修復チームを自動的に構成したり、課金アプリケーションを走らせ、機械学習モデルの継続的なトレーニングを実行しています。
  • インドネシア最大の電話会社である Telkomsel には1億7000万人以上の顧客がいます。ここでは、すべての CRM アプリケーションをレガシーな MPP データベースから HBase + Impala 環境へと移行し、すべての CRM アプリケーションからのクエリに秒以内のレスポンスタイムを提供しています。これらのアプリケーションが対象とするのは顧客の通話履歴やプロファイル、充電情報、データ使用量などです。Impala から HBase にクエリを投げられるようにすることのメリットは、JDBC 経由で ANSI SQL 互換を保証することで CRM アプリケーション側の変更を最小化できることでした。

ミッションクリティカルではないユースケースの例:

  • 個人医療に関するプロダクトを提供するある製造業者では、プロダクトのブランディング、マーケティング情報に関するすべてのデータを管理するために HBase を採用しています。
  • ある半導体製造業者では、製品からのログを HBase に保持し、他の分析システムへ展開しています。
  • あるテレコムプロバイダでは、Hive のディメンションテーブルを HBase に保存しています。

HBase を HBase たらしめているものは、他のオープンソースのビッグデータエコシステムとのインテグレーションでしょう。これはお客様にエンドツーエンドのサポートを提供できることを意味します。アプリケーションがエッジからのデータを必要とするときにも、スケーラブルな AI/ML のモデルを提供する必要がある場合にも、どのような組み合わせでも使えます。

弊社サポートへの問い合わせで私が一番興味深かったものは、ある HBase のお客様がミッションクリティカルなシステムがダウンしたと最高優先度でチケットをあげてきたときのことです。そのお客様は過去一年一度も問い合わせをしておらず、私はそのお客様の重要性を理解していませんでした。このチケットで初めて私が知ったのは、彼らが HBase 上でオムニチャネルマーケティングプラットフォームを動かすために 1000 ノード以上で構成していたことでした。問題の根本原因は、問題発生の 9 ヶ月前に行った設定変更で、クラスタを再起動して初めて問題が浮き彫りになり、Cloudera にヘルプを求めたのでした。

Cloudera は HBase に深く投資を続け、15 名のコミッター & PMC メンバーを抱えています。また、HBase をパブリッククラウド上で PaaS 的にも dbPaaS (訳注:database Platform as a Service)的にもデプロイできるように、同様に力を入れています。

HBase に関するさまざまな証言

このプロジェクトの長い間の投資と歴史を踏まえ、Cloudera 各チームからの経験談を紹介したいと思います。

数年前、私は Apache Hadoop にフォーカスした技術カンファレンスに参加していました。ある晩、部屋に戻ろうと歩いていると、長年にわたってのお客様のグループがテーブルに集まって神妙に話しているところに遭遇しました。現在、彼らは私が一緒に働いた中でも大変に優秀な個々人です。私はぶらぶらとさまよった結果そちらに向かい、こんばんはと伝えようとしました。そのとき気づいたのです。彼らが本番環境の停止状態にあり、解決にあたっているその最中だということに。私は一緒に座り、自分のラップトップをとり出し、その後の数時間にわたって問題の分析をしたり障害対応に取り組みながら、彼らと過ごしたのです。ミッションクリティカルなアプリケーションをサポートするということは、時として英雄的な存在が必要とされます。しかし、時にはその道中で同類に遭遇するのです。
ー シニアソフトウェアエンジニア

多くのビジネスの性質上、ミッションクリティカルなシステムで低レイテンシの要件を満たすためには、スケーラブルであることが必要不可欠です。過去を振り返ってみると、我々のお客様はその難しさに苦労してきました。HBase はその要件を簡単に満たせるように見える要素を兼ね備えていると思います。特に次にとるべきベストアクションまでの時間が短縮化されています
ー プリンシパルソリューションズアーキテクト

三年前、私はエンジニアリングマネージャーとして Cloudera に入社しました。私はこの会社のオープンソースアクティビティを知っていましたし、高校生の頃からの GNU Linux ユーザーでした。しかし、オープンソースを使うこととその一部であることは全くの別物でした。

新入社員としてチームが何をしているのかを理解するため、サポートチケット(訳注:Apache Jira のチケット)が何件かアサインされることになりました。私が知っていたのはたった二つのことだけです。だいぶ前に Java の開発者だった私なら対応できるはずだということ。そして Hortonworks が我々の最大の敵であり、彼らと協業するということは興味深いものであるということ。

そして、その時がきました。私は Apache HBase のチケットを通じて当時 Hortonworks の HBase チームを率いていた Josh Elser と出会うことになるのです。彼が教えてくれたのは、newby 用に用意されたタスク(HBase チームが設定した基準でもありました)が思っていたより難しいものであるということ、オープンソースのコミュニティにおいては、あなたの敵はあなたのベストパートナーでもあるということでした。結局、彼は私が施した変更をコミットしてくれました。

その後の三年間で多くの変化がありました。Cloudera と Hortonworks は合併し、我々は今同じ会社で働いています。しかし Apache と HBase はそのままです。私がコードに取り組む時間は限られていますが、その力は理解しています。そして私が存在すら知らなかったサービスでも使われていて、そして、コードが世界中の人々を集め、協業しあっていることを知っています。コードは会社、大陸、文化の垣根を取り払うのです。
ー エンジニアリングマネージャー

HBase と Phoenix は学習が簡単です。エンタープライズデータハブは HBase を使いやすくし、そして今は Cloudera Operational Database が、HBase を次の10年に連れて行ってくれるのを楽しみにしています。
ー テクニカルカスタマーサクセスマネージャー

過去 9 年にわたり、私はフロントラインサポートから HBase の開発まで経験しました。そして、我々のお客様が POC からラージスケールまで発展するのを見てきました。最も印象的なのは、Cloudera と Hortonworks の合併前に両者のエンジニアがあるクリティカルな問題の解決のために協業していた時のことです。最終的にその成果は HBaseCon で発表され、参加していた最大級の 2 ユーザーから称賛をいただきました。これは現在、世界中の 20 億以上のモバイルデバイスから利用されるクリティカルな機能を支えています。
ー シニアエンジニア

HBase の過去 10 年で印象的だったのは、HBaseCon 2015 で、Google の Carter Page が公式に HBase がいかに優れたプロジェクトであるかを表明したときのことです。
ー シニアエンジニア

私は幸いにもほとんどすべての HBaseCon に参加することができました(ときにはスピーカーとして)。そこで、三つのお気に入りの HBaseCon を紹介します。(1) HBase の多様性: HBase 2.0 が発表されました。解決した JIRA の数だけでなく、US 以外の HBase コミッターの数や PMC メンバー、そして HBase PMC を率いる女性も紹介されました。(2) HBase の勢い: Facebook が彼ら自身の独自フォークから 100% アップストリームへの移行を発表しました。(3) HBase 成功への足掛かり:ある HBaseCon で、ブルームバーグの開発者が read replica という新機能を紹介しました。そしてその後二つ先の HBaseCon で、Apple のエンジニアが read replica を本番運用していることをキーノートで発表しました。
ー シニアシステムエンジニア

我々 Cloudera は、今後も HBase の未来が明るいと考えており、データセンターのプライベートクラウドや、PaaS や dbPaaS といったクラウドに対応した次世代のアプリケーションを支え続けるつもりです。

謝辞

日本語版翻訳のレビューにあたってくれた、Cloudera Japan のTatsuo Kawasaki、Bin Liu、Ryo Suzukiに感謝します。

 

E-book: IoTによる デジタル トランスフォーメーション

Cloudera Japan Marketing
この著者の他の記事

コメントする

あなたのメールアドレスは公開されません。また、コメントにリンクを貼ることはできません。