みなさん、こんにちは!クラウドアーキテクトの技術ブログへようこそ。
今回は、データサイエンティストやMLエンジニアの皆様にとって待望のアップデートをご紹介します。AWSの統合開発環境であるAmazon SageMaker Unified Studioにおいて、Gitバージョン管理機能(Repositories)が大幅に強化されました!
これまで個別のツールごとに異なっていたソース管理体験が一本化され、GitHub、GitLab、Bitbucketといった使い慣れたGitリポジトリとの柔軟な連携が、プロジェクト内のあらゆるツールからシームレスに行えるようになります。本記事では、このアップデートの概要、メリット、具体的なユースケース、そして注意点について詳しく解説します。
1. はじめに:何がアップデートされたのか?
これまでAmazon SageMaker Unified StudioにおけるGit管理は、プロジェクトレベルでの「自動同期(automatic sync)」が中心でした。しかし、このアプローチでは「どのファイルをいつコミットするか」を細かく制御することが難しく、特にNotebooksにおいては十分なGitサポートが提供されていませんでした。
今回のアップデートにより、新機能「Repositories」が導入されました。これにより、Query Editor、Visual ETL、Workflows、そしてNotebooksを含むすべてのプロジェクトツールにおいて、一貫したファイルレベルのGitバージョン管理が直接行えるようになります。
2. この機能の概要とメリット
新しいGitバージョン管理機能には、開発効率を飛躍的に向上させる以下のメリットがあります。
- ファイルレベルでの柔軟なバージョン管理:
プロジェクト単位で一律に同期されるのではなく、Gitで追跡(トラック)したいファイルを自分で選択し、任意のタイミングでまとめてコミット&プッシュできます。 - Notebooksを含む全ツールへの一貫した提供:
これまで直接的なGitサポートがなかったNotebooksを含め、Query EditorやVisual ETLなど、Unified Studio内のどのツールからでも同様のソース管理画面を利用できます。 - プロジェクト作成後でも自由に追加可能(疎結合):
リポジトリの設定はプロジェクト作成時に強制されません。開発フェーズが進んでソース管理が必要になったタイミングで、後からいつでもリポジトリを追加できます。 - マルチリポジトリ・マルチブランチ対応:
1つのプロジェクトを、複数のリポジトリや異なるブランチに同時に接続できます。ブランチの作成、最新ソースのプル、さらには競合(コンフリクト)の解消まで、Unified Studioの画面から離れることなく完結できます。 - CLIアクセスの維持:
GUIだけでなく、JupyterLabやCode Editorを使用している場合は、内蔵ターミナルから従来通りGit CLIコマンドを実行して高度な操作を行うことも可能です。
3. 想定されるユースケース
ユースケースA:データパイプラインとMLモデルコードの並行開発
データエンジニアが「Visual ETL」でデータ加工フローを作成し、データサイエンティストが「Notebooks」でモデルの検証を行うような共同プロジェクトにおいて有効です。それぞれの資材を同じリポジトリの別々のブランチ、あるいは異なるリポジトリへ、画面を切り替えることなくシームレスにコミット・管理できます。
ユースケースB:複数メンバーによるブランチ戦略の実行
コンソール上で直接新しい「フィーチャーブランチ(feature/xxx)」を作成し、作業が完了したらプッシュして、GitHubやGitLab側でプルリクエストを作成する、といった王道のGitフローが非常にスムーズになります。コンフリクトが発生した場合も、Unified Studio内で競合箇所を確認して解消することが可能です。
4. 注意点や従来の機能との違い
本機能を利用するにあたり、以下の点に注意してください。
「自動同期」から「明示的なコミット」への変更
これまでの「自動同期モデル」に慣れていた場合、挙動の違いに注意が必要です。今後は、開発者が意図してファイルを選択し、コミットおよびプッシュを行う「一般的なGit開発スタイル」へとシフトします。しかし、これは商用開発においてはむしろ望ましい標準的なプラクティスと言えます。
既存プロジェクトでの利用には「オプトイン」が必要
すでに以前のGit機能を利用している既存のSageMaker Unified Studioプロジェクトでこの新しいリッチなGit機能を使用するには、プロジェクトの設定を更新して新しいモデルへオプトイン(移行)する必要があります。新規に作成するプロジェクトについては、最初からこの新しい「Repositories」機能が利用可能です。
対象リージョンとドメイン環境
本機能は、Amazon SageMaker Unified StudioがサポートされているすべてのAWSリージョンで利用可能です。また、IAMおよびIAM Identity Center(旧AWS SSO)ドメインの双方をサポートしています。
5. まとめ
今回のAmazon SageMaker Unified StudioにおけるGit管理の強化は、機械学習やデータエンジニアリングの現場における「コラボレーションの質」を大きく向上させる重要なアップデートです。
GUIツール(Visual ETLなど)とコード開発(Notebooks、Code Editor)のソースコード管理が一元化されたことで、MLOps(Machine Learning Operations)のパイプライン構築や、チームでの共同開発がこれまで以上に容易になります。既存のプロジェクトをお持ちの方は、ぜひ新しい「Repositories」体験へアップデートし、その柔軟性を体感してみてください!