Cloud native open source big data application practice

オープンソース技術とクラウドネイティブの高度な融合により、Alibaba Cloud のオープンソースビッグデータプラットフォームは、機能、使いやすさ、セキュリティの面で豊富な実践経験を蓄積してきました。数千社の企業にサービスを提供し、コアビジネスの強みに集中し、開発サイクルを短縮し、運用保守の難易度を下げ、さらなるビジネスイノベーションを拡大できるよう支援しています。10 月 29 日、Alibaba Cloud は「クラウドネイティブオープンソースビッグデータプラットフォームの構築方法」のソリューションを発表し、Alibaba Cloud、Weimiao、InMobi の技術専門家を招き、クラウド実践を紹介しました。

本記事では、データレイク、リアルタイムデータウェアハウス、検索分析などのシナリオにおけるクラウドネイティブオープンソースビッグデータアプリケーションの実践について共有します。

ゲストスピーカー:Liu Yuquan 氏、Alibaba Cloud インテリジェントビッグデータソリューションアーキテクト

動画視聴先:https://yqh.aliyun.com/live/bigdataop

1. はじめに

さまざまな業界からのデータが増加する中、自社構築のビッグデータインフラストラクチャでは、調達サイクルの長期化、運用保守コストの増大、技術スタックの複雑化など、さまざまな課題が露呈してきました。クラウドの選択は、こうした課題に対処するためのより良い選択肢となります。クラウド上では、強力なインフラストラクチャ機能だけでなく、豊富なエコシステムのコンピューティングおよびストレージの柔軟性を享受でき、企業のコスト削減と効率向上を実現できます。

インターネットアプリケーションでは、一般的にコンテンツレコメンデーション、リアルタイムリスク管理、情報検索など、さまざまなソリューション要件があり、これらを実現するには強力なコンピューティングおよびストレージ機能が必要です。



2. クラウドネイティブオープンソースビッグデータ統合プラットフォーム

クラウドネイティブオープンソースビッグデータ統合プラットフォームは、ECS や OSS などの仮想マシンおよびクラウドストレージをはじめとするクラウドネイティブリソースを基盤に、クラウド上に構築された IaaS インフラストラクチャです。このプラットフォームは、弾力的スケーリング、インテリジェント診断、データ開発、モニタリング、アラートなどの基本機能を提供します。

同時に、クラウドネイティブビッグデータプラットフォーム全体の製品は、オープンソースの Apache Hadoop エコシステムおよび K8S リソース管理プラットフォームを基盤に構築でき、製品体系はおおまかに以下の 2 つのカテゴリーに分けられます。

・セミマネージド型

E-MapReduce (以下 EMR) 製品に代表される形態です。EMR は、Hive、Spark、Kafka、Presto、ClickHouse などの主要なオープンソースビッグデータコンポーネントをユーザーに提供します。ユーザーはこれらを自由に組み合わせて使用でき、EMR は製品管理機能を提供してオープンソースビッグデータ製品の利用を容易にします。

・フルマネージド型

Flink、Spark、Hadoop、Kafka、Elasticsearch などの主要コンピューティングエンジンまたはプラットフォームが、完全に管理されたサービスを提供します。フルマネージドのリアルタイムコンピューティングプラットフォーム Flink、Spark の Databricks、Cloudera CDP プラットフォーム、および Alibaba Cloud Elasticsearch は、ユーザーごとに異なるオープンソース製品の利用方法を提供します。

同時に、Alibaba Cloud には Data Lake Formation (DLF) という一元化製品もあり、統合メタデータアクセスおよび管理機能を提供し、他の製品と組み合わせて包括的なデータレイクソリューションを実現します。

3. クラウド上のオープンソースビッグデータ

オープンソースビッグデータプラットフォーム E-MapReduce

ビッグデータクラウドでは主にオープンソースビッグデータプラットフォーム EMR を使用します。EMR は Alibaba Cloud プラットフォーム上で動作するビッグデータ処理システムソリューションです。オープンソースコンポーネントを基盤に最適化と機能強化が行われ、パフォーマンスはオープンソース版を大幅に上回っています。また、オープンソース版のアップグレードに追従し、さまざまなコンポーネントに対応し、互換性を確保しつつ十分な安定性を備えています。

・オープンソースビッグデータコンポーネントとの互換性

Spark、Hadoop、Kafka などのコンポーネントについて、オープンソース版を基盤に最適化と機能強化が行われ、パフォーマンスが大幅に向上しています。

・セミマネージド型

セミマネージドアーキテクチャでは、ユーザーは高い自律性と制御性を保持し、既存のビッグデータリソースとシームレスに移行できます。

・クラウドネイティブ

Alibaba Cloud のネイティブエコシステムは、コンピューティング、メモリ、汎用、ビッグデータ、GPU ヘテロジニアスコンピューティングなど、数十種類の ECS インスタンスファミリーをサポートしています。さまざまなビッグデータシナリオに対応し、分単位でのクラスター作成と拡張が可能です。また、柔軟なスケーリングやスポットインスタンスもサポートしています。

ビッグデータシナリオでは、一般的にデータ量に明確なピークとオフピークがあります。たとえば、早朝のタスクでは比較的高い SLA 保証が必要ですが、日中はリソースのオフピークとなり、主に開発タスクを処理します。弾力的なスケールダウンにより、コスト削減効果を実現できます。

・クラウドネイティブ対応のオブジェクトストレージ OSS

JindoFS を採用して OSS のパフォーマンスを加速し、データストレージのコストを削減します。他の Alibaba Cloud 製品との深い統合により、EMR は DataWorks 上でジョブコンピューティングおよびデータストレージのエンジンとして使用できます。DLF と統合してデータレイクを構築し、データレイクシナリオでの複数エンジン間の統一メタデータ管理を実現できます。

・エンタープライズ機能

EMR の APM は、クラスター、ホスト、サービス、ジョブレベルでのモニタリング、アラート、診断を提供します。Kerberos および RAM を認証プラットフォーム Ranger の権限管理としてサポートし、データセキュリティを確保します。Alibaba Cloud のエンタープライズリソースグループとタグにより、企業はコスト管理を容易に行えます。



オープンソースビッグデータクラウドソリューション

オープンソースビッグデータをクラウドに移行するとは、IDC 内の自社構築または他のビッグデータプラットフォームを Alibaba Cloud に移行し、EMR 製品を通じてオープンソース技術スタックを継続し、Alibaba Cloud とオープンソースビッグデータのエコシステムを連携させることです。

データ規模と予算に応じて、ライトニングキューブ、専用線、パブリックネットワークを通じて、データとタスクを計画的にクラウドへ効率的に移行できます。クラウド移行後は、Alibaba Cloud の全データエコシステムと統合されます。

・DataWorks との統合

効率的で安全かつ信頼性の高いワンストップビッグデータ開発・ガバナンスプラットフォームを提供します。

・オブジェクトストレージ OSS との統合

EMR のすべてのコンピューティングエンジンは OSS をストレージとしてサポートし、HDFS と同様に使用できます。JindoFS を使用して OSS データの読み書きを高速化します。JindoFS はデータレイクの重要なコンポーネントです。現在、多くのユーザーが JindoFS を使用してクラウド上にデータレイクを構築し、階層型ストレージを実現してストレージコストを削減しています。

・データレイク構築 DLF との統合

EMR はデフォルトで DLF を使用したメタデータ管理をサポートし、データレイクシナリオでのメタデータ管理を容易にします。Alibaba Cloud データレイク構築 DLF は、Alibaba Cloud オブジェクトストレージ OSS をクラウドデータレイクの統一ストレージとして使用します。

クラウド上では、さまざまなコンピューティングエンジンを使用して異なるビッグデータシナリオに対応し、統一されたデータレイクストレージソリューションを使用することで、データ同期の複雑さと運用コストを回避できます。



クラウドネイティブの弾力性:20% のコスト最適化

クラウドのネイティブな弾力性により、20% のコスト最適化を実現できます。

従来のビッグデータコンピューティングサービスには強い周期性があり、朝の高負荷と日中の低負荷など、明確なピークとオフピークがあります。ユーザーがクラスターを計画する際、従来モードではピークに合わせて計画し、リソースにある程度の余裕を持たせます。

EMR JindoFS + OSS のデータレイクソリューションは、HDFS とほぼ同等のパフォーマンスを実現し、クラウドビッグデータアーキテクチャのアップグレードを実現します。ストレージとコンピュートの分離により、コンピューティングの弾力的拡張とストレージの弾力的拡張のメリットを享受でき、アプリケーション層の開発に集中できます。

ストレージとコンピュートの分離アーキテクチャを採用後、クラスターはビジネスサイクルと負荷に応じて弾力的にスケーリングされます。固定リソースプールと弾力リソースプールの使い分けは以下の通りです。

比較的固定されたコンピューティングリソースには、固定リソースを使用してリソースを確実にロックし、計算を完了させます。

ピーク時や突発的なコンピューティングタスクには、弾力リソースプールを採用してコンピューティングリソースの浪費を削減します。

4. クラウド上のリアルタイムアプリケーション

典型的なリアルタイムアプリケーションシナリオ

ビッグデータの長年の発展を経て、大規模コンピューティング能力はもはや問題ではなくなり、タイムリー性が重要な特徴となっています。

Alibaba Cloud Double 11 のシナリオでは、当日のすべてのデータ分析は基本的にリアルタイムで、秒レベルで更新されます。オフライン処理だけではビジネスの発展に対応できなくなりつつあり、リアルタイムデータウェアハウス、リアルタイムダッシュボード、リアルタイムレポートなど、より多くのリアルタイム処理機能が必要とされています。

マーケティング担当者はリアルタイム統計の効果に基づいてキャンペーン戦略をリアルタイムに調整します。リアルタイムレコメンデーションは、ユーザーのリアルタイム行動から興味関心を計算し、適切なコンテンツの選定を支援します。ユーザーの行動特徴に基づくリアルタイムリスク管理は、ユーザーが不正行為者かどうかをリアルタイムに判定し、不正行為者に対するペナルティ処理を実行します。

リアルタイムコンピューティング Flink

Alibaba Cloud Realtime Compute for Apache Flink は、Apache Flink を基盤としたワンストップリアルタイムビッグデータ分析プラットフォームです。標準 SQL を提供し、ビジネス開発のハードルを下げ、企業のリアルタイムかつインテリジェントなビッグデータコンピューティングへのアップグレードを支援します。

ストリームコンピューティングエンジンとして、Flink はオンラインサービスログ、IoT センサーデータ、RDS の Binlog など、さまざまなリアルタイムデータを処理できます。

Flink は Kafka をサブスクライブし、メッセージキュー内のリアルタイムデータを分析処理してから、分析結果をさまざまなデータストアにリアルタイムで書き込みます。ClickHouse、Hologres、Elasticsearch などの製品が、データサービスを通じて上位層のデータアプリケーションをサポートします。

Realtime Compute for Apache Flink はプラットフォームベースの上に、サーバーレスサービスおよびフルマネージドコンテナサポートを提供します。

・コンピューティングエンジンランタイム

独自のストリーム状態ストレージエンジン Gemini の深い最適化、SQL オペレーターおよびジョブスケジューリングの最適化、そしてすぐに使える豊富な Flink コネクタ開発プラットフォームを含み、ジョブのフルライフサイクル管理を提供します。

・AutoPilot によるインテリジェントチューニング

各オペレーターおよびストリームジョブの上流下流パフォーマンスの安定性を確保した上で、ジョブの並列度とリソース割り当てを調整し、ジョブ全体を最適化します。フルリンクバックプレッシャーやスループット不足によるリソース浪費など、さまざまなパフォーマンスチューニング問題を解決します。

・Prometheus フルリンク監視アラート

すべての Flink ジョブは 24 時間 365 日の稼働を保証する必要があるため、包括的な監視システムが必要です。完全なジョブ稼働監視指標を提供し、ジョブ稼働の健全性を確認できます。異常発生時は、関係者にタイムリーに通知して介入を促します。

クラウドオープンソースリアルタイムデータウェアハウスのベストプラクティス

クラウド上では、Flink、Kafka、ClickHouse を通じてフルリンクリアルタイムデータウェアハウスのベストプラクティスを実現できます。

ビジネスログとビジネスデータをリアルタイムでメッセージエンジン Kafka に収集し、Flink でリアルタイム ETL 処理と集計分析を実行してから、結果を ClickHouse に保存します。これにより、リアルタイムレポート、リアルタイムマーケティング分析、A/B テスト機能など、上位層のビッグデータアプリケーションをサポートします。

5. クラウド検索アプリケーション

典型的な検索アプリケーションシナリオ

モバイルインターネット時代のユーザーは毎日、周辺のレストラン、ホテル、注文状況、配送情報など、さまざまな情報を検索しています。ユーザーが効率的に情報を取得できるよう、海量データに対する情報検索サービスを提供する必要があります。

たとえば、ショッピングでお目当ての商品を検索したり、友人との食事会のために周辺のレストランやカフェを探したりします。また、開発者はビジネスシステムでログ異常が発生した際、ログを通じて問題を分析・トラブルシューティングします。

Alibaba Cloud Elasticsearch

上記のすべてのシナリオには情報検索サービスが必要であり、Elasticsearch は強力な全文検索機能を備え、複雑な条件組み合わせやあいまい検索を実現でき、テキストや位置情報など、さまざまなデータの検索クエリに容易に対応します。

Alibaba Cloud Elasticsearch は、オープンソースと 100% 互換のフルマネージド ELK サービスを提供し、X-Pack 商用プラグインを無料で提供します。同時に、深い機能最適化とカーネルレベルのパフォーマンス最適化により、より高度な分析・検索機能と、より安全で可用性の高いサービスを提供します。

・総合的なコスト削減

セルフマネージド型 ES と比べ、フルマネージド化によりインフラ層の運用工数が不要となり、運用コストを削減できます。

・クラスター管理

クラスターの弾力的なスケーリングと、インテリジェントな運用管理・統合監視を実現します。

・セルフマネージド型 ES との差別化

X-Pack プラグイン、NLP 分かち書きプラグイン、ベクトル検索プラグインを無料で提供します。

・安全で高可用

X-Pack セキュリティコンポーネントとフィールドレベルのセキュリティ制御により、高可用性と自動データバックアップの要件を満たします。マルチ AZ アーキテクチャにより 99.999999% のサービス信頼性を実現します。

クラウド上の情報検索アプリケーションのベストプラクティス

各企業は業務の過程で、構造化データおよび半構造化データを含む大量のデータを生成します。

たとえば、業界知識、地理情報、注文情報、オーディオおよびビデオデータなどです。これらのデータはデータベース RDS、オブジェクトストレージ OSS、またはビッグデータストレージエンジンに保存される場合があります。

データ統合ツールを通じて、これらのデータをメッセージエンジンまたはデータウェアハウスに同期し、Flink によるリアルタイム処理、または MaxCompute や EMR の Spark、Hive などによるオフライン計算を実行できます。処理結果は Elasticsearch に保存され、全文検索や住所検索など、上位層のデータアプリケーションに検索サービスを提供します。

Related Articles

Explore More Special Offers

  1. Short Message Service(SMS) & Mail Service

    50,000 email package starts as low as USD 1.99, 120 short messages start at only USD 1.00

phone お問い合わせ
Hi, I'm Alibaba Cloud AI Assistant!
I can help with questions and solutions.