Tier有りメーターのIPU (Informatica Processing Unit) 換算早見表（アプリケーション統合編）

こんにちはMitzです。データ統合(CDI : Cloud Data Integration)編に続いて、アプリケーション統合(CAI : Cloud Application Integration)編の換算早見表を作成してみました。
# アプリケーション統合(CAI : Cloud Application Integration)
アプリケーション統合についてはこの2つのメーターが全てです。
- Application Integration
- Application Integration with Advanced Serverless

## Application Integration
アプリケーション統合では作成したプロセスのデプロイ先を、セキュアエージェント（もしくはセキュアエージェントグループ）側 or クラウドサーバー側（POD側）から選択します。

プロセスのデプロイ先をセキュアエージェント（もしくはセキュアエージェントグループ）側にした場合に採用されるメーターがApplication Integrationです。Informatica Cloud and Product Description Scheduleには下記の通り記載されています。

- Scalar: Compute Units
- Metric: Per Hour
- IPU Per Metric Unit:
    - 1.38 for the first 60 Hours
    - 0.17 for 60 - 1,200 Hours
    - 0.043 for > 1,200 Hours

これは、60時間以内は1時間毎に1.38 IPUを消費、60時間を超えて1200時間以下の場合は1時間毎に0.17 IPUを消費、1200時間を超えた場合は1時間毎に0.043 IPUを消費するという意味です。

| Compute Units<BR> Per Hour | 必要IPU数 | 消費レート |
| :---: | :---: | :---: |
| 60 | 82.8 | 1.38 IPU / Hour|
| 120 | 93 | 0.17 IPU / Hour|
| 1200 | 276.6 | ↑ |
| 1260 | 279.18 | 0.043 IPU / Hour|

最初のTierでは60時間処理するのに82.8 IPU必要だったのが、次のTierでは同じ60時間処理するのに必要なのは10.2 IPU(93 - 82.8 = 10.2)になっています。さらに最上位のTierでは、60時間処理するのに必要なのは2.58 IPU(279.18 - 276.6 = 2.58)になっています。これをグラフ化すると下記の通りです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/786891/e46ac162-fb65-b308-977a-64d511912331.png)

### Application Integrationにおける、Compute Unitsの計算について
驚きなのが最大計算時間が設定されている（要はCAPがある）ことです。
- 最小計算時間はありません。計算時間はミリ秒単位で測定され、計算時間は使用時間に比例して計算されます。 
- 最大計算時間は0.16 時間 or 10分です。
    - 例えばCAIのプロセスが2時間かかって完了した場合、最大計算時間の0.16 時間 or 10分を超えているため、当該プロセスのIPUは最大計算時間の0.16 時間 or 10分に対してのみ消費されます。
    - CAIのプロセスが5分かかって完了した場合、最大計算時間の0.16 時間 or 10分を超えていないため、当該プロセスのIPUは最大計算時間の0.08 時間 or 5分に対して消費されます。

## Application Integration with Advanced Serverless
プロセスのデプロイ先をクラウドサーバー側（POD側）にした場合に採用されるメーターがApplication Integrationです。Informatica Cloud and Product Description Scheduleには下記の通り記載されています。
- Scalar: Compute Units
- Metric: Per Hour
- IPU Per Metric Unit:
    - 2.38 for the first 60 Hours
    - 0.30 for 60 - 1,200 Hours
    - 0.074 for > 1,200 - 20,000 Hours
    - 0.067 for > 20,000 - 50,000 Hours
    - 0.053 for > 50,000 - 100,000 Hours
    - 0.021 for > 100,000 Hours

これは、60時間以内は1時間毎に2.38 IPUを消費、60時間を超えて1200時間以下の場合は1時間毎に0.30 IPUを消費、1200時間を超えて20000時間以下の場合は1時間毎に0.074 IPUを消費、20000時間を超えて50000時間以下の場合は1時間毎に0.067 IPUを消費、50000時間を超えて100000時間以下の場合は1時間毎に0.053 IPUを消費、100000時間を超えた場合は1時間毎に0.021 IPUを消費するという意味です。

| Compute Units<BR> Per Hour | 必要IPU数 | 消費レート |
| :---: | :---: | :---: |
| 60 | 142.8 | 2.38 IPU / Hour|
| 120 | 160.8 | 0.30 IPU / Hour|
| 1200 | 484.8 | ↑ |
| 1260 | 489.24 | 0.074 IPU / Hour|
| 20000 | 1876 | ↑ |
| 20060 | 1880.02 | 0.067 IPU / Hour|
| 50000 | 3886 | ↑ |
| 50060 | 3889.18 | 0.053 IPU / Hour|
| 100000 | 6536 | ↑ |
| 100060 | 6537.26 | 0.021 IPU / Hour|

最初のTierでは60時間処理するのに142.8 IPU必要だったのが、次のTierでは同じ60時間処理するのに必要なのは18 IPU(160.8 - 142.8 = 18)になっています。最終的に最上位のTierでは、60時間処理するのに必要なのは1.26 IPU(6537.26 - 6536 = 1.26)になっています。これをグラフ化すると下記の通りです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/786891/124455d6-2c08-55d5-109b-328abf0e8d70.png)

### Application Integration with Advanced Serverlessにおける、Compute Unitsの計算について
**Application Integrationにおける、Compute Unitsの計算について**と同一です。 

# 参考リンク
- [Informatica Cloud and Product Description Schedule](https://www.informatica.com/content/dam/informatica-com/en/docs/informatica-cloud-and-product-description-schedule.pdf)
- [Informatica Cloud Services Measurement Guide](https://knowledge.informatica.com/s/article/DOC-19140?language=en_US)

# おわりに
Application Integration with Advanced Serverlessよりも割安なApplication Integrationですが、Tierが3つしかないので、最終的にはApplication Integration with Advanced Serverlessのほうが割安になるタイミングがあるはずと思って計算してみました。
| Meter | Compute Units<BR> Per Hour | 必要IPU数 |
| :---: | :---: | :---: |
|Application Integration| 200000 | 8825=276.6+8548.4 |
|Application Integration with Advanced Serverless| 200000 | 8636=6536+2100 |

ひと月に20万時間を超えるような場合には、最終的にApplication Integration with Advanced Serverlessを使っていた方が割安になります。CAIは0.16時間でCAPがかかるので、20万時間処理するためには、一回0.16時間の処理を少なくとも125万回実行する必要がありますね。