Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
Sawa_Ito
Product and Topic Expert
Product and Topic Expert
0 Kudos
264

このブログは、2022 年 11 月 11 日に SAP ジャパン公式ブログに掲載されたものを SAP ジャパン公式ブログ閉鎖に伴い転載したものです。




このブログは、jason.hinsperger が執筆したブログ「Loading Data into SAP HANA Cloud, Data Lake(2020 年 11 月 23 日)の抄訳です。最新の情報は、SAP Community の最新ブログマニュアルを参照してください。




 


 

SAP HANA Cloud, data lake は、大量データのサポートを考慮して設計されています。そのため、最初に懸念点となるのは大量データの効率的なロード方法です。そしてその効率性は総コストとパフォーマンスの組み合わせで判断されることが一般的です。
SAP HANA Cloud, data lake は標準 SQL の DML 文をサポートしていますが、最速なのは LOAD TABLE 文で行う方法です。
このブログでは、SAP HANA Cloud, data lake のプロビジョニングが、データロードのパフォーマンスやコストにどう影響を与えるのか説明します。
ここでは、単純化するために、個々のテーブルのロードだけをテストしています。データのコンカレントローディングについては、今後のブログでカバーするかもしれません。

 

 

 

SAP HANA Cloud, data lake へのデータロードにおける vCPU 数の影響


 

SAP HANA Cloud, data lake では、コンピュートは、vCPU でエラスティックに割り当てられます。
これは、つまり、単純にプロビジョニングを更新するだけで、SAP HANA Cloud, data lake に割り当てられるコンピュート数をオンデマンドで変更することができることを意味しています。
SAP HANA Cloud サイジングカリキュレーター(SAP HANA Cloud Capacity Unit Estimator) を参照することで、割り当てた vCPU 数が SAP HANA Cloud の全体の利用コストにどう影響するか確認することができます。

データロードの処理は、通常データの伝送 (読み込み/書き込み)の処理に大半が占められていますが、データインジェスチョンの処理の一部としてコンピュートが関係しています。
例えば、ストレージコストを最小限にし、将来のクエリーパフォーマンスを向上させるために、SAP HANA Cloud, data lake に書き込む前に、データを適切なフォーマットに処理・圧縮するなどの ingestion(高速データ投入)の処理の一部でコンピュートが関係しています。

AWS で最小限のサイズ(4 vCPU、ストレージ 1 TB)に設定された SAP HANA Cloud, data lake からスタートし、vCPU 数を増やしてスケールアップすると、約 1.5 GB の生データを単一のテーブルにロードする場合のコンピュートの影響をみることができます。SAP HANA Cloud, data lake の観点からは大きなものではありませんが、コンピューティングプロビジョニングがパフォーマンスに与える影響を説明するには十分です。



SAP HANA Cloud, data lake における vCPU 数増によるロードパフォーマンスの影響




vCPU 数を増やすことで、2 倍近くのロードのパフォーマンスの向上がすぐにみられますが、その後は vCPU 数を増やすにつれて改善率は鈍化しました。
vCPU 数が 16 を超えると、ロードのパフォーマンスの差はほとんどなくなります。
これは、SAP HANA Cloud, data lake のデータ処理の中心が SAP IQ の Multiplex テクノロジーで構築されているからです。

SAP IQ Multiplex は、クラスターベースのソリューションであるため、SAP HANA Cloud, data lakeのコンピュート処理は、スケールアップ(より大きなノードを使用)とスケールアウト(複数のノードを使用)の両方に対応しています。
現在、スケールアップは、1ノードあたりの vCPU 数が 16 に制限されています。
SAP HANA Cloud, data lake でこれ以上のvCPU数を割り当てると、ノードが追加されることになります。
我々のテストでも、vCPU 数が 16 を超えた時に、システムにもう 1 つのノードが追加されています。 これは、vCPU 数増によるロードパフォーマンスの影響のテスト結果に関係しています。

なぜならば、現在 SAP HANA Cloud, data lake は、単一の LOAD TABLE 文を処理するのに 1 つのノードしか使用できないからです。
そのため、vCPU 数が 16 を超えると、vCPU 数を増やしてもロードパフォーマンスへ影響を与えなくなります。
しかしながら、複数のノードにスケールアウトすると、他のオペレーション(例えばクエリー)が他のノードで処理可能になるため、ユーザー数が多いシステムでは複数ノードへのスケールアウトが役立ちます。
そのため、この場合も LOAD 文を実行しているノードにより多くのコンピュートが使われるようにvCPU 数を増やします。

 

 

データロードにおけるストレージの影響


 

SAP HANA Cloud, data lake は、現在単一のストレージメトリックのみ提供しています(*)。
そのため、このメトリックのパフォーマンスへの影響はすぐには見えませんが、実際には、特に小さな SAP HANA Cloud, data lake(16 TB 以下)において潜在的にとても大きな影響があります。
(*注:2022Q3 でストレージは Native Object Store に変更になりデータサイズ単位ごとのスループットの制限がなくなりました。データロードのフォーマンスも向上しています。)

これは、SAP HANA Cloud, data lake のストレージのパフォーマンスは、プロビジョニングしたストレージのサイズの機能に依存するからです。
ディスクスループットは、プロビジョニングしたストレージの 1 TB ごとに一定量が割り当てられており、SAP HANA Cloud, data lake への読み込み・書き込みの速度は、これによって制御されてしまっています。
SAP HANA Cloud, data lake を大きくすれば、割り当てられたスループットも増加するため、単一のユーザーのアクセスのパフォーマンスに影響を与える重要要因ではなくなりますが、SAP HANA Cloud, data lake のサイズが小さい場合には、大きな影響を与える可能性があります。

以下は、割り当てられたストレージがロードパフォーマンスに与える影響を示しています。
それぞれのデストでは、同じ数の vCPU を使用して同じ量のデータをロードしていることに注意してください。変更しているのは、ストレージのサイズだけです。



SAP HANA Cloud, data lake におけるストレージのプロビジョニングによるロードパフォーマンスの影響




 

約 16 TB までは、プロビジョンニングされたストレージのサイズを増やすことでロードのパフォーマンスに大きな影響があることがわかります。
それを超えるものについてもパフォーマンスは向上しますが、その割合は低下します。

 

 

SAP HANA Cloud, data lake へのロードの TCO をコントロールする


 

SAP HANA Cloud, data lake では vCPU 数とストレージサイズによってパフォーマンスに大きな影響があることがわかりました。
しかし、この結果がコストにはどう関係するでしょうか?

テストした様々な設定におけるロードオペレーションのキャパシティーユニットコスト(下記図参照)をみると、最小限にプロビジョニングされたインスタンスは、24 時間 365 日稼働の観点では最低コストではあるものの、クラウドのエラスティシティを活用して全体 TCO をよりうまくコントロールした場合には、最低コストではありませんでした。
このシナリオでは、ロードにおける最低コストは、ストレージサイズを 16 TB、vCPU 数を 18 でプロビジョニングした場合でした。



SAP HANA Cloud, data lake のコストをコントロールするためエラスティシティを使用




 

 

まとめ


 

まとめると、vCPU 数とストレージサイズは SAP HANA Cloud, data lake のパフォーマンスに大きな影響があることがわかりました。
しかし、SAP HANA Cloud, data lake の最善の TCO を得るには、エラスティシティのような、このサービスのクラウドならではのメリットを活用する必要があります。

 




オリジナルのブログはここまでです。