sql >> データベース >  >> NoSQL >> HBase

HBaseとHive–より良い組み合わせ

    このブログ投稿は、Clouderaとの統合前にHortonworks.comで公開されていました。一部のリンク、リソース、または参照は、正確でなくなる可能性があります。

    コンピューターはますます賢くなっていますが、私たちはそうではありません。

    –Tim Berners Lee、Web開発者

    グーグル、アマゾン、ネットフリックスが私たちを条件付けました。消費者として、私たちはあらゆる動きを予測、提案、予測するインテリジェントなアプリケーションを期待しています。私たちは彼らに何百万もの可能性をふるいにかけ、私たちのニーズに合ったほんのいくつかを提案してもらいたいのです。無限の可能性の世界をパーソナライズされた旅に連れて行ってくれるアプリケーションが必要です。

    これらのパーソナライズされた旅は、許容可能な時間内に膨大なデータ量を保存して理解するためのシステムを必要とします。これは、初日からHadoopの強力なスーツです。

    旅を実現するには、アプリケーションが詳細な分析と直接統合する必要もあります。ほとんどの運用システムはHadoopの外部で実行され、運用データと分析を別々のサイロに配置するため、これは依然として課題です。

    Apache HadoopYARNやApacheSliderなどのテクノロジーは、これらのサイロを解消し始めています。 YARNは、Hadoopリソース分離コントロールを提供します。これにより、許容可能な時間枠で回答を提供しながら、アプリケーションデータをインプレースで詳細に分析できます。また、Apache Sliderを使用すると、長時間実行される運用システムをHadoopに簡単にデプロイできます。

    YARNはHadoopのアーキテクチャの中心であり、インタラクティブSQL、リアルタイムストリーミング、データサイエンス、バッチ処理などの複数のデータ処理エンジンが単一のプラットフォームに保存されたデータを処理できるようにし、分析へのまったく新しいアプローチを解き放ちます。これにより、運用システムと分析システムのシームレスな統合と、企業が最新のデータアーキテクチャ(MDA)を構築できる基盤が提供されます。

    Hadoopの最新技術

    今日のHadoopでは、運用と分析を組み合わせることが可能であり、実際、多くのお客様がそれを行っています。

    必要なものはすでにHadoopにあります:

    • Apache HBaseはHadoop用のNoSQLデータベースであり、高速更新と低遅延データアクセスに優れています。
    • Apache Phoenix(Salesforceによって開発された)は、HBaseのデータ用のSQLスキンです。フェニックスはすでにTephra(Caskから)のようなトランザクションマネージャーとの統合を調査しています。
    • Apache Hiveは、Hadoopの事実上のSQLエンジンであり、最も深いSQL分析を提供し、バッチクエリパターンとインタラクティブクエリパターンの両方をサポートします。 Hive LLAPなどの進歩については、最近のStinger.Nextの投稿を参照してください。

    現在、お客様がこれらのパーツを使用して、詳細な分析を備えたアプリケーションを構築していることがわかります。たとえば、非常に一般的なパターンには次のものがあります。

    • HBaseをオンライン運用データストアとして使用して、時間、日などの現在のパーティションなどのホットデータを高速に更新します。
    • ApachePhoenixを使用してHBaseに対して直接操作クエリを実行します。
    • 標準のETLパターンを使用してHBaseからHiveテーブルにデータをエージングします。
    • Hiveを使用して詳細なSQL分析を実行する

    これは機能しますが、開発者にとって多くの複雑さを生み出します。例:

    • どのSQLインターフェイスをいつ使用しますか? SQLは深いがTPSは低いHiveを使用しますか?または、高いTPSと基本的なSQLでPhoenixを使用しますか?または、両方を使用しますか?
    • 両方を使用する場合、HiveとHBaseの間でデータを共有するにはどうすればよいですか?
    • SLAを満たしながらHBaseとHiveを正常に同じ場所に配置できるように、クラスターを調整するにはどうすればよいですか?

    これらの質問は、Hadoopでの詳細な分析によるアプリケーションの構築を簡素化するために、より深い統合が必要であることを示唆しています。

    HBaseとHive:Better Together

    より深い統合にはどのような機会がありますか?現在、お客様はHBase、Phoenix、Hiveなどを活用して、特注のクローズドループシステムを構築するソリューションをまとめています。 運用データとSQL分析用。使いやすさと、トランザクション、データセンター間のフェイルオーバーなどの追加機能を備えた、すぐに使用できる統合を提供する機会があると考えています。

    Hive、HBase、Phoenixはすべて、非常に活発な開発者コミュニティを持っており、無数の組織で本番環境で使用されています。これらは、Hadoopでのトランザクション処理の基盤と将来になり得る、確かで実績のある運用機能です。

    そのため、成功したStinger Initiativeと同じアプローチを使用して、Hortonworksはこれらのコアプロジェクトにさらに投資し、それらを放棄して最初からやり直すのではなく、勢いをつけようとしています。緊密に統合されたHiveとHBaseを介して、統合された運用および分析エクスペリエンスを促進する改善に投資する予定です。これは、投資を維持し、顧客に真の価値をもたらす方法で、実際の興味深いユースケースに対応します。

    インテリジェントアプリケーションのビジョンの実現に役立つ4つの主要な開発領域があります。

    1。 Hiveを使用した統合SQLレイヤー

    SQLアプリケーションを構築する開発者は、それぞれに長所と短所があるさまざまなSQLソリューションから選択する必要はありません。 HiveのSQL:2011のサポートによって実現され、クエリアクセスパターンに基づいて適切なエンジンを透過的に使用する統合SQLレイヤーを想定しています。

    この組み合わせにより、単一のSQLダイアレクトと単一のコネクタが提供されます。データアーキテクトとDBAは、複数のシステムに接続する必要があるユーザーアプリケーションに負担をかけることなく、使用パターンに基づいてデータを保存する場所を決定できます。

    2。オペレーショナルストアとしてのHBaseの改善

    HBaseは運用ストアとして急速に成熟しており、ますます要求の厳しいワークロードを引き受けることができるようになります。昨年、HBaseはSQLインターフェース、セカンダリインデックス、高可用性を追加しました。これらの機能は成熟し続け、さらにHBaseは、マルチテーブル、クロスデータセンタートランザクションなどのエンタープライズグレードの機能を追加します。

    Omid(Yahoo)、Tephra( Cask)、Trafodion(HP)などのプロジェクトは、HBaseにトランザクションをもたらすためのさまざまなテイクを提供します。 Facebookは、データセンター間のトランザクションを可能にするHydraBaseを開発しました。 FacebookはHydraBaseを大規模にテストしており、オープンソースのHBaseで利用できるように移行しています(HBASE-12259を参照)。これらのシステムが成熟するにつれて、HBaseは最も要求の厳しいワークロードに対応できるようになります。

    3。共有メタデータカタログとトランザクションマネージャー

    HBaseで作成されたデータは、Hiveで自動的に表示されます。その逆も同様です。この機能により、オンラインと分析の間のデータ共有は完全に簡単になります。共有トランザクションマネージャーにより、Hiveの新しいACID機能とマルチテーブルHBaseトランザクションをシームレスに連携させることができます。

    4。 YARN対応の混合ワークロードサポート

    現在、お客様は通常、HBaseとHiveを別々のクラスターにデプロイします。閉ループ分析システムを開発するには、マルチテナント方式で運用ワークロードと分析ワークロードを効果的に組み合わせる必要があります。 YARNを使用すると、YARNのリソース分離とワークロード管理プリミティブを活用して、データへのさまざまな形式のアクセスをサポートすることにより、単一のシステムを効果的に作成できます。 SliderはHBaseをYARNにデプロイするときにこれらを利用しますが、Hive LLAPとTezはネイティブのYARNアプリケーションであるため、予測可能なSLAに従って閉ループ分析システムを実行するプロセスを簡素化します。

    結論

    企業は、Apache HBase、Apache Hive、Apache PhoenixなどのHDPで利用可能な既存のテクノロジーを使用して、現在のデータの高速更新と、膨大な数のデータセットにわたる分析を処理しています。これらはすべてHDFSに保存され、閉ループ分析システムを実現します。 。同じ統合パターンを活用して、ApacheHBaseとApacheHiveを、ユーザーが理解して消費するための新しいテクノロジーではなく、より良いものにすることで、シームレスなエクスペリエンスを顧客に提供したいと考えています。


    1. Sparkシェルを使用したHBase上のSpark

    2. Mongodbは深くネストされたサブドキュメントを更新します

    3. Mongodbは集約フレームワークについて説明します

    4. MongoDB bind_ipは、0.0.0.0に設定されていないと機能しません