この記事は、Office 365 Advent Calendar 2018 に参加しています。

Office 365 Advent Calendar 2018
https://adventar.org/calendars/3184

2018 年も残りわずかですが、そろそろ Microsoft Teams を本格的に導入しようと考えている Office 365 ユーザー企業も多いかと思いますが、そんな検討段階で知っておいて損はないのが Microsoft Teams のアーキテクチャです。

単なるチャットツールではない Microsoft Teams は、実はちょっとだけ複雑なアーキテクチャの上で動いているようです。今回はそのあたりを少しだけ紹介します。

チャット

まずはチャットについては、Azure 上に構成されたチャット サービスで動作しストレージに保存されます。どうやら Cosmos DB っぽいですね。その後、Exchange Online のメール ボックスに作成される隠しフォルダに格納され、管理者はこのメール ボックスを対象にインプレース ホールドや訴訟ホールドを行うことができます。

実際にメール ボックスの中を PowerShell などで覗くと「チーム チャット」という名前のフォルダーが出来ていますが、ユーザーはこれに直接アクセスすることはできません。

また、Microsoft Teams では、チャットはチームのチャネルを利用するものと、1 対 1 または N 人のグループを作成して行うものがありますが、それぞれでチャットの記録が格納されるメール ボックスが異なります。

チームのチャネルを利用するものでは、チームが紐づく Office 365 グループのメール ボックスに格納されるのに対し、1 対 1 または N 人のグループを利用するものでは各ユーザーのメールボックスに格納されるようです。

また、もしも仮にユーザーがメールボックスを持たなかった場合は、チャットの記録は格納されないため、あとから検索して取り出すことができないようです。このあたり、Microsoft Teams としては基本的にメール ボックスが作成されていることを前提に機能を用意しているようなところもあり、メール ボックスを持たないユーザーがいる場合の運用についてはしっかりとした検証および動作確認を行った方が良いかと思います。(特にコンプライアンスに関する機能まわり)

ファイル

Microsoft Teams を利用して共有されたファイルは、SharePoint Online または OneDrive for Business に保存されます。

チームのチャネルで共有されたものについては、チームが紐づく SharePoint Online のサイト コレクションのドキュメント ライブラリに保存され、1 対 1 または N 人のグループで共有されたものについては、各ユーザーの OneDrive for Business に保存されます。

チャネルの場合、SharePoint Online のサイト コレクションにあるひとつのドキュメント ライブラリ内にチャネル毎のフォルダーが作成されます。

また、もしも仮にユーザーが OneDrive for Business を利用できない場合は、1 対 1 のチャットなどでファイルを共有できないようです。

Web 会議の録画

Microsoft Teams では、Web 会議時に利用できる機能として会議の録画機能があります。ここで録画された結果の動画は直接クラウド上に保存されるのですが、その保存先は Microsoft Stream になっています。

録画は Azure 上の Media Service 上で処理されたあと Microsoft Stream に自動的にアップロードされます。この時、Media Service での処理に時間がかかるため、ユーザーが Microsoft Teams 上で再生できるようになるまでには少しだけ時間がかかります。

また、録画を行うユーザーは、Microsoft Stream に対して動画をアップロードできる権限を持つ必要があります。

Office 365 グループ

そしてなんといっても Microsoft Teams でチームを作成するためには、Office 365 グループを作成できる必要があります。Office 365 グループが作成されると、グループの Exchange Online メール ボックス、SharePoint Online サイト コレクションが作成されます。

Exchange Online メール ボックスが作成されるということは、メール アドレスが付与されるということです。ここで少々厄介なのが、Microsoft Teams からユーザーがチームを作成した場合、チーム名が日本語の場合は特にメール アドレスのエイリアス(@ の左の部分)がよく分からない文字列になってしまいます。Microsoft Teams だけを利用するには問題がないのですが、もしも後から Outlook からも Office 365 グループとして使いたいとなった場合にちょっと困るかもしれません。

Microsoft Teams を利用することでのメリットを高めるには、チームを作成できる権限をいかにしてユーザーに移譲できるかがカギになるかと思います。

さいごに

Microsoft Teams のアーキテクチャの要素について主要な部分を簡単に紹介しました。このように Microsoft Teams では、Office 365 や Azure の様々なサービスが組み合わさって構成されています。特にデータの保管先としても重要となっているのが、Exchange Online、SharePoint Online、OneDrive for Business、Microsoft Stream になっています。

Microsoft Teams の導入を検討するにあたっては、これらと Office 365 グループの運用も合わせて検討しておくと良いのかなと思います。さらに言うなら、Microsoft Planner など、Office 365 の他のサービスも利用できると良いですね。

ちなみに今回拝借したスライドは Microsoft Ignite 2018 の下記リンク先のセッション資料です。

BRK3118 – Microsoft Teams architecture update
https://myignite.techcommunity.microsoft.com/sessions/65507

他にも Skype for Business とのプレゼンスの連携やら Direct Routing やらクライアント アプリのアーキテクチャやらが紹介されています。こちらも是非に。

というわけで、Office 365 Advent Calendar 2018 の 12 月 8 日分の投稿でした。その他の気になる投稿はリンク先ですよー。

Office 365 Advent Calendar 2018
https://adventar.org/calendars/3184

では、良いクリスマスを!!