すべてのプロダクト
Search
ドキュメントセンター

E-MapReduce:ハードウェアとネットワークの選択

最終更新日:Mar 26, 2026

このトピックでは、ビッグデータ処理の要件に基づいて、E-MapReduce (EMR) クラスターの高可用性オプション、ノードスペック、およびネットワーク構成を選択する方法について説明します。

高可用性サービスの選択

ビジネスシナリオに基づいて、高可用性を有効にするかどうかを選択します。有効にすると、クラスターはマルチマスターノードモードを使用し、分散フェールオーバーメカニズムを通じて単一ノード障害のリスクを排除し、サービスの継続性を維持します。

ディメンション

シングルマスターノードクラスター

マルチマスターノードクラスター

シナリオ

  • テスト環境

  • 可用性の要件が低い

  • 本番環境

  • 可用性の要件が高い

コア機能

シングルノードアーキテクチャで、デプロイメントはシンプルです。単一ノード障害のリスクがあります。

  • 単一ノード障害のリスクなし:クラスターは別の利用可能なマスターノードに切り替えて、サービスの継続性を維持します。

  • 高い信頼性:HDFS NameNode や YARN ResourceManager などのコアコンポーネントの高可用性構成をサポートします。

  • ハードウェア隔離ECS デプロイメントセットは、マスターノードを別々の物理ハードウェアに分散させ、ハードウェアの同時障害から保護します。

フェイルバック

自動回復なし:トラブルシューティングと再起動には手動での介入が必要です。

自動フェイルバック:EMR は、障害が発生したマスターノードを自動的に置き換え、元のノードと同じ環境とブートストラップアクションを復元します。

コスト

低コスト:マスターノードは 1 台のみ必要です。

高コスト:3 台のマスターノードが必要です。これにより、コンセンサスアルゴリズムを通じて多数決による意思決定を実装し、オープンソースコンポーネント (ZooKeeper や HDFS など) の強力な整合性要件を満たし、スプリットブレインを防ぎます。

ノードスペックの選択

次の手順に従ってノードスペックを構成します:

  1. ビジネスシナリオの決定:データレイク、データ分析、リアルタイムデータストリーム、データサービス、またはカスタムクラスターのシナリオから選択します。

  2. ストレージアーキテクチャの選択:シナリオに基づいて、ストレージ/コンピュート結合 (HDFS) またはストレージ/コンピュート分離 (OSS-HDFS/OSS) を選択します。

  3. ノードスペックとディスクサイズの構成:

    1. ノードスペックの構成:ストレージアーキテクチャ、クラスターの規模、およびビジネスの特性に基づいて、各ノードタイプ (マスター、コア、タスク) に適した Elastic Compute Service (ECS) インスタンスタイプ (汎用、コンピューティング最適化、メモリ最適化、ビッグデータなど) を選択します。

    2. ディスクサイズの構成:ストレージ容量の計算をデータ量と成長予測に基づいて行い、適切なディスクサイズを設定します。

データレイクシナリオ

ストレージ/コンピュート結合 (HDFS)

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。
デプロイされるサービス:NameNode、ResourceManager、HiveServer、Hive Metastore、Spark History Server。

  • インスタンスタイプ:クラウドディスクを備えた汎用インスタンス。

  • 小規模クラスター (8 ノード以下):8 コア、32 GiB。

  • 中〜大規模クラスター:16 コア、64 GiB 以上。

  • 大量の HDFS ファイル数 (1,000 万以上):NameNode のメモリ要件を満たすようにサイズを決定します。

コア

計算リソースとストレージリソースを提供します。
デプロイされるサービス:DataNode、NodeManager。

CPU 対メモリ比とストレージ要件に基づいて選択します:

  • デフォルトシナリオ:汎用インスタンス。

  • CPU 集中型タスク (AI 推論トレーニングなど):コンピューティング最適化インスタンス。

  • メモリ集中型タスク (オフラインレポート分析など):メモリ最適化インスタンス。

  • ノードあたりの HDFS ストレージ > 10 TB:ビッグデータインスタンスファミリー (ローカルディスク)。ローカルディスクの自己メンテナンスが必要です。

  • メモリ制約:ノードのメモリは、単一の YARN コンテナのピークメモリを超える必要があります。

タスク

計算のみを提供し、データストレージは提供しません。コアノードの CPU とメモリを補完するために使用されます。
デプロイされるサービス:NodeManager。

ピーク/バレーシナリオの場合:

  • ベースライン (低負荷時) の計算要件に合わせてコアノードのサイズを決定します。

  • ピーク需要に対応するために、タスクノードのスペックをコアノードのスペック以上に設定します。

ストレージ/コンピュート分離 (OSS-HDFS/OSS)

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。
デプロイされるサービス:ResourceManager、HiveServer、Hive Metastore、Spark History Server。

  • インスタンスタイプ:クラウドディスクを備えた汎用インスタンス。

  • 小規模クラスター (8 ノード以下):8 コア、32 GiB。

  • 中〜大規模クラスター:16 コア、64 GiB 以上。

コア

タスクノードと同様の機能で、データストレージはありません。
デプロイされるサービス:NodeManager。

コアノードは弾力的スケーリングをサポートしていません。タスクノードのみを使用し、コアノードの構成はスキップしてください。

タスク

計算のみを提供します。
デプロイされるサービス:NodeManager。

  • デフォルトシナリオ:汎用インスタンス。

  • CPU 集中型タスク (AI 推論トレーニングなど):コンピューティング最適化インスタンス。

  • メモリ集中型タスク (オフラインレポート分析など):メモリ最適化インスタンス。

  • メモリ制約:ノードのメモリは、単一の YARN コンテナのピークメモリを超える必要があります。

データ分析シナリオ

ストレージ/コンピュート結合

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。
デプロイされるサービス:StarRocks FE、Doris FE、ZooKeeper。

  • インスタンスタイプ:クラウドディスクを備えた汎用インスタンス。

  • 小規模クラスター (8 ノード以下):8 コア、32 GiB。

  • 中〜大規模クラスター:16 コア、64 GiB 以上。

コア

計算リソースとストレージリソースを提供します。
デプロイされるサービス:StarRocks BE、Doris BE、ClickHouseKeeper、ClickHouseServer。

ストレージ量と計算要件に基づいて選択します:

  • ノードあたりのストレージ ≤ 10 TB:

    • デフォルト:クラウドディスクを備えた汎用インスタンス。

    • CPU 集中型タスク (多くの計算操作):コンピューティング最適化インスタンス。

    • メモリ集中型タスク (大きなキャッシュが必要):メモリ最適化インスタンス。

  • ノードあたりのストレージ > 10 TB:ビッグデータインスタンスファミリー (ローカルディスク)。ローカルディスクの自己メンテナンスが必要です。

タスク

計算のみを提供します。
デプロイされるサービス:StarRocks CN。

タスクノードは StarRocks コンピュートノード (CN) のデプロイメントのみをサポートします。StarRocks を使用していない場合は、タスクノードの構成をスキップしてください。

  • ベースラインの計算要件に合わせてコアノードのサイズを決定します。

  • ピーク需要に対応するために、タスクノードのスペックをコアノードのスペック以上に設定します。

ストレージ/コンピュート分離

StarRocks 3.x のみがストレージ/コンピュート分離をサポートしています。

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。
デプロイされるサービス:StarRocks FE、ZooKeeper。

  • インスタンスタイプ:クラウドディスクを備えた汎用インスタンス。

  • 小規模クラスター (8 ノード以下):8 コア、32 GiB。

  • 中〜大規模クラスター:16 コア、64 GiB 以上。

タスク

計算のみを提供します。
デプロイされるサービス:StarRocks CN。

StarRocks の分離アーキテクチャでは、コアノードはなく、タスクノードのみです。

  • デフォルト:クラウドディスクを備えた汎用インスタンス。

  • CPU 集中型タスク:コンピューティング最適化インスタンス。

  • メモリ集中型タスク:メモリ最適化インスタンス。

リアルタイムデータストリームシナリオ

ストレージ/コンピュート結合 (HDFS)

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。
デプロイされるサービス:NameNode、ResourceManager、Flink History Server、ZooKeeper。

  • インスタンスタイプ:クラウドディスクを備えた汎用インスタンス。

  • 小規模クラスター (8 ノード以下):8 コア、32 GiB。

  • 中〜大規模クラスター:16 コア、64 GiB 以上。

  • 大量の HDFS ファイル数 (100 万以上):NameNode のメモリ要件を満たすようにサイズを決定します。

コア

計算リソースとストレージリソースを提供します。
デプロイされるサービス:DataNode、NodeManager。

Flink タスクで必要な CPU 対メモリ比に基づいて選択します:

  • デフォルト:汎用インスタンス。

  • CPU 集中型タスク:コンピューティング最適化インスタンス。

  • メモリ集中型タスク:メモリ最適化インスタンス。

  • ノードあたりの HDFS ストレージ > 10 TB:ビッグデータインスタンスファミリー (ローカルディスク)。ローカルディスクの自己メンテナンスが必要です。

  • メモリ制約:ノードのメモリは、単一の Flink JobManager または TaskManager のピークメモリを超える必要があります。

タスク

計算のみを提供し、データストレージは提供しません。コアノードの CPU とメモリを補完するために使用されます。
デプロイされるサービス:NodeManager。

ピーク/バレーシナリオの場合:

  • ベースラインの計算要件に合わせてコアノードのサイズを決定します。

  • ピーク需要に対応するために、タスクノードのスペックをコアノードのスペック以上に設定します。

ストレージ/コンピュート分離 (OSS-HDFS/OSS)

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。
デプロイされるサービス:ResourceManager、Flink History Server、ZooKeeper。

  • インスタンスタイプ:クラウドディスクを備えた汎用インスタンス。

  • 小規模クラスター (8 ノード以下):8 コア、32 GiB。

  • 中〜大規模クラスター:16 コア、64 GiB 以上。

コア

タスクノードと同様の機能で、データストレージはありません。
デプロイされるサービス:NodeManager。

コアノードは弾力的スケーリングをサポートしていません。タスクノードのみを使用し、コアノードの構成はスキップしてください。

タスク

計算のみを提供します。
デプロイされるサービス:NodeManager。

  • デフォルト:汎用インスタンス。

  • CPU 集中型タスク:コンピューティング最適化インスタンス。

  • メモリ集中型タスク:メモリ最適化インスタンス。

  • メモリ制約:ノードのメモリは、単一の Flink JobManager または TaskManager のピークメモリを超える必要があります。

データサービスシナリオ

ストレージ/コンピュート結合 (HDFS)

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。
デプロイされるサービス:NameNode、HMaster、ZooKeeper。

  • インスタンスタイプ:クラウドディスクを備えた汎用インスタンス。

  • 小〜中規模クラスター (16 ノード以下):8 コア、32 GiB。

  • 大規模クラスター:16 コア、64 GiB 以上。

  • 大量の HDFS ファイル数 (1,000 万以上):NameNode のメモリ要件を満たすようにサイズを決定します。

コア

計算リソースとストレージリソースを提供します。
デプロイされるサービス:DataNode、HRegionServer。

リクエスト量とストレージに基づいて選択します:

  • クラウドディスクを備えた汎用インスタンス:

    • 小規模クラスター (8 ノード以下):8 コア、32 GiB。最大 8 コアノード。ノードあたりの QPS ≤ 10,000。

    • 中〜大規模クラスター:16 コア、64 GiB 以上。コアノードの数は実際の負荷に基づきます。

  • ノードあたりの HDFS ストレージ > 10 TB:ビッグデータインスタンスファミリー (ローカルディスク)。ローカルディスクの自己メンテナンスが必要です。

タスク

計算のみを提供し、データストレージは提供しません。コアノードの CPU とメモリを補完するために使用されます。
デプロイされるサービス:HRegionServer。

データサービスシナリオでは、通常、タスクノードは推奨されません。データはコアノードに存在するため、タスクノードを使用するとデータローカリティが低下し、パフォーマンスが損なわれる可能性があります。

ストレージ/コンピュート分離 (OSS-HDFS/OSS)

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。
デプロイされるサービス:NameNode、HMaster、ZooKeeper。

  • インスタンスタイプ:クラウドディスクを備えた汎用インスタンス。

  • 小〜中規模クラスター (16 ノード以下):8 コア、32 GiB。

  • 大規模クラスター:16 コア、64 GiB 以上。

コア

計算リソースとストレージリソースを提供します。
デプロイされるサービス:DataNode、HRegionServer。

HBase HLog を OSS-HDFS/OSS に保存すると、書き込みパフォーマンスが大幅に低下します。代わりに HBase HLog を HDFS に保存してください。

  • 小規模クラスター (8 ノード以下):8 コア、32 GiB。最大 8 コアノード。ノードあたりの QPS ≤ 10,000。

  • 中〜大規模クラスター:16 コア、64 GiB 以上。コアノードの数は実際の負荷に基づきます。

タスク

計算のみを提供します。
デプロイされるサービス:HRegionServer。

ピーク/バレーシナリオの場合:

  • ベースラインのワークロード用に固定のコアノードを実行し、ピーク需要に応じてタスクノードを弾力的にスケーリングします。

  • タスクノードのスペックをコアノードのスペックに合わせます。

カスタムクラスターシナリオ

ワークロードがオフライン ETL、リアルタイム ETL、複雑な集約、高同時実行クエリなどのシナリオを混在させる場合、規模に基づいてデプロイメントアプローチを選択します:

  • 複数の専用クラスター (推奨):オフラインのバッチ処理、リアルタイムのストリーム処理、分析クエリ、クエリ高速化のために別々のクラスターをデプロイします。これにより、リソースの隔離が実現され、ワークロードタイプ間で一貫したパフォーマンスが保証されます。

  • 単一のカスタムクラスター:シナリオ間でリソースの競合がない小規模なワークロードにのみ適しています。デプロイメントの複雑さを軽減し、リソースの利用率を向上させます。

ストレージ/コンピュート結合 (HDFS)

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。

  • 小規模クラスター (8 ノード以下):汎用インスタンス、8 コア、32 GiB、クラウドディスク付き。

  • 大量の HDFS ファイル数 (100 万以上):NameNode のメモリ要件を満たすようにサイズを決定します。

コア

計算リソースとストレージリソースを提供します。

クラスタータスクで必要な CPU 対メモリ比に基づいて選択します:

  • デフォルト:汎用インスタンス。

  • CPU 集中型タスク:コンピューティング最適化インスタンス。

  • メモリ集中型タスク:メモリ最適化インスタンス。

  • ノードあたりのストレージ > 10 TB:ビッグデータインスタンスファミリー (ローカルディスク)。ローカルディスクの自己メンテナンスが必要です。

  • メモリ制約:ノードのメモリは、YARN コンテナのピークメモリと Flink JobManager または TaskManager のピークメモリの高い方を超える必要があります。

タスク

計算のみを提供し、データストレージは提供しません。コアノードの CPU とメモリを補完するために使用されます。

ピーク/バレーシナリオの場合:

  • ベースラインの計算要件に合わせてコアノードのサイズを決定します。

  • ピーク需要に対応するために、タスクノードのスペックをコアノードのスペック以上に設定します。

ストレージ/コンピュート分離 (OSS-HDFS/OSS)

ノードタイプ

推奨スペック

マスター

クラスターを管理し、タスクを調整します。

小規模クラスター (8 ノード以下):汎用インスタンス、8 コア、32 GiB、クラウドディスク付き。

コア

タスクノードと同様の機能で、データストレージはありません。

  • データストレージが不要な場合:弾力的なタスクノードのみを使用し、コアノードの構成はスキップしてください。

  • HBase が必要な場合:書き込みパフォーマンスを維持するために、HBase HLog を HDFS に保存します。16 コア、64 GiB、ディスク領域 500 GiB 以上の汎用インスタンスを使用します。

タスク

計算のみを提供します。

タスクノードのみの場合:

  • デフォルト:汎用インスタンス。

  • CPU 集中型タスク:コンピューティング最適化インスタンス。

  • メモリ集中型タスク:メモリ最適化インスタンス。

  • メモリ制約:ノードのメモリは、YARN コンテナのピークメモリと Flink JobManager または TaskManager のピークメモリの高い方を超える必要があります。

  • ベースラインのワークロード用に固定のコアノードを実行し、ピーク需要に応じてタスクノードを弾力的にスケーリングします。

  • タスクノードのスペックをコアノードのスペックに合わせます。

ネットワーク構成の推奨事項

主要なディメンション

構成の推奨事項

VPC ネットワーク構成

  • 十分な IP アドレス空間を確保する:クラスターの拡張に十分な余裕のある Virtual Private Cloud (VPC) と vSwitch を選択します。

  • アクセスする必要がある他のクラウドサービスへの接続パスを計画します。

セキュリティグループ構成

  • 最小権限の原則を適用する:ワークロードが必要とするポートのみを開き、インバウンドルールを信頼できる IP アドレスまたは CIDR ブロックに制限します。これにより、クリプトマイニングなどの攻撃への露出を減らします。

  • SSH などの管理ポートに厳格なアクセス制御を適用します。

ネットワーク接続構成

  • 大量のデータの場合、より高い内部帯域幅を持つインスタンスタイプを選択します。

  • 可能な限り、クラスターとデータソースを同じゾーンに配置して、クロスゾーン通信を最小限に抑えます。

  • 外部アクセスには、NAT ゲートウェイまたは Elastic IP アドレス (EIP) を使用します。

付録:ECS インスタンスタイプ

利用可能な ECS インスタンスファミリーの詳細 (特徴、仕様、ユースケースなど) については、「インスタンスファミリー」をご参照ください。EMR コンソールでノードのインスタンススペックを選択する際のリファレンスとして使用してください。

インスタンスタイプ

特徴

汎用

vCPU:メモリ = 1:4。g シリーズと略されます。

コンピューティング最適化

vCPU:メモリ = 1:2。メモリ単位あたりの計算リソースが多く提供されます。c シリーズと略されます。

メモリ最適化

vCPU:メモリ = 1:8。vCPU あたりのメモリリソースが多く提供されます。r シリーズと略されます。

ローカル SSD

vCPU:メモリ = 1:4。高いランダム IOPS とスループットを持つローカル SSD ディスクを使用しますが、データ損失のリスクがあります。マスターノードでは利用できません。i シリーズと略されます。

ビッグデータ

vCPU:メモリ = 1:4。高いストレージコスト効率を持つローカル SATA ディスクを使用します。TB スケールのデータ量に推奨されます。d シリーズと略されます。

共有

共有 CPU インスタンス。大規模な計算負荷の下では安定せず、入門レベルの学習にのみ適しています。エンタープライズでの使用は推奨されません。タスクノードでのみ利用可能です。