Microsoft Dataverseとは何か?Teams版との違いやPower Platformとの関係について解説

Microsoft Dataverse

今回は、Power AutomateやPower Appsのデータ元となる「Microsoft Dataverse(旧CDS)」について解説します。Power AutomateやPower Appsなどの「Power Platform」との関係性や、MicrosoftサービスにおけるDataverseの立ち位置、Teams版と通常版の比較などを箇所を図や表でまとめました。

正直、Dataverseという存在が何なのか分からなくてもPower AutomateやPower Virtual Agentsは使えます。しかし、

  • 「Power Automateのフローを移行するのにベストな方法は何だろう?」
  • 「Power Virtual Agentsで作成したボットが消せない・・・どこで消せるんだ!?」

となったときに、一度Dataverseについて理解しておけば毎回「PVA ボット 消し方」と調べたりせず、自分で考えて問題を解決することができるようになります。(ちなみに消し方はこちら)ぜひ、一度目を通していただければ幸いです。

Microsoft Dataverseとは

Microsoft Dataverse(旧名称:Common Data Service)は、クラウド型のデータベースおよびアプリケーションプラットフォームです。「Database(データベース)」ではなく「Dataverse(データバース)」で、宇宙を意味する「Universe」やメタバース「Metaverse」と同じスペルです。

クラウド型データベースは、自社にデータベースを設置せずにクラウド上で利用します(⇔スタンドアロン型)。Microsoft Dataverseは、このクラウド型データベースに加えて、Power Automateなどのアプリが動作する基盤(=アプリケーションプラットフォーム)でもあります。

Power Platformとは

Power Platformとは、以下5つのサービスの総称です。

  • Power Apps(アプリ作成ツール)
  • Power Automate(自動化ツール)
  • Power Virtual Agents(ボット作成ツール)
  • Power Pages(Webサイト作成ツール)
  • Power BI(データ分析・グラフ化ツール)

これらのサービスは全てノーコードで開発できるため、プログラミング経験のない方でも簡単に利用することができます。

また、これらは相互に組み合わせて使うこともできます。例えば、Power Virtual Agentsでチャットボットを作成する際に、Power Automateを使用してExcelのリストデータからユーザーからの入力値に一致するデータを取得して返すことができます。

Power Virtual Agentsで作成したチャットボットにPower Automateのフローを組み込む方法については、以下の記事をご参照ください。

「聞いたこともない」という人も実は使っている

Power Apps やPower Automateなどを普段使っている人のなかには「Microsoft Dataverseなんて触ったことない」「聞いたこともない」という方もいらっしゃるかと思います。これこそが、Microsoft Dataverseの特徴でもあり、狙いでもあります。

通常、Webページを作る際やアプリを開発する際にはデータベースを自分で用意する必要があります。開発者は、「どのくらいデータ量を確保すべきか?」「どんなデータを登録するか?」など、データベースについて考え(=データベース設計)、SQLを実行してテーブルを作成し、継続的に管理します。

しかし、Microsoft Dataverseはその必要がありません。Power PlatformのサービスでWebアプリやWebサイトなどを作成すると、自動的にMicrosoft Dataverseにデータが保存され、管理されます。

Microsoftのなかでの位置づけ

Microsoftの各サービスはそれぞれが連携しており、TeamsからSharePointのデータを参照したり、Power AutomateからExcelのデータを取得したりと、複数のサービスを掛け合わせることで何通りもの機能を実現できます。

そのなかで、Power Platformは「業務の改善や効率化のためのツール群」、Microsoft Dataverseはデータベースのような役割をしています。データベースの「ような」と記載しましたが、これについては次項にて解説します。

なぜ「データベース」でなく「データバース」なのか

なぜ、データ「バース」なのかというと、Microsoft Dataverseはデータベースとしての機能以外にも様々な機能を持っているからです。

Microsoft Dataverseの特徴1:APIとしての役割

Microsoft Dataverseは、「Microsoft Dataverse Web API」というAPIを公開しています。APIというのは「Application Programming Interface」の略で、2つ以上のアプリを連携するための窓口のようなものです。

例えば、C#からMicrosoft Dataverseのデータを取得したいとします。この場合、C#で作成したアプリケーションをAzure Active Directoryに登録しておき、API使用時にはそれを認証情報としてアクセスしすることでDataverseのデータを参照します。

参考:

Microsoft Dataverseの特徴2:クラウドデータベースとしての役割

Microsoft Dataverseは、クラウド型データベースとしての役割も持ちます。

Dataverseのなかにデータベースがあり、データベースにはテーブルが存在します。テーブルは「標準テーブル」「カスタムテーブル」の2種類です。カラムに制約をかけたり、リレーションシップ設定なども設定できます。

参考:Dataverse のテーブル

Microsoft Dataverseの特徴3:ALMの実現

Microsoft Dataverseは、ALMを実現します。ALMとは 「Application Lifecycle Management」の略語です。これは、アプリが作成されてから使用されなくなるまで継続的・統合的に管理されることを意味します。

Dataverseでは、ALMを実現するために「ソリューション」という単位でデータを管理しています。「ソリューション」というのは、アプリやフローなどをまとめて管理するフォルダのようなもの(仮想フォルダ)です。

Power Automateでは、フローを移行したり共有したりするのに、「共有」機能や、zipファイルにして保管するという方法もあります。しかし、フローに関する接続情報やテーブルデータまでは組み込めません。一方、ソリューションで管理をすると、アプリに対するセキュリティロールや、テーブルの構造など全てをソリューションの情報として持たせることができます。そのため、別環境に移行する際にはソリューションのインポートのみで可能になります。

例えば、Power Automateでは「ソリューション」というメニューからソリューションのインポート・エクスポートが可能です。

参考:

Dataverse for Teams

Microsoft Dataverseには、Teams上で使用することのできる「Dataverse for Teams」があります。作成できるデータベースの数は、Dataverseだと無制限ですが、Teams版ではチームごとに1つだけとなっています。他にも、容量や機能に関してDataverseの簡易版のような内容となっています。Teams版からはDataverseへのアップグレードが可能です。

エクセルのシートのような感覚でデータを作成できる

Teams版のDataverseは、Power Appsを追加することで使用できます。Power Appsでは必ずアプリを作成する必要があり、そのアプリ内にテーブルを作成する形になります。このテーブルはDataverseのテーブルとは別物で、Teams上で作成したPower Appsのアプリに紐づいています。

DataverseとDataverse for Teamsの比較

Microsoft DataverseとTeams版のDataverseの比較を以下に記載します。

Dataversefor Teams
環境無制限チームごとに1つ
最大サイズ4TBまたはそれ以上100万行または2GB
ユーザーロール詳細に設定可能チームの所有者・メンバー・ゲスト
(チームに紐づく)
ライセンスMicrosoft 365だけでは使えない
(別途契約が必要)
Microsoft 365が入っていれば無料
高度なデータ型
(顧客、通貨など)
       〇       ×
API アクセス       〇       ×
活動ログ       〇       ×
項目単位のセキュリティ       〇       ×
レコードの共有       〇       ×
役割の割り当て       〇       △
(チームの所有者・メンバー・ゲスト
に基づいて決まっている)

Dataverse for TeamsはMicrosoft 365があれば使用できるため、使える環境にあるという方が多いかと思います。設定できる項目や機能はDataverseと比較して乏しいものの、チーム内に環境を作るということで余計な設定などをせずに簡単にデータベースを作成できることがメリットとも言えます。

普段使い慣れているTeams上から使えるということで、簡易的なデータベースを作成してWebアプリやボットを動かしたいという方におすすめです。

高度なセキュリティ機能を利用したい場合や、チーム内で完結しないアプリケーションを構築したい場合、Web APIを利用したい場合などにはDataverseを使う必要があります。DataverseはPower Appsから管理するものなのでPower Appsライセンスを購入する形となります。料金については公式のPower Apps の価格をご参照ください。

参照:

まとめ

今回は、Power Dataverseとは何かについて解説しました。データベースを従来のようにSQL文を書いたり詳細に設計をすることなく、まるでExcelのシートを編集するかのように使うことができ、Power Platformのアプリを使う際には全く意識しなくても裏でいいかんじにデータを作成・管理してくれるものだということが分かりました。

ふだんPower AutomateやPower Virtual Agentsなどを使う際には、テーブルの作成・編集等はPower Appsから行うので、尚更「Dataverse」という単語を聞く機会は無いと思います。それでも、Dataverseについて理解しているのといないのとでは、Microsoftのサービスを使用する上で何か課題が出たときの対処に差が出ます。

他にもPower Platformに関連の記事を投稿していますので、ぜひ一読いただければと思います。

デスクの脚につけて邪魔にならないサイズ感。マットな質感とお洒落なカラーがかっこいい。マグネットタイプで着脱も楽です。
¥1,690 (2023/10/26 16:50時点 | Amazon調べ)

コメント

タイトルとURLをコピーしました