

# PERF02-BP04 適切なサイジングによって必要な設定を決定する
<a name="perf_select_compute_right_sizing"></a>

ワークロードのさまざまなパフォーマンス特性と、それらの特性に対するメモリ、ネットワーク、I/O、CPU 使用率との関連を分析します。このデータは、ワークロードのプロファイルに最適なリソースを選択するために使用します。例えば、データベースなどのメモリ集約型のワークロードの場合、コアあたりのメモリ比率が高いと、多くの利点が期待できます。ただし、コンピューティング集約型のワークロードでは、より多くのコア数とコア周波数が必要になる一方、コアあたりのメモリ量はそれほど必要ない場合があります。

 **一般的なアンチパターン:** 
+  すべてのワークロードに対して、利用できるすべてのパフォーマンス特性の最大の値を持つインスタンスを選択する。 
+  管理しやすいように、すべてのインスタンスタイプを 1 つのタイプに標準化する。 
+  特定のワークロードの実際の要件を検証せずに、標準的な合成ベンチマークに照らして最適化している。 
+  新しいサービスを再評価して統合せずに、同じインフラストラクチャを長期間維持している。 

 **このベストプラクティスを活用するメリット:** ワークロードの要件を把握していれば、利用できるコンピューティングサービスとこのようなニーズを照らし合わせて、迅速に実験を行い、ワークロードのニーズを最も効率的に満たすソリューションを判断できます。これにより、不要なリソースに過大なコストを割くことなく、最適なパフォーマンスを実現できます。 

 **このベストプラクティスを確立しない場合のリスクレベル:** 中 

## 実装のガイダンス
<a name="implementation-guidance"></a>

適切なサイジングを行い、ワークロードの設定を変更します。パフォーマンス、全体的な効率性、費用対効果を最適化するには、まずワークロードに必要なリソースを特定します。データベースなどのメモリ集約型のワークロードには、R ファミリーのインスタンスなどのメモリ最適化インスタンスを選択します。より高いコンピューティング能力を必要とするワークロードの場合は、C ファミリーのインスタンスを選択するか、コア数またはコア周波数が高いインスタンスを選択します。標準的な合成ベンチマークとの比較によってではなく、ワークロードのニーズに基づいて I/O パフォーマンスを選択します。より高い I/O パフォーマンスを得るには、I ファミリーのインスタンスを選択するか、[I/O が最適化された Amazon EBS ボリューム](https://aws.amazon.com/premiumsupport/knowledge-center/optimize-ebs-provisioned-iops/)を選択するか、[インスタンスストア](https://aws.amazon.com/premiumsupport/knowledge-center/instance-store-vs-ebs/)を持つインスタンスを選択します。特定のインスタンスタイプの詳細については、「[Amazon EC2 インスタンスタイプ](https://aws.amazon.com/ec2/instance-types/)」を参照してください。

 適切なサイジングを行うことで、不要なワークロードに対して余分な料金を支払うことなく、可能な限り最高レベルのパフォーマンスを達成できます。 

 **実装手順** 
+  ワークロードの特性を把握するか、ワークロードのリソース要件を分析します。 
+  ワークロードを個別に評価します。AWS クラウド を使用すると、妥協することなく、各ワークロードについて個別に適切なサイジングで調整できる柔軟性と俊敏性が得られます。 
+  テスト環境を作成して、ワークロードに最適なコンピューティングサービスを探します。 
+  継続的に新しいコンピューティングサービスを再評価して、ワークロードのニーズと照らし合わせます。 
+  費用対効果の向上のために、新しいサービスを定期的に確認します。 
+  定期的に Well-Architected Framework レビューを実施します。 

## リソース
<a name="resources"></a>

 **関連するベストプラクティス:** 
+  [PERF02-BP03 コンピューティング関連のメトリクスを収集する](perf_select_compute_collect_metrics.md) 
+  [PERF02-BP06 メトリクスに基づいてコンピューティングニーズを再評価する](perf_select_compute_use_metrics.md) 

 **関連するドキュメント:** 
+  [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/)  
+  [AWS を使用したクラウドコンピューティング](https://aws.amazon.com/products/compute/) 
+  [Amazon EC2 インスタンスタイプ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) 
+  [Amazon ECS コンテナ: Amazon ECS コンテナインスタンス](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.html) 
+  [Amazon EKS コンテナ: Amazon EKS ワーカーノード](https://docs.aws.amazon.com/eks/latest/userguide/worker.html) 
+  [関数: Lambda 関数の設定](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html#function-configuration) 

 **関連動画:** 
+  [Amazon EC2 foundations (CMP211-R2)](https://www.youtube.com/watch?v=kMMybKqC2Y0) (Amazon EC2 の基礎 (CMP211-R2)) 
+  [Better, faster, cheaper compute: Cost-optimizing Amazon EC2 (CMP202-R1)](https://www.youtube.com/watch?v=_dvh4P2FVbw) (より良く、より速く、より安価なコンピューティング: Amazon EC2 でのコストの最適化 (CMP202-R1)) 
+  [Deliver high performance ML inference with AWS Inferentia (CMP324-R1)](https://www.youtube.com/watch?v=17r1EapAxpk) (AWS Inferentia を使用して高パフォーマンスの機械学習推論を実現する (CMP324-R1)) 
+  [Optimize performance and cost for your AWS compute (CMP323-R1)](https://www.youtube.com/watch?v=zt6jYJLK8sg) (AWS コンピューティングのパフォーマンスとコストを最適化する) 
+  [Powering next-gen Amazon EC2: Deep dive into the Nitro system](https://www.youtube.com/watch?v=rUY-00yFlE4) (次世代 EC2 の強化: Nitro System の詳細) 
+  [スタートアップ企業向けコンピューティングオプションの選択方法](https://aws.amazon.com/startups/start-building/how-to-choose-compute-option/) 
+  [Optimize performance and cost for your AWS compute (CMP323-R1)](https://www.youtube.com/watch?v=zt6jYJLK8sg) (AWS コンピューティングのパフォーマンスとコストを最適化する) 

 **関連する例:** 
+  [Rightsizing with Compute Optimizer and Memory utilization enabled](https://www.wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/5_ec2_computer_opt/) (Compute Optimizer を使用したサイズ適正化とメモリ使用率の有効化) 
+  [AWS Compute Optimizer Demo code](https://github.com/awslabs/ec2-spot-labs/tree/master/aws-compute-optimizer) (AWS Compute Optimizer デモコード) 