これから Azure Synapse Analytics を使い始める時の学習コンテンツまとめ

ビックデータソリューションでよく登場する分析サービスこと [Azure Synapse Analytics](https://azure.microsoft.com/ja-jp/services/synapse-analytics/) を勉強する際に活用できる、マイクロソフトが公開している学習コンテンツをまとめました。これから Synapse を勉強し始める人にもお役に立てれば嬉しいです。  
  
学習の進め方としては、以下の方法がお勧めでしょうかね。
  1. [Microsoft Docs のクイックスタート](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started)を実施する
  2. YouTube で Synapse の概要を説明した動画を閲覧する
  3. [Microsoft Cloud Workshop のハンズオントレーニング](https://github.com/microsoft/MCW-Azure-Synapse-Analytics-and-AI/blob/main/Hands-on%20lab/HOL%20step-by%20step%20-%20Azure%20Synapse%20Analytics%20and%20AI.md)を実施する
  4. Microsoft Docs の個々の機能のチュートリアルを実施する
  5. YouTube で個々の機能詳細を説明した動画を閲覧する
  6. [Microsoft Learn](https://docs.microsoft.com/ja-jp/learn/browse/?filter-products=Synapse&terms=Synapse) で掘り下げて勉強したい機能のモジュールを実施する
  7. Microsoft Certification で Synapse に関連する[資格(DP-203)](https://docs.microsoft.com/ja-jp/learn/certifications/exams/dp-203)を取得する
  
これを全部行えば、Azure Synapse Analytics の基本知識は身についているはず！

## Microsoft Docs (チュートリアル)
Microsoft が公開している公式ドキュメントこと Microsoft Docs にあるクイックスタートとチュートリアルです。クイックスタートは、まずサービスを試しに使ってみる時に使えます。個々の機能のチュートリアルは、個々の機能を深く使い始める際に使用できるかと思います。

### クイックスタート
- [Synapse ワークスペースを作成する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-create-workspace)
- [サーバーレス SQL プールを使用したデータ分析の概要](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-analyze-sql-on-demand)
- [Data Explorer プールを使用して分析を開始する (プレビュー)](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-analyze-data-explorer)
- [Spark を使用して分析を開始する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-analyze-spark)
- [専用 SQL プールを使用したデータ分析の概要](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-analyze-sql-pool)
- [ストレージ アカウント内のデータの分析を開始する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-analyze-storage)
- [パイプラインとの統合を開始する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-pipelines)
- [Power BI でワークスペース データを視覚化する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-visualize-power-bi)
- [Synapse ワークスペースを監視する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-monitor)
- [Synapse ナレッジ センターの探索を開始する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-knowledge-center)
- [管理者の追加の概要](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/get-started-add-admin)

### サーバーレス SQL プール
- [サーバーレス SQL プールを使用して Synapse Studio で Azure Open Datasets を分析する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/sql/tutorial-data-analyst)
- [サーバーレス SQL プールを使用して論理データ ウェアハウスを作成する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/sql/tutorial-logical-data-warehouse)

### Spark プール
- [Apache Spark を使用したデータの視覚化](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/spark/apache-spark-data-visualization-tutorial)
- [Azure Synapse Studio ノートブック](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/spark/apache-spark-to-power-bi)
- [Synapse Analytics のサーバーレス Apache Spark プールで、Pandas を使用して ADLS データの読み取り/書き込みを行う](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/spark/tutorial-use-pandas-spark-pool)
- [FSSPEC を使用して Synapse Analytics のサーバーレス Apache Spark プール内の ADLS データの読み取りと書き込みを行う](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/spark/tutorial-spark-pool-filesystem-spec)
- [Apache Spark MLlib で機械学習アプリをビルドする](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/spark/apache-spark-machine-learning-mllib-notebook)
- [Synapse Studio で Apache Spark ジョブ定義を作成する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/spark/apache-spark-job-definitions)

### パイプラインとマッピングデータフロー
- [コピー アクティビティを使用してデータを専用 SQL プールに読み込む](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/quickstart-copy-activity-load-sql-pool)
- [マッピング データ フローを使用してデータを変換する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/quickstart-data-flow)
- [Apache Spark のジョブ定義を使用してデータを変換する](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/quickstart-transform-data-using-spark-job-definition)

### Machine Learning 統合
- [Apache Spark を使用したデータの視覚化](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/spark/apache-spark-data-visualization-tutorial)
- [Apache Spark MLlib で機械学習アプリをビルドする](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/spark/apache-spark-machine-learning-mllib-notebook)
- [自動機械学習を使用してモデルをトレーニングする](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-automl)
- [自動機械学習で Python のモデルをトレーニングする](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/spark/apache-spark-azure-machine-learning-tutorial)
- [専用 SQL プール向けの機械学習モデル スコアリング ウィザード](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-sql-pool-model-scoring-wizard)
- [サーバーレス Apache Spark プールで PREDICT を使用して機械学習モデルをスコア付けする](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-score-model-predict-spark-pool)

### Cognitive Services 統合
- [Cognitive Services を使用した感情分析](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-cognitive-services-sentiment)
- [Cognitive Services を使用した異常検出](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-cognitive-services-anomaly)
- [コグニティブ サービスを使用した Text Analytics](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-text-analytics-use-mmlspark)
- [Computer Vision と Cognitive Service](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-computer-vision-use-mmlspark)
- [Azure Applied AI Services での Form Recognizer](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-form-recognizer-use-mmlspark)
- [Cognitive Service を使用する Translator](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-translator-use-mmlspark)
- [Synapse Machine Learning を使用して機械学習アプリケーションをビルドする](https://docs.microsoft.com/ja-jp/azure/synapse-analytics/machine-learning/tutorial-build-applications-use-mmlspark)

## Microsoft Cloud Workshop (ハンズオントレーニング)
Microsoft が Azure サービスに関するワークショップを実施するためのコンテンツを [Microsoft Cloud Workshop ](https://microsoftcloudworkshop.com/) にて公開しています。Azure Synapse Analytics に関するハンズオントレーニングもその中で公開されています。英語コンテンツなので、Webブラウザの翻訳機能を使って利用しましょう。  
- [MCW-Azure-Synapse-Analytics-and-AI/Before the HOL](https://github.com/microsoft/MCW-Azure-Synapse-Analytics-and-AI/blob/main/Hands-on%20lab/Before%20the%20HOL%20-%20Azure%20Synapse%20Analytics%20and%20AI.md) (※ハンズオン前に実施)
- [MCW-Azure-Synapse-Analytics-and-AI/HOL step-by step](https://github.com/microsoft/MCW-Azure-Synapse-Analytics-and-AI/blob/main/Hands-on%20lab/HOL%20step-by%20step%20-%20Azure%20Synapse%20Analytics%20and%20AI.md) (※ ハンズオン本編)

以下のことをこのハンズオンを通して学ぶことができます。
 - Azure Data Lake Store v2 のデータ(Parquet/CSV)をデータフロー＆パイプラインを使って専用SQLプールへコピーしてクエリ実行(SQL)を行う
 - Azure Data Lake Store v2 のデータ(Parquet/CSV/JSON)をサーバレスSQLプールでクエリ実行(SQL)を行う
 - Azure Data Lake Store v2 のデータ(Parquet)をSparkプールで処理(ノートブック/Spark SQL)を行う
 - 専有SQLプールでの列レベルセキュリティ
 - 専有SQLプールでの行レベルセキュリティ
 - 専有SQLプールでの動的データマスキング
 - Synapse 経由で Azure Data Lake Store v2 のデータを使って Azure ML の AutoML で分析モデルを作成する
 - 作成した分析モデルを使って専有SQLプールのデータを分析する
 - 専用SQLプールでのワークロードの管理
 - 専用SQLプールでの動的管理ビューを使った監視
 - Synapse Pipeline と Azure Cognitive Search の連携
 - Microsoft Purview との統合

> このトレーニングは、2022/7/30 をもって廃止され、リポジトリもアーカイブされる(使えなくなる)みたいです。急いで利用しましょう。

## YouTube (動画学習)
日本マイクロソフトは YouTube のチャネル ([日本マイクロソフト株式会社 公式チャンネル](https://www.youtube.com/user/microsoftjapanvideos), [Microsoft Partner Network Japan](https://www.youtube.com/channel/UClVBYGCEwOkdVMoBClVaTqg) など) にて Azure サービスを学ぶための多くの動画を公開しています。以下が Azure Synapse Analytics に関する動画です。ハンズオンやドキュメントでの学習も良いですが、動画による目と耳による学習も効果的だと思われます。
- [Azure Synapse Analytics 技術編 ～ 最新の統合分析プラットフォームによる新しい価値の創出（前編）- de:code 2020](https://www.youtube.com/watch?v=iR3SKdgC8gI) (2020/07/20公開)
- [Azure Synapse Analytics 技術編 ～ 最新の統合分析プラットフォームによる新しい価値の創出（後編）- de:code 2020](https://www.youtube.com/watch?v=Q5Xrc7Jq28Q) (2020/07/20公開)
- [Azure Synapse Analytics 概要 ( 前編: Synapse SQL )](https://www.youtube.com/watch?v=QxpPuxTIjbc) (2021/01/18公開)
- [Azure Synapse Analytics 概要 ( 後編: Synapse Pipeline and Spark )](https://www.youtube.com/watch?v=_IUMwaRGnWY) (2021/01/18公開)
- [Azure Synapse Link  概要](https://www.youtube.com/watch?v=b0I19v4B85A) (2021/04/08公開)
- [Azure Machine Learning - Synapse Analytics 連携](https://www.youtube.com/watch?v=eUBgLY5LwrI) (2021/04/12公開)
- [Azure Synapse Analytics のパフォーマンス最適化 ( Dedicated SQL Pool )](https://www.youtube.com/watch?v=n5wXSmf4Gkc) (2021/01/19公開)
- [Azure SQL と Synapse workspace のセキュリティ](https://www.youtube.com/watch?v=oCbf2JlAPUQ) (2021/04/12公開)
- [GitHub による Azure Synapse Studio のソースコード管理と CI/CD](https://www.youtube.com/watch?v=CS6PWxInaWk) (2021/04/07公開)
- [Power BI と Azure Synapse Analytics 連携](https://www.youtube.com/watch?v=uanI4r3Q0ik) (2021/04/07公開)
- [Dynamics 365 Customer Insights と Azure Synapse Analytics 連携](https://www.youtube.com/watch?v=Zb4j2-ub3gU) (2021/04/07公開)
- [Qlik データ統合製品と Synapse による SAP データの活用](https://www.youtube.com/watch?v=-PEglscIeA4) (2021/04/07公開)
- [Microsoft Cloud Workshop: Synapse Analytics and AI による自習方法解説](https://www.youtube.com/watch?v=TfvamwWezvw) (2021/04/08公開)

## Microsoft Learn (座学)
Microsoft は自主学習コンテンツとして様々なコースを [Microsoft Learn](https://docs.microsoft.com/ja-jp/learn/) にて公開しています。様々なテーマでの 4,000 以上のコース(モジュール)が公開されていて、特定の Azure サービスを学ぶのに活用できます。モジュールの中には演習(ハンズオン)を伴うものもあります。以下が Azure Synapse Analytics に関するモジュールです。

### 基本
- [Azure Synapse Analytics の概要](https://docs.microsoft.com/ja-jp//learn/modules/introduction-azure-synapse-analytics/)
- [Azure Synapse Analytics のコンポーネントを確認する](https://docs.microsoft.com/ja-jp//learn/modules/survey-components-of-azure-synapse-analytics/)
- [Azure Synapse Studio の紹介](https://docs.microsoft.com/ja-jp//learn/modules/explore-azure-synapse-studio/)
- [Azure Synapse Analytics でレイク データベースを作成する](https://docs.microsoft.com/ja-jp//learn/modules/create-metadata-objects-azure-synapse-serverless-sql-pools/)

### サーバーレス SQL プール
- [Azure Synapse サーバーレス SQL プールからデータを提供する](https://docs.microsoft.com/ja-jp//learn/modules/serve-data-from-azure-synapse-serverless-sql-pool/)
- [Azure Synapse サーバーレス SQL プールを使用してレイク内のデータのクエリを実行する](https://docs.microsoft.com/ja-jp//learn/modules/query-data-lake-using-azure-synapse-serverless-sql-pools/)
- [Azure Synapse サーバーレス SQL プールを使用してレイク内のデータを変換する](https://docs.microsoft.com/ja-jp//learn/modules/use-azure-synapse-serverless-sql-pools-for-transforming-data-lake/)
- [Azure Synapse Analytics の SQL サーバーレスを使用して Azure Cosmos DB に対するクエリを実行する](https://docs.microsoft.com/ja-jp//learn/modules/query-azure-cosmos-db-with-sql-serverless-for-azure-synapse-analytics/)
- [Azure Synapse サーバーレス SQL プールでデータを保護し、ユーザーを管理する](https://docs.microsoft.com/ja-jp//learn/modules/secure-data-manage-users-azure-synapse-serverless-sql-pools/)

### Spark プール
- [Azure Synapse Analytics の Apache Spark を使用したビッグ データのエンジニアリングについて](https://docs.microsoft.com/ja-jp//learn/modules/understand-big-data-engineering-with-apache-spark-azure-synapse-analytics/)
- [Azure Synapse Analytics で Apache Spark ノートブックを使用してデータを取り込む](https://docs.microsoft.com/ja-jp//learn/modules/ingest-data-with-apache-spark-notebooks-azure-synapse-analytics/)
- [Azure Synapse Analytics の Apache Spark プールで DataFrame を使用してデータを変換する](https://docs.microsoft.com/ja-jp//learn/modules/transform-data-with-dataframes-apache-spark-pools-azure-synapse-analytics/)
- [Azure Synapse Analytics で Apache Spark を使用して Azure Cosmos DB に対してクエリを実行する](https://docs.microsoft.com/ja-jp//learn/modules/query-azure-cosmos-db-with-apache-spark-for-azure-synapse-analytics/)
- [Azure Synapse Analytics の Apache Spark を使用して Data Engineering ワークロードを監視および管理する](https://docs.microsoft.com/ja-jp//learn/modules/monitor-manage-data-engineering-workloads-apache-spark-azure-synapse-analytics/)
- [Azure Synapse Analytics で SQL プールと Apache Spark プールを統合する](https://docs.microsoft.com/ja-jp//learn/modules/integrate-sql-apache-spark-pools-azure-synapse-analytics/)

### パイプライン
- [Azure Data Factory または Azure Synapse パイプラインを使用したペタバイト規模のインジェスト](https://docs.microsoft.com/ja-jp//learn/modules/petabyte-scale-ingestion-azure-data-factory/)
- [データを Azure Data Factory または Azure Synapse Pipeline と統合する](https://docs.microsoft.com/ja-jp//learn/modules/data-integration-azure-data-factory/)
- [Azure Data Factory または Azure Synapse パイプラインを運用できるようにする](https://docs.microsoft.com/ja-jp//learn/modules/operationalize-azure-data-factory-pipelines/)
- [Azure Synapse Analytics パイプラインで緩やかに変化するディメンションを設定する](https://docs.microsoft.com/ja-jp//learn/modules/populate-slowly-changing-dimensions-azure-synapse-analytics-pipelines/)
- [Azure Data Factory または Azure Synapse パイプラインでデータの移動と変換を調整する](https://docs.microsoft.com/ja-jp//learn/modules/orchestrate-data-movement-transformation-azure-data-factory/)
- [Azure Data Factory または Azure Synapse Pipeline で既存の SSIS パッケージを実行する](https://docs.microsoft.com/ja-jp//learn/modules/execute-existing-ssis-packages-azure-data-factory/)

### 設計/最適化
- [Azure Synapse Analytics を使用して最新のデータ ウェアハウスを設計する](https://docs.microsoft.com/ja-jp//learn/modules/design-modern-data-warehouse-using-azure-synapse-analytics/)
- [Azure Synapse Analytics でデータ読み込みのベスト プラクティスを使用する](https://docs.microsoft.com/ja-jp//learn/modules/use-data-loading-best-practices-azure-synapse-analytics/)
- [Azure Synapse Analytics 内でデータ ウェアハウスのクエリ パフォーマンスを最適化する](https://docs.microsoft.com/ja-jp//learn/modules/optimize-data-warehouse-query-performance-azure-synapse-analytics/)
- [Azure Synapse Analytics を使用したハイブリッド トランザクションおよび分析処理ソリューションの設計](https://docs.microsoft.com/ja-jp//learn/modules/design-hybrid-transactional-analytical-processing-using-azure-synapse-analytics/)
- [Azure Synapse Analytics でデータ ウェアハウス ストレージを分析および最適化する](https://docs.microsoft.com/ja-jp//learn/modules/analyze-optimize-data-warehouse-storage-azure-synapse-analytics/)

### その他の機能
- [コードを書かずに Azure Data Factory または Azure Synapse パイプラインを使用して大規模な変換を実行する](https://docs.microsoft.com/ja-jp//learn/modules/code-free-transformation-scale/)
- [Azure Cosmos DB を使用して Azure Synapse Link を構成する](https://docs.microsoft.com/ja-jp//learn/modules/configure-azure-synapse-link-with-azure-cosmos-db/)
- [Azure Databricks を Azure Synapse と統合する](https://docs.microsoft.com/ja-jp//learn/modules/integrate-azure-databricks-other-azure-services/)
- [Azure Synapse Analytics 内で Power BI を使用してレポートを作成する](https://docs.microsoft.com/ja-jp//learn/modules/build-reports-using-power-bi-azure-synapse-analytics/)
- [Azure Synapse Analytics 内で機械学習を統合する](https://docs.microsoft.com/ja-jp//learn/modules/integrate-machine-learning-azure-synapse-analytics/)
- [Azure Synapse Analytics のデータ ウェアハウス開発者向け機能について](https://docs.microsoft.com/ja-jp//learn/modules/understand-data-warehouse-developer-features-of-azure-synapse-analytics/)
- [Azure Synapse Analytics でのデータ ウェアハウス アクティビティの管理と監視](https://docs.microsoft.com/ja-jp//learn/modules/manage-monitor-data-warehouse-activities-azure-synapse-analytics/)
- [Azure Synapse Analytics でデータ ウェアハウスを保護する](https://docs.microsoft.com/ja-jp//learn/modules/secure-data-warehouse-azure-synapse-analytics/)

## Microsoft Certification (資格受験)
Azure Synapse Analytics の基礎を勉強したら、[資格(MCP)](https://docs.microsoft.com/ja-jp/learn/certifications/browse/)を取得してみましょう。資格勉強と受験の過程で新たに学ぶことも多いかと思います。以下が Azure Synapse Analytics に関する資格です。
- [試験 DP-203: Microsoft Azure でのデータ エンジニアリング](https://docs.microsoft.com/ja-jp/learn/certifications/exams/dp-203)

### Whizlabs 
[Whizlabs](https://www.whizlabs.com/) は、私が MCP 取得の際に利用しているサービスです。有償サービスですが、各MCP(や他のクラウドベンダーの試験)の模試を受けることができます。上記の DP-203 試験の模試も提供されています。模試を通じて、自分の Azure Synapse Analytics の理解度を知ることができ、知らなかったことも学ぶことができると思います。英語コンテンツなので、Webブラウザの翻訳機能を使って利用すると良いかと思います。  
[Whizlabs - Implementing an Azure Data Solution (DP-203)](https://www.whizlabs.com/learn/course/microsoft-azure-certification-dp-203/420)

> 私は模試は１問も答えずすぐに終了させ、問題と答えをひたすら読む、という使い方をしています