Azure Synapse Analytics(コスト編)

# 概要
Azure Synapse Analytics(概要編)に引き続き、コスト面について記載したいと思います。

# 課金項目
Azure Synapse Analyticsには5つの料金項目があります。それぞれ用途が異なるのでプランをよく比較し、最適なものを選びましょう。以下では、それぞれのプランの特徴と料金をご紹介します。

- **データ統合**
    - データ結合とはデータを取り込み、形式を変換するのに必要なプランです。データ分析における基本機能なので、ほとんどの場合、このプランを契約する必要があります。アクティビティの実行回数や時間に基づき課金される仕組みです。実行は分単位で計算され、切り上げられます。
        - オーケストレーション アクティビティの実行：1,000 実行あたり $1 （Azure ホステッド マネージド VNET）
        - データ移動：$0.25/DIU 時間（Azure ホステッド マネージド VNET）
        - 統合ランタイム時間：$1/時間（Azure ホステッド マネージド VNET）
        - 外部統合ランタイム時間 ：$1/時間（Azure ホステッド マネージド VNET）
        - データフロー：仮想コア時間あたり $0.302（Basic)  
        ※データフロー仮想コア時間:データフローの実行とデバッグについて、コンピューティングの種類、仮想コア数、実行時間に基づいて課金が発生
        - 操作にかかる料金：1 か月あたり最初の1,000,000操作は無料。1,000,000操作以後、50,000操作あたり $0.25
        
- **データウェアハウス**
    - SQLプールを利用して、データのクエリと分析を行う際のプランです。また、SQLプールにはサーバーレスのものと専用のものが用意されており、どちらを選ぶかによって料金が異なります。サーバーレスは実行されたクエリのデータ量、専用は利用時間に基づいて課金が発生します。専用のものについては専用SQLプールで記載します。
        - サーバーレス：1TBあたりのデータ処理数 $6
        - データストレージ：1TBのデータ保存量につき$23.552/月

- **ビッグデータ分析**
    - Apache Sparkプールを使用してエンジニアリング・データ準備・機械学習などの処理タスクを実行できます。Sparkプールの使用量については、分単位に切り上げて請求されます。
        - 仮想コア時間あたり $0.155

- **ログおよびテレメトリ分析**
    - Azure Synapse Data Explorerによって対話型クエリを使用して、時系列、ログ、テレメトリのデータを分析できます。請求は使用量を分単位に切り上げて行われます。
        - Azure Synapse Data Explorerのコンピューティング:仮想コア時間あたり $0.258
        - ストレージ(Standard LRS):1TBあたり $23.552/月
              
- **専用SQLプール（旧称 SQL DW）**
    - 専用SQLプールの利用には、従量課金制・1年予約・3年予約の3つのプランが用意されており、従量課金制と比べて、1年予約は最大37%の節約、3年予約は最大65%の節約ができます。また、サービスレベルによって料金は異なります。
        - 専用（サービスレベル DW100c）：従量課金制$1.81/時間・1年予約$1.1403/時間・3年予約$0.6335/時間
        - データストレージ：1 TBのデータ保存量につき$23.552/月

# Azure Synapse Analyticsで発生する他のリソースコスト
- Azure DataLake Storage Gen2(Azure Synapse Analyticsのリソース作成時に必要になります。)  
 Azure Synapse Analyticsのリソース削除時に、<font color="red">Azure DataLake Storage Gen2のリソースも削除しなければ、Azure DataLake Storage Gen2のコストが発生し続けることになります。</font>
![create workspace.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1514023/5fca86dc-8eed-5841-6314-2bb006cab2bc.png)

# コスト管理機能
- **Synapse StudioでSQLプールのコスト管理を設定する**
    - SQLプールのコスト管理機能を使用すると、処理されるデータ量の予算を設定できます。日、週、月に処理されるデータのTB単位で予算を設定できます。
    - 手順
        - 左側のメニューの[管理]項目に移動します。
        - [Analyticsプール]で[SQLプール項目]を選択します。
        - SQLプールにカーソルを合わせ、表示されるコスト管理用のアイコンをクリックします。
![スクリーンショット 2022-01-05 22.49.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1514023/15dcfac3-20af-d0ac-068d-dad78c090fd6.png)


        - コスト管理のサイドバーが表示されるので、設定を入力します。
![スクリーンショット 2022-01-05 22.52.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1514023/b7d1b2be-abf9-b78d-7dc9-389c78d39453.png)


- **コスト分析**
    - コスト分析を使用すると、異なる時間間隔のAzure Synapse Analyticsのコストをグラフと表で表示できます。
    - 手順
        - Azure Portal画面から[コスト分析] の画面へ移動します。
        - [フィルターの追加] を選択してから、[Service Name]と[azure synapse analytics]を選択してください。
![スクリーンショット 2022-01-05 22.56.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1514023/62e98990-514b-5dce-afad-6353698bee94.png)


- **予算とアラートの作成**
    - 予算を作成することでコストを管理し、異常な支出や浪費のリスクについて自動的に通知するアラートを作成できます。 アラートは予算とコストの閾値と比較した支出に基づきます。
    - 手順
        - Azure Portal画面から[Cost Management] の画面へ移動します。
        - [コストのアラート] を選択し、[+追加]をクリックします。
![スクリーンショット 2022-01-05 23.00.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1514023/82f7edb6-c2ce-20a5-23f7-68f7d9c8eeb3.png)


        - [予算の詳細]と[通知の設定]を入力します。
![スクリーンショット 2022-01-05 23.02.45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1514023/f1b9b7ff-fdf0-62d3-5b7d-7a329089a91e.png)

# まとめ
上記のツールの他に[料金計算ツール](https://azure.microsoft.com/ja-jp/pricing/calculator/)もありますので、こちらの利用も検討してください。