Business Data Connectivity Service (BDC) の概要

最終更新日: 2010年6月29日

適用対象: SharePoint Foundation 2010

Business Data Connectivity (BDC) service は、Microsoft Office SharePoint Server 2007 に含まれていたビジネス データ カタログの新しいバージョンです。現在は、Microsoft SharePoint Foundation 2010 に含まれています。BDC は、SharePoint Foundation 2010 の共有サービスとして実装されており、まだメタデータ ストアに依存しています。BDC サービスは、SharePoint Server 2010 の外部データを公開できるように、宣言的に外部システムをモデル化できるようにします (Business Connectivity Services リッチ クライアント コンポーネントでは、Microsoft Office 2010 アプリケーションも対象です)。BDC は SharePoint サイトとユーザーのビジネス アプリケーション間のギャップを埋め、さまざまな外部システムから重要なデータを (新しい外部リスト機能と外部データ列経由で) SharePoint リスト、Web パーツ、検索、ユーザー プロファイル、およびカスタム アプリケーションに取り込めるようにします。

BDC の中核となる機能は、さまざまな外部システムに接続を提供することであり、以下のデータ ソースへの接続には組み込みサポートを備えています。

  • データベース

  • Windows Communication Foundation (WCF) と Web サービス

  • Microsoft .NET Framework アセンブリ

  • カスタム データ ソース。BDC では、新しい外部システムのタイプのためのコネクタを開発者が作成できる、プラグ可能なコネクタ フレームワークが提供されています。これによって、新しいデータ ソース タイプに BDC 経由でアクセスできるようになります。

    図 1 は、BDC の概要を示す図です。

    図 1. BDC の概要

    BDC の概要

BDC の主な設計目標は、最小のコーディングで、さまざまな外部システムからのビジネス データを宣言的に公開できるようにすることです。この目標を達成するために、BDC では、整合性があり簡易化されたクライアント オブジェクトを提供するメタデータ モデルを持つ基盤データ ソースへの同種アクセスを提供しています。

BDC は以下を使用することによって、中央メタデータ ストアにより、外部システムのプログラム インターフェイスの詳細を格納するメカニズムを提供します。

  • Method、Parameter、TypeDescriptor、LobSystem オブジェクトや、LobSystemInstance オブジェクトのデータ構造。

  • サーバー名、接続文字列、認証方式などの外部システムについての情報。

外部データ型 (顧客、注文など) を表す抽象化 (エンティティ) にはメソッドが含まれます。これらのメソッドにより、外部システム インターフェイスに関する複雑な詳細情報が抽象化され、ビジネス アプリケーション開発をインフォメーション ワーカーが担当できるようになります。次に、BDC は、実際の基幹業務 (LOB) システム インターフェイスの記述に、MethodInstance、Identifier、FilterDescriptor、Association などのデータ構造によって記述された注釈を付けることで、外部システム インターフェイスの定義を、"Create-An-Entity-Instance"、"Read-Entity-Instances"、"Check-Entity-Instance-Permissions" などのエンティティに対する定型的な標準運用に変換します。これらのデータ構造はまとめて MetadataObjects という名前が付けられ、BDC のコンポーネントである BDC メタデータ モデルを構成します。MetadataObjects は、1 つ以上の外部システムについて記述する、モデルという名前の関連するコレクションにグループ化されます。モデルはメタデータ ストアに格納されます。モデルのストアが使用可能になると、すべてのソリューションが、BDC のもう 1 つのコンポーネントである BDC ランタイム オブジェクト モデルを使用してそのストアにアクセスできます。BDC ランタイム オブジェクト モデルには、一貫した操作でさまざまなバックエンド システムをプログラミングするためのプログラミング インターフェイスが用意されています。これは、アプリケーションによって要求された定型的な標準運用に対するメソッド呼び出しを、外部システム固有の呼び出しにプログラムによって変換することによって行われます。

図 1 は、BDC のモデルを示します。

図 1. BDC プログラミング モデル

BDC プログラミング モデル

BDC は Business Connectivity Services の基盤であり、BDC の基盤はエンティティ、メソッド、リレーションシップなどを定義するエンティティ モデルです。これらが定義された後で、BDC ランタイム オブジェクト モデルにデータが設定され、データに対して Create、Update、および Finder メソッドなどの一貫した、定型的な運用エクスペリエンスを提供します。基礎となる外部システムが「作成、読み取り、更新、削除、クエリ実行」(CRUDQ) インターフェイスを持つと仮定して、BDC ランタイム オブジェクト モデルは、基礎となるシステムの詳細を必要とせずにこれらの作業を実行する機能を提供します。

BDC の詳細情報