See the Worldas a Database
Speaker
杉本 和也:Kazuya Sugimoto
• CData Software Japan, LLC Lead Engineer
• Microsoft MVP for Business Solution(Dynamics CRM/365)
• 青森県出身。会社は仙台。住まいは東京。今日は名古屋。
Blog:Morning Girl
http://kageura.hatenadiary.jp/
Twitter:@sugimomoto Facebook:sugimomoto
3.
CData Software, Inc.(http://www.cdata.com/)
Started: 1994 (/nsoftware)
Location: Chapel Hill, NC, USA
CData Japan: 2016/6 (JV with Infoteria) (http://www.cdata.co.jp)
About
CData Software はデータアクセスおよび連携ソリューションのリーディングカンパニーです。弊社はドライバーとデータアクセステク
ノロジーの開発に特化し、お客様のオンラインおよびオンプレミスのアプリケーション、データベース、WebAPI へのリアルタイム接続を
実現します。
CData ドライバーは、ODBC、JDBC、ADO.NET、OData、SSIS、BizTalk、Excel などの標準コネクターや標準アプリケーションプ
ラットフォームを経由したデータアクセスを提供します。
See the Worldas a Database
背景:分散管理がどんどん増えている
マーケティング
製品・在庫管理
手作業
DWH
BI
SFA
あらゆるアプリ・
サービスが
「多対多」でつながる
マイクロサービス
アーキテクチャ
6.
See the Worldas a Database
各連係アプローチの比較
メリット デメリット
ETL・バッチ
・データの変換まで踏まえた柔軟な連係が可能
・大量データの処理向き
・同期に時間がかかる
・開発コストが高い
サーバーレス
・開発が安易
・リアルタイムに近い非同期で連係可能
・レコード単位の連係が中心
・失敗時の取り回しがしづらい
仮想エンティティ
・リアルタイムにデータの参照が可能
・必要な作業は設定レベル
・読み取り専用
・ODataの準備・開発が必要
どれが優れているという話ではなく、
各々の特性を踏まえて選択
ハイブリッド運用や
シフトも必要
7.
See the Worldas a Database
External service Dynamics 365 Service
OData Service A
https://****.seriveA.com/
OData Service B
https://****.seriveB.com/
仮想エンティティの構成イメージ
Virtual Entity Data Source
Record A
https://****.odata.com/
Record B
https://****.odata.com/
Product Entity
External Name: Product
Custom Entity Definition
Product Table
Service Table
Customer Table
User Table
Web API OData Service
Product Entity
External Name: Service
Product Entity
External Name: User
See the Worldas a Database
仮想エンティティの注意点(MSDNから抜粋)
・すべての仮想エンティティは読み取り専用です。
・既存のエンティティは、仮想エンティティに変換できません。
・仮想エンティティは監査をサポートしていません。
・仮想エンティティ フィールドは、ロールアップまたは計算フィールドでは使用できません。
・仮想エンティティは組織によって所有され、行レベルの Dynamics 365 セキュリティ概念はサポートされません。
外部データ ソースには独自のセキュリティ モデルを実装することをお勧めします。
・仮想エンティティでは変更の追跡がサポートされておらず、データ エクスポート サービス などの Dynamics 365
機能を使用して同期することができません。
※引用元:仮想エンティティを使用する際の考慮事項
https://docs.microsoft.com/ja-jp/dynamics365/customer-engagement/customize/create-
edit-virtual-entities#considerations-when-you-use-virtual-entities
10.
See the Worldas a Database
Dynamics 365 仮想エンティティ連係イメージ
Azure Web Apps
(IIS or Tomcat etc...)
CData API SeverAzure SQL
Database
OData
Dynamics 365データベース
を参照
Web API標準
プロトコルの
ODataに変換
仮想エンティティ
で読み取り
11.
See the Worldas a Database
まとめ
・製品マスタなどの連係には嬉しいかもしれない
・ちょっとODataの要件が厳しいかも
(GUID必須が結構ハードル高い)
(Swaggerで連係できるようになれば嬉しいが、リクエストの多様性を考えるとOdata
しか対応しなさそう)
・各々の連係メリット・デメリットを踏まえた上で、選択肢の一つとして是非
(ちなみにSalesforceでは以前から存在)
・日本リージョンで動かない?