(57)【特許請求の範囲】
【請求項１】
データを複数のデータソースからデータターゲットに転送する方法であって、
複数の使用事例を指定するメタデータを維持するステップを含み、各々の使用事例は、インポート手順と、１セットのインポートパラメータによって満たされるべき対応する条件とを示すためのデータを含み、前記インポート手順は、前記対応する条件が満たされると、データのインポートのために実行されるべきものであり、前記メタデータは、行および列を含むテーブルの形式で維持され、各々の使用事例は、前記テーブルにおける対応する複数の行として表わされ、前記テーブルの第１の列は、前記複数の行が１セットの入力行および１セットの出力行を含むように、前記行の各々が前記使用事例の入力または前記使用事例の出力のいずれを指定するかを示しており、
前記１セットの入力行は、前記使用事例についての前記対応する条件を指定し、各々の入力行は、対応するインポートパラメータおよびそれぞれの値を示しており、前記方法はさらに、
第１のセットのデータソースから第１のセットのデータターゲットへのデータの転送を要求するインポートコネクタを受取るステップを含み、前記インポートコネクタは、複数のインポートパラメータについてのそれぞれの値を指定し、前記方法はさらに、
前記複数の使用事例のうち、前記インポートコネクタにおいて受取られた対応するインポートパラメータについてのそれぞれの値によって満たされる条件を有する第１の使用事例を選択するステップを含み、前記選択するステップは、前記対応するインポートパラメータについて指定されたそれぞれの値が前記１セットの入力行のすべてについての前記インポートコネクタにおいて受取られた値と一致する場合に、前記第１の使用事例を選択するステップを含み、前記方法はさらに、
データを前記第１のセットのデータソースから前記第１のセットのデータターゲットにインポートするために前記第１の使用事例によって示される第１のインポート手順の実行を開始するステップとを含み、前記１セットの出力行のうち第１の出力行は、前記使用事例についての前記インポート手順を示す、方法。
【請求項２】
前記受取るステップ、前記選択するステップおよび前記開始するステップは、前記メタデータだけを変更することによって、データソース、データターゲットおよびインポートパラメータへの変更または追加を実施することができるように、前記インポート手順から外れてソフトウェアプログラムとして実現される、請求項１に記載の方法。
【請求項３】
前記第１のインポート手順は第１の構成オプションに基づいて動作するように設計されており、
前記メタデータにおける前記第１の使用事例はさらに、前記第１の構成オプションについての第１の値を指定し、前記開始するステップは、前記第１の値に設定された前記第１の構成オプションで前記第１のインポート手順の実行を開始するステップを含む、請求項２に記載の方法。
【請求項４】
前記第１の使用事例において指定された第１のセットのインポートパラメータは、
選択されるべき前記第１の使用事例のためにデータソースが実現される際に適用される記憶技術を示す第１のインポートパラメータと、
選択されるべき前記第１の使用事例のための対応するインポートコネクタに存在するべきデータソースの数を示す第２のインポートパラメータと、
選択されるべき前記第１の使用事例のための対応するインポートコネクタに存在すべきデータターゲットの数を示す第３のインポートパラメータと、
選択されるべき前記第１の使用事例についての、前記データソースからインポートされるべき記録の数を示す第４のインポートパラメータとを含む、請求項３に記載の方法。
【請求項５】
前記１セットの出力行のうちのいくつかは、前記インポート手順の対応する構成オプションと、前記インポート手順の呼出し中に設定されるべきそれぞれの値とを示す、請求項１〜４のいずれか１項に記載の方法。
【請求項６】
前記受取るステップに応じて、データベースにおける前記インポートコネクタにおいて受取られた前記複数のインポートパラメータについての前記それぞれの値を記憶するステップをさらに含み、
前記１セットの入力行の各々は、前記テーブルの第２の列において、前記データベースから前記対応するインポートパラメータについての値を検索するように設計された対応するプログラム論理を指定し、
前記選択するステップは、前記インポートパラメータについての値を検索し、かつ、前記使用事例において指定された前記条件が前記検索された値によって満たされるかどうかを判断するために、前記１セットの入力行において指定される前記プログラム論理を実行するステップを含む、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
システムがデータを複数のデータソースからデータターゲットに転送することを可能にするための１つ以上の命令のシーケンスをを含むコンピュータプログラムであって、前記システムに含まれる１つ以上のプロセッサによって前記１つ以上の命令が実行されることにより、前記システムが、請求項１〜６のいずれか１項に記載の方法を実現できるようにする、コンピュータプログラム。
【請求項８】
コンピューティングシステムであって、
複数のデータソースと、
複数のデータターゲットと、
複数のインポート手順を提供するためのデータインテグレータシステムとを含み、各々のインポート手順は、データを前記複数のデータソースから前記複数のデータターゲットに転送するように設計されており、前記コンピューティングシステムはさらに、
アドミニストレータシステムを含み、前記アドミニストレータシステムは、
複数の使用事例を指定するメタデータを維持するように動作可能であり、各々の使用事例は、前記複数のインポート手順のうちの１つのインポート手順と、１セットのインポートパラメータによって満たされるべき対応する条件とを示すためのデータを含み、前記インポート手順は、前記対応する条件が満たされるとデータのインポートのために実行されるべきものであり、
前記メタデータは、行および列を含むテーブルの形式で維持され、各々の使用事例は、前記テーブルにおける対応する複数の行として表わされ、前記テーブルの第１の列は、前記複数の行が１セットの入力行および１セットの出力行を含むように、前記行の各々が前記使用事例の入力または前記使用事例の出力のいずれを指定するかを示しており、
前記１セットの入力行は、前記使用事例についての前記対応する条件を指定し、各々の入力行は、対応するインポートパラメータおよびそれぞれの値を示しており、前記アドミニストレータシステムはさらに、
前記複数のデータソースのうち第１のセットのデータソースから前記複数のデータターゲットのうち第１のセットのデータターゲットへのデータの転送を要求するインポートコネクタを受取るよう動作可能であり、前記インポートコネクタは、複数のインポートパラメータについてのそれぞれの値を指定し、前記アドミニストレータシステムはさらに、
前記複数の使用事例のうち、前記インポートコネクタにおいて受取られた対応するインポートパラメータについてのそれぞれの値によって満たされる条件を有する第１の使用事例を選択し、前記選択することは、前記対応するインポートパラメータについて指定されたそれぞれの値が前記１セットの入力行のすべてについての前記インポートコネクタにおいて受取られた値と一致する場合、前記第１の使用事例を選択することを含み、前記アドミニストレータシステムはさらに、
データを前記第１のセットのデータソースから前記第１のセットのデータターゲットにインポートするために前記第１の使用事例によって示される第１のインポート手順の実行を開始するよう動作可能であり、前記第１のインポート手順は前記複数のインポート手順に含まれており、
前記１セットの出力行のうち第１の出力行は、前記使用事例についてのインポート手順を示す、コンピューティングシステム。
【請求項９】
前記第１のインポート手順は第１の構成オプションに基づいて動作するように設計されており、
前記メタデータにおける前記第１の使用事例はさらに、前記第１の構成オプションについての第１の値を指定し、前記アドミニストレータシステムは、前記第１の値に設定された前記第１の構成オプションで前記第１のインポート手順の実行を開始する、請求項８に記載のコンピューティングシステム。
【請求項１０】
前記第１の使用事例において指定された第１のセットのインポートパラメータは、
選択されるべき前記第１の使用事例のためにデータソースが実現される際に適用される記憶技術を示す第１のインポートパラメータと、
選択されるべき前記第１の使用事例のための対応するインポートコネクタに存在すべきデータソースの数を示す第２のインポートパラメータと、
選択されるべき前記第１の使用事例のための対応するインポートコネクタに存在すべきデータターゲットの数を示す第３のインポートパラメータと、
選択されるべき前記第１の使用事例のための、前記データソースからインポートされるべき記録の数を示す第４のインポートパラメータとを含む、請求項９に記載のコンピューティングシステム。
【請求項１１】
前記１セットの出力行のうちのいくつかは、前記インポート手順の対応する構成オプションと、前記インポート手順の呼出し中に設定されるべきそれぞれの値とを示す、請求項８〜１０のいずれか１項に記載のコンピューティングシステム。
【請求項１２】
前記アドミニストレータシステムはさらに、
前記インポートコネクタを受取ったことに応じて、データベースにおける前記インポートコネクタにおいて受取られた前記複数のインポートパラメータについてのそれぞれの値を記憶するように動作可能であり、
前記１セットの入力行の各々は、前記テーブルの第２の列において、前記データベースから前記対応するインポートパラメータについての値を検索するように設計された対応するプログラム論理を指定し、
前記第１の使用事例を選択するために、前記アドミニストレータシステムは、前記インポートパラメータについての値を検索し、かつ、前記使用事例において指定された条件が前記検索された値によって満たされるかどうかを判断するために、前記１セットの入力行において指定された前記プログラム論理を実行するように動作可能である、請求項８〜１１のいずれか１項に記載のコンピューティングシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
優先権主張
当該特許出願は、全体がここに援用されている以下の同時係属出願に関し、それらの優先権を主張している。
【０００２】
Ａ．当該特許出願と同じ出願人により２０１４年９月２２日に出願された「データをインポートする際にデシジョンツリーを用いる符号化技術（Coding Technique Using A Decision Tree In Data Importing）」と題されたインド特許出願連続番号第４６１９／ＣＨＥ／２０１４号。
【０００３】
Ｂ．当該特許出願と同じ出願人により２０１５年２月２７日に出願された「データソースからデータターゲットにデータを転送するためのインポート手順の呼出しの単純化（Simplifying Invocation Of Import Procedures To Transfer Data From Data Sources To Data Targets）」と題された米国非仮特許出願連続番号第１４６３３１５８号。
【背景技術】
【０００４】
背景
技術分野
本開示は、データの記憶および管理に関し、より特定的には、データソースからデータターゲットにデータを転送するためのインポート手順の呼出しを単純化することに関する。
【０００５】
関連技術
しばしば、データソースからデータターゲットにデータを転送する必要が生じる。転送するには、しばしば、データを適切なフォーマットに変換して対応するデータターゲットに記憶する処理が必要となる。このような処理は、一般に、ＥＴＬ（extract, transform and load：抽出、変換およびロード）と称されている。
【０００６】
インポート手順は、しばしば、特定の処理機能を必須の転送の一部として提供するために実現される。たとえば、データソースとデータターゲットとの特定の組合せのためのインポート手順が設計され得る。一般に、所望の転送をもたらすために対応するインポート手順が呼出される必要がある。この場合、呼出しは、場合によっては、（インポート手順の構成オプションのうちのいくつかを設定するなどの）追加のサポート動作を必要とする。
【発明の概要】
【課題を解決するための手段】
【０００７】
本開示の局面は、特に複雑な環境において、データを転送するためのこのようなインポート手順の呼出しを単純化する。
【０００８】
図面の簡単な説明
本開示の例示的な実施形態は、以下に簡潔に説明されている添付の図面に関連付けて記載される。
【図面の簡単な説明】
【０００９】
【図１】本開示のいくつかの局面が実現され得る例示的環境（コンピューティングシステム）を示すブロック図である。
【図２】本開示の局面に従った、（データをデータソースからデータターゲットに転送するための）インポート手順の呼出しが単純化される態様を示すフローチャートである。
【図３】一実施形態における、インポート手順の呼出しが単純化される態様を示すブロック図である。
【図４Ａ】一実施形態における、使用事例を指定するメタデータ（制御リポジトリ３６０）が維持される態様を示す図である。
【図４Ｂ】一実施形態における、使用事例を指定するメタデータ（制御リポジトリ３６０）が維持される態様を示す図である。
【図５Ａ】一実施形態における、アドミニストレータがインポートコネクタの一部としてデータソースおよびデータターゲットを指定する態様を示す図である。
【図５Ｂ】一実施形態における、アドミニストレータがデータソースとして用いられるテキストファイルのフォーマットを指定する態様を示す図である。
【図５Ｃ】一実施形態における、アドミニストレータが、データソースからインポートされるべき記録をフィルタリングするための表現を指定する態様を示す図である。
【図５Ｄ】一実施形態における、アドミニストレータがインポートパラメータについての値をインポートコネクタの一部として指定する態様を示す図である。
【図５Ｅ】一実施形態における、アドミニストレータがデータターゲットにおける属性に対するデータソースにおけるフィールド間のマッピングを指定する態様を示す図である。
【図５Ｆ】一実施形態における、インポートコネクタが受取られる態様を示す図である。
【図６】本開示のいくつかの局面が適切なソフトウェア命令の実行によって動作可能となるデジタル処理システムの詳細を示すブロック図である。
【発明を実施するための形態】
【００１０】
添付の図面においては、同様の参照番号は概して同一の要素、機能的に同様の要素、および／または、構造的に同様の要素を示している。要素が最初に現われる図面番号が、対応する参照番号の左端の桁によって示されている。
【００１１】
例示的な実施形態の説明
１．概要
本開示の局面は、複数のデータソースから所望のデータターゲットへのデータの転送を容易にする。一実施形態においては、複数の使用事例（use case）を指定するメタデータが維持される。各々の使用事例は、インポート手順と１セットのインポートパラメータによって満たされるべき対応する条件とを示しており、これにより、対応する条件が満たされたときにデータのインポートのためにインポート手順が実行されるようにする。
【００１２】
データソースからデータターゲットへのデータの転送を要求するインポートコネクタを受取ったことに応じて、インポートコネクタにおいて受取られた対応するインポートパラメータについてのそれぞれの値によって満たされる条件を有する使用事例が選択される。次いで、データソースからデータターゲットにデータをインポートするために、選択された使用事例によって示されるインポート手順の実行が開始される。
【００１３】
本開示のいくつかの局面を具体例を参照しながら以下に記載する。しかしながら、当業者であれば、特定の詳細のうち１つ以上がなくても、または他の方法、構成要素、材料などを用いても、本開示が実施可能であることを認識するだろう。他の場合においては、周知の構造、材料または動作が開示の特徴を不明瞭にすることを避けるために、詳細には示されない。さらに、記載された特徴／局面はさまざまな組合せで実施することができるが、但し、この明細書中においては、簡潔にするためにこれらの組合せのうちのいくつかしか記載されていない。
【００１４】
２．例示的な環境
図１は、本開示のいくつかの局面が実現され得る例示的な環境（コンピューティングシステム）を示すブロック図である。エンドユーザシステム１１０Ａ〜１１０Ｚ、インターネット１２０、イントラネット１３０、サーバシステム１４０Ａ〜１４０Ｃ、アドミニストレータシステム１５０、ならびにデータストア１８０Ａおよび１８０Ｂを含むブロック図が示される。
【００１５】
単に例示のためにのみ、代表的な数／タイプのシステムだけが図に示されている。多くの環境には、しばしば、それぞれの環境の設計目的に応じて、数およびタイプの両方の点でより多くのシステムが含まれている。図１のシステム／デバイスの各々を以下にさらに詳細に記載する。
【００１６】
イントラネット１３０は、サーバシステム１４０Ａ〜１４０Ｃとアドミニストレータシステム１５０とデータストア１８０Ａおよび１８０Ｂ（すべてが（点線の境界で示される）エンタープライズ内に設けられている）との間に接続性をもたらすネットワークに相当する。インターネット１２０は、これら（およびエンタープライズの他のシステム）とエンドユーザシステム１１０Ａ〜１１０Ｚなどの外部システムとの接続性を拡張する。イントラネット１４０およびインターネット１２０の各々は、関連技術において周知である伝送制御プロトコル（Transmission Control Protocol：ＴＣＰ）および／またはインターネットプロトコル（Internet Protocol：ＩＰ）などのプロトコルを用いて実現されてもよい。一般に、ＴＣＰ／ＩＰ環境においては、ＩＰパケットは転送の基本単位として用いられており、ソースアドレスがソースシステムに割当てられたＩＰアドレスに設定されており、そこからパケットが発生し、宛先アドレスが宛先システムのＩＰアドレスに設定され、最終的にそこにパケットが送達されることとなる。
【００１７】
ＩＰパケットは、パケットが最終的にインターネット１２０およびイントラネット１３０によって宛先システムに送達されるように、パケットの宛先ＩＰアドレスが宛先システムのＩＰアドレスに設定される場合に、宛先システムに向けられるものとされている。パケットが宛先アプリケーションを指定するポート番号などの内容を含んでいる場合、パケットはこのようなアプリケーションにも向けられるものとされてもよい。宛先システムは、対応するポート番号を利用可能なまま／公開されたままに維持して、対応する宛先ポートでパケットを処理することが要求される可能性がある。インターネット１２０およびイントラネット１３０の各々は有線ベースの媒体または無線媒体のいずれかの組合せを用いて実現されてもよい。
【００１８】
データストア１８０Ａおよび１８０Ｂの各々は、サーバシステム１４０Ａ〜１４０Ｃおよびアドミニストレータシステム１５０などのエンタープライズの他のシステムにおいて実行される（金融アプリケーション、分析フレームワークなどの）エンタープライズアプリケーションによるデータの集合の記憶および検索を容易にする不揮発性（永続的）ストレージに相当する。データストア１８０Ａおよび１８０Ｂのうちのいくつかは、リレーショナルデータベース技術を用いてデータベースサーバとして実現されてもよく、これに応じて、構造化クエリ言語（Structured Query Language：ＳＱＬ）などの構造化したクエリを用いてデータの記憶および検索を行い得る。関連技術において周知であるように、他のデータストアが、１つ以上のディレクトリとして編制されたファイルの形式でデータの記憶および検索を行なうファイルサーバとして実現されてもよい。
【００１９】
エンドユーザシステム１１０Ａ〜１１０Ｚの各々は、ユーザ要求を生成して、エンタープライズの特定のシステムに向けて送信するためにユーザによって用いられるパーソナルコンピュータ、ワークステーション、移動局、携帯電話、コンピューティングタブレットなどのシステムに相当する。ユーザ要求は、適切なユーザインターフェイス（たとえば、エンタープライズにおいて実行されるアプリケーションによって提供されるウェブページ）を用いて生成されてもよい。たとえば、ユーザは、サーバシステム１４０Ａ〜１４０Ｃにおいて実行されるエンタープライズアプリケーションに対するさまざまなタスクを実行するためのユーザ要求を送信し、要求されたタスクの実績結果を含む対応する応答を受取り得る。
【００２０】
サーバシステム１４０Ａ〜１４０Ｃの各々は、ユーザがエンドユーザシステム１１０Ａ〜１１０Ｚを用いることによって要求されるタスクを実行することができるエンタープライズアプリケーションを実行するウェブ／アプリケーションサーバなどのサーバに相当する。エンドユーザシステムから要求を受取ったことに応じて、各々のサーバシステムは、当該要求において指定されているタスクを実行し、要求を行なったエンドユーザシステムにタスクの実績結果を送信する。各々のサーバシステムは、内部（たとえば、サーバ内の不揮発性ストレージ／ハードディスク）に記憶されたデータ、（たとえば、データストア１８０Ａおよび１８０Ｂに維持されている）外部データ、ならびに／または、このようなタスクを実行する際に外部ソースから（たとえばユーザから）受取られるデータ、を用いてもよい。
【００２１】
これにより、エンタープライズアプリケーションによって用いられるデータは、エンタープライズ内のサーバシステム１４０Ａ〜１４０Ｃならびにデータストア１８０Ａおよび１８０Ｂなどのさまざまなシステムにおいて維持され得る。データは、たとえば、ファイル、（データストア１８０Ａおよび１８０Ｂ内の）データベース、レガシーシステム、配信データなどとしてさまざまなフォーマットで維持／記憶されてもよい。したがって、データを記憶する或るシステム（「データソース」）から別のシステム（「データターゲット」）にデータを転送する必要が生じる可能性もある。このような転送がデータのフォーマットを変更するステップ、ソースデータをフィルタリングするステップ、ターゲットデータを生成するためにソースデータ上で演算を実行するステップ、（一般にデータの移動とも称される）転送が成功した後に転送されたデータをデータソースから削除するステップなどの１つ以上の中間ステップ／追加ステップを含む可能性があることに留意されたい。
【００２２】
背景の段落に記載されたように、データの転送は、典型的には、１つ以上のインポート手順を用いることによって達成される。さまざまな数のデータソースおよびデータターゲットを有する複雑な環境においては、インポート手順の数は（１００＋の範囲で）大きくなるかもしれず、各々のインポート手順は、呼出し中に、対応する構成オプションを設定することを必要とする。したがって、アドミニストレータは、各々の転送ごとに、適切なインポート手順を識別し、識別されたインポート手順の構成オプションについて適切な値を決定し、その後、決定した値を用いて、識別されたインポート手順を呼出すことが要求される。このようなタスクは、特に多数の転送を実行しなければならない場合、アドミニストレータにとっては面倒で時間のかかるものとなる可能性がある。
【００２３】
本開示のいくつかの局面に従って提供されるアドミニストレータシステム１５０は、いくつかの例を用いて以下に述べられるように、データソースからデータターゲットにデータを転送するためのインポート手順の呼出しを単純化する。
【００２４】
３．インポート手順の呼出しの単純化
図２は、本開示の局面に従った、（データソースからデータターゲットにデータを転送するための）インポート手順の呼出しが単純化される態様を示すフローチャートである。フローチャートは単に例示のためだけに、図１、特にアドミニストレータシステム１５０、に関連付けて記載されている。しかしながら、特徴の多くは、この明細書中に記載される開示を読むことによって当業者にとって明らかになるように、他の環境において（かつ、場合によっては他のタイプのシステム／サーバを用いて）、本開示のいくつかの局面の範囲および精神から逸脱することなく、実現することができる。
【００２５】
加えて、ステップのうちのいくつかは、当業者にとって明らかになるように、特定の環境に適するものとして、以下に記載されたものとは異なる順序で実行されてもよい。このような実現例の多くは本開示のいくつかの局面によって包含されるように企図されている。フローチャートは、ステップ２０１から始まり、次いで、制御が直接ステップ２１０に進められる。
【００２６】
ステップ２１０において、アドミニストレータシステム１５０は使用事例を指定するメタデータを維持する。各々の使用事例は、インポート手順とインポートパラメータによって満たされるべき条件との組合せを示している。容易に認識され得るように、メタデータは、ソフトウェア／プログラム命令から外れて維持されるとともに実行中に入力として命令に与えられるデータを指している。条件は、典型的には、インポートパラメータに基づいて構築される論理表現の形式である。
【００２７】
ステップ２３０において、アドミニストレータシステム１５０は、データソースからデータターゲットにデータを転送するための要求を表わすインポートコネクタを受取る。インポートコネクタはまた、インポートパラメータについての値を指定する。
【００２８】
ステップ２６０において、アドミニストレータシステム１５０は、インポートコネクタにおいて受取られたインポートパラメータについての値によって満たされている条件を有する使用事例を選択する。条件に反して適用された場合のインポートパラメータの値により、対応する論理表現が予め指定された論理値（たとえば、真）として評価される場合に、条件が満たされるものと見なされる。
【００２９】
ステップ２８０において、アドミニストレータシステム１５０は、インポートコネクタに従って、データをデータソースからデータターゲットにインポートするために選択された使用事例によって示されるインポート手順を呼出す（すなわち、インポート手順の実行を開始する）。使用事例はまた、呼出し前または後に実行されるべき如何なる（サポート）動作を指定してもよく、これに応じて、このような動作が呼出しに加えて実行され得る。フローチャートはステップ２９９で終了する。
【００３０】
こうして、ユーザ／アドミニストレータが（ステップ２１０において）さまざまな転送シナリオを取込んだ使用事例を指定することを可能にすることにより、（ステップ２３０〜２８０における）（多数の）転送を実行するためのインポート手順の選択および呼出しが単純化される。上述の特徴はさまざまな実施形態において実現することができる。対応する環境においてデータを転送するための実現例について説明を続ける。
【００３１】
４．実現例
図３は、一実施形態における、インポート手順の呼出しが単純化される態様を示すブロック図である。データソース３１０Ａ〜３１０Ｃ、解析アプリケーションデータ（analytics application data：ＡＡＤ）３２０、データインテグレータ３３０、（データインテグレータ３３０において実行される）ナレッジモジュール３４０、使用事例識別子３５０、制御リポジトリ３６０、ユーザインターフェイスプロバイダ３７０、およびインポートマネージャ３８０を含むブロック図が示される（アドミニストレータシステム１５０において実行されるブロック３５０、３６０、３７０および３８０が示される）。ブロックの各々が以下に詳細に説明される。
【００３２】
データソース３１０Ａ〜３１０Ｃの各々は、転送することが求められているデータを記憶する／有する（サーバシステム１４０Ａ〜１４０Ｃまたはデータストア１８０Ａおよび１８０Ｂなどの）エンタープライズ内の対応するシステムを表わしている。上述のように、各々のデータソースは、１つ以上のテキストファイル、１つ以上の拡張可能マークアップ言語（Extensible Markup Language：ＸＭＬ）ファイル、データベースにおけるテーブル、（アパッチ・コーポレーション（Apache Corporation）から入手可能なHadoop（登録商標）によって維持されるような）１つ以上の分散型データノードのうちの１つであり得る。
【００３３】
解析アプリケーションデータ（ＡＡＤ）３２０は、（リレーショナル・データベース・サーバとして実現されるものと想定されている）データストア１８０Ｂ内のデータベースにおける１つ以上のテーブルを表わしており、ユーザ要求を処理するための解析アプリケーション（図示せず）によって用いられる。一実施形態においては、ＡＡＤ３２０はオブジェクトとしてモデル化され（したがって、解析アプリケーションによってアクセスされ）る。たとえば、１つ以上のテーブルにおけるデータはオブジェクトとしてモデル化されてもよく、このようなテーブルのそれぞれの列は、オブジェクトの対応する属性としてモデル化され得る。さらに、テーブルにおける各々の行は、オブジェクトのインスタンス（「オブジェクトインスタンス」）としてモデル化されてもよく、それぞれの属性は行に記憶された対応する値を有している。
【００３４】
解析アプリケーションは、サーバシステム１４０Ａ〜１４０Ｃのうちの１つにおいて実行されるビジネスインテリジェンスアプリケーションであって、一般に、金融企業が、リスク調整済み業績目標を計測および満たし、リスクマネージメント文化を養い、コンプライアンスおよび規則のコストを削減し、顧客の見識を向上させることを可能にするものである。オラクル社（Oracle Corporation）から入手可能なオラクル金融サービス分析アプリケーション（Oracle Financial Services Analytical Application：ＯＦＳＡＡ）はこのような解析アプリケーションの一例である。
【００３５】
解析アプリケーションの動作のために、さまざまなデータソース（３１０Ａ〜３１０Ｃなど）からのデータがＡＡＤ３２０にインポートされることが要求され得る（ＡＡＤまたはＡＡＤ内のテーブルのいくつかがデータターゲットとなる）ことが認識され得る。このようなインポートは、データを、データソースにおけるフォーマットからＡＡＤ３２０におけるデータターゲットの一部として記憶され得る１つ以上のオブジェクトインスタンスに変換することを必要としてもよい。
【００３６】
データインテグレータ３３０は、（サーバシステム１４０Ａ〜１４０Ｃのうちの１つにおいて実行される）システム／アプリケーションに相当するものであって、（３１０Ａ〜３１０Ｃなどの）さまざまなデータソースからＡＡＤ３２０へのデータのインポートを容易にする。データインテグレータ３３０は、イベントドリブン型のトリクル・フィード統合プロセスや、サービス指向アーキテクチャ（service-oriented architecture：ＳＯＡ）対応のデータサービスに対する高容量・高性能のバッチ荷重を実行する場合などのさまざまなデータ統合要件をカバーしている。一実施形態においては、データインテグレータを用いて、後でＡＡＤ３２０に組込まれるべきデータをデータストア１８０Ｂ内のステージングテーブル（図示せず）にインポート／ロードする。オラクル社から入手可能なオラクル・データ・インテグレータ（Oracle Data Integrator：ＯＤＩ）はこのようなデータ・インテグレータ・アプリケーションの一例である。
【００３７】
一実施形態においては、データインテグレータ３３０は、データをさまざまなデータソースからインポートするためのさまざまなナレッジモジュール３４０を備える。データソース技術（ファイル対テーブル対配信データ）、インポートされるべき記録／オブジェクトの数、実行されるべき特定のデータ結合、（インポートされたデータをフィルタリングするために）フィルタがデータソース上で用いられるべきかどうか、データソースの数、データターゲット（ＡＡＤ３２０内のテーブル）の数のうち、少なくともいくつかに基づいて、但しそれらに限定されることなく、さまざまなナレッジモジュールが提供される。各々のナレッジモジュールはインポート手順を含んでおり、当該インポート手順は、実行されると、所望のデータソースからＡＡＤ３２０へのデータのインポートを実行する。便宜上、この明細書中における開示においては、各々のナレッジモジュールが１回のインポート手順に対応するものと想定されており、ナレッジモジュール３４０のうちのいくつかが、１つ以上の構成オプションの値に基づいて動作可能となるように設計されている。
【００３８】
上述のように、本開示のいくつかの局面は、アドミニストレータシステム１５０によって維持されるメタデータに基づいてインポート手順（ナレッジモジュール３４０）の呼出しを単純化する。このようなメタデータが維持され得る態様をいくつかの例とともに以下に記載する。
【００３９】
５．メタデータの維持
制御リポジトリ３６０は、アドミニストレータシステム１５０によって維持されているさまざまな使用事例を示すメタデータを表わしている。制御リポジトリ３６０は、アドミニストレータシステム１５０内に示されているが、代替的な実施形態においては、この明細書中の開示を読むことによって当業者にとって明らかになるように、データストア１８０Ａおよび１８０Ｂなどの外部システムに設けられてもよい。維持され得るサンプルの制御リポジトリ／メタデータを例とともに以下に記載する。
【００４０】
図４Ａおよび図４Ｂはともに、一実施形態における、使用事例を指定するメタデータ（制御リポジトリ３６０）が維持される態様を図示する。便宜上、テーブルの形式で維持されたメタデータが示されているが、代替的な実施形態においては、この明細書中の開示を読むことによって当業者にとって明らかになるように、メタデータは、（アレイ、ツリーなどの）他のデータ構造を用いて、および／または、（拡張可能マークアップ言語（ＸＭＬ）などの）他のフォーマットで維持されてもよい。
【００４１】
テーブル４００は、制御リポジトリ３６０の一部を示している。列４１１（「ＵＳＥ＿ＣＡＳＥ＿ＩＤ」）は、使用事例の識別子を示す。複数の行は、使用事例がテーブル４００における対応する行において定義されていることを示すために同じ識別子を有し得る。一般に、使用事例に関連付けられた各々の行は、使用事例の対応するパラメータ（インポート／入力パラメータまたは出力パラメータ）の詳細を指定する。
【００４２】
列４１２（「ＰＡＲＡＭ＿ＣＯＤＥ」）は、使用事例の一部として指定されるパラメータのコードを示す。各々のコードは、（対応する動作を示唆する）キーパラメータまたは（インポートパラメータであることを示唆する）非キーパラメータであり得る英数字の値である。非キーパラメータコードの例としては、ソースがファイルであるかどうかをチェックするための（行４４１における）ＩＳＦＩＬＥと、ソースが記録タイプの列を用いるかどうかをチェックするための（行４４２における）ＩＳＲＥＣＴＹＰＥとが挙げられる。キーパラメータコードの例としては、インポート手順についての出力オプションの設定を示すためのＳＥＴＯＰＴが挙げられる。
【００４３】
列４１３（「ＰＡＲＡＭ＿ＴＹＰＥ」）は対応するパラメータのタイプを指定する。この列における値「Ｉ」は、行が入力パラメータを指定していることを示し、この列における値「Ｏ」は、行が出力パラメータを指定していることを示している。列４１４（「ＰＡＲＡＭ＿ＤＥＳＣ」）は、対応するパラメータの記述を指定する。列４１５（「ＰＡＲＡＭ＿ＶＡＬＵＥ」）は、対応するパラメータの値を示す。パラメータが（ＩＳＦＩＬＥなどの）論理選択肢であるシナリオにおいては、値は、（「Ｙｅｓ」を示す）「Ｙ」および（「Ｎｏ」を示す）「Ｎ」のうちの１つであり得る。パラメータが出力オプション（ＳＥＴＯＰＴ）を設定するためのものである場合、値は、設定されるべき（ＳＲＣ＿ＦＩＬＴＥＲ、ＦＩＬＥＳ＿ＮＡＭＥなどの）オプションの特定の名前を示し得る。列４１６（「ＰＡＲＡＭ＿ＳＴＹＰＥ」）は、対応するパラメータのサブタイプを示しており、特に、パラメータコードがＳＥＴＯＰＴである場合のパラメータ値のタイプである。
【００４４】
列４１７（「ＰＡＲＡＭ＿ＴＥＸＴ」）は、パラメータの実際値を検索するために実行されるべきプログラム論理／実行可能なスクリプトを指定する。たとえば、パラメータがＩＳＦＩＬＥである場合、実行可能なスクリプトはデータソースがファイルタイプであるかどうかを判断するために実行されてもよい。ここに示される一実施形態においては、プログラム論理は、構造化クエリ言語（ＳＱＬ）に従ったＳＥＬＥＣＴクエリの形式である。列４１８（「ＴＥＣＨＮＯＬＯＧＹ」）は、４１６列において指定された実行可能なスクリプトを実行する場合に用いられるべき技術を指定する。この列における値「ＯＲＡＤＢ」は、ＳＱＬクエリが外部データベース上で実行されるべきであることを示す。値「ＯＤＩ」は、ＳＱＬクエリがデータインテグレータ３３０によって維持されるデータベース上で実行されるべきであることを示す。
【００４５】
行４４１〜４７４の各々は、対応するパラメータの詳細を指定する。行４４１〜４５８におけるパラメータが（列４１１において示されるように、識別子１を有する）第１の使用事例に対応しており、行４５９〜４７４におけるパラメータが（４１１列において示されるように、識別子２を有する）第２の使用事例に対応していることが観察され得る。例示の目的で、（ＡＳＣＩＩ（American Standard Code for Information Interchange：情報交換用米国標準コード）で符号化されたファイルからのデータの転送を処理するための）第１の使用事例に対応する行を以下に詳細に記載する。
【００４６】
行／パラメータを入力行４４１〜４４７および出力行４４８〜４５８にグループ化するために列４１３における値（Ｉ／入力またはＯ／出力）が用いられ得ることが認識され得る。入力行４４１〜４４７の各々は、非キー／インポートパラメータのコードと一致させるべき対応する値とを指定する。特に、行４４１〜４４７は、それぞれ、インポートされているデータがファイル（ＩＳＦＩＬＥ）であるかどうか、記録タイプ（ＩＳＲＥＣＴＹＰＥ）を含んでいるかどうか、フィルタリングされないものとしてマッピングされている列（ＣＯＬＮＯＴＦＩＬＴ）をすべて有しているかどうか、特定のロード方法（ＬＯＡＤＭＴＨＤ）が選択されているかどうか、表現を有している（ＨＡＳＥＸＰＲ）かどうか、２つ以上のデータソースを有している（ＭＲＴＨＡＮ１ＳＤＩ）かどうか、および、２つ以上のターゲットを有している（ＩＳＭＵＬＴＡＲＧ）かどうかを、チェックする。すべての入力行を一致させる必要があるので、行４４１〜４４７によって指定されるような第１の使用事例についての条件は、入力／インポートパラメータに基づいて形成される論理表現（（ＩＳＦＩＬＥ＝「Ｙ」）ＡＮＤ（ＩＳＲＥＣＴＹＰＥ＝「Ｎ」）ＡＮＤ（ＣＯＬＮＯＴＦＩＬＴ＝「Ｎ」）ＡＮＤ（ＬＯＡＤＭＴＨＤ＝「１」）ＡＮＤ（ＨＡＳＥＸＰＲ＝「Ｎ」）ＡＮＤ（ＭＲＴＨＡＮ１ＳＤＩ＝「Ｎ」）ＡＮＤ（ＩＳＭＵＬＴＡＲＧ＝「Ｎ」））となる。
【００４７】
出力行４４８〜４５８は、第１の使用事例のために生成されるべき出力の詳細を指定する。特に、行４５５（ＩＫＭ）は、データを転送するために用いられるべき統合ナレッジモジュールの識別子（１４）を指定する。行４５２〜４５４および４５６はまた、転送のために用いることができる他のタイプのローディングナレッジモジュールを指定しているが、この使用事例においては、これらの行についての列４１５におけるブランク値は、このようなモジュールがこの特定の転送シナリオのためには必要でないことを示している。行４５８（ＣＫＭ）は、データを転送するために用いられるべきチェックナレッジモジュールの識別子（１）を指定する。
【００４８】
出力行４４８〜４５１はキー出力パラメータＳＥＴＯＰＴを指定しており、これは、出力行がナレッジモジュールの呼出し中に設定されるべき構成オプションを指定することを示している。（ＲＥＣＯＲＤ＿ＤＥＬＩＭ＿ＥＸＩＳＴ、ＳＲＣ＿ＦＩＬＴＥＲなどの）構成オプションの識別子は列４１５において指定されており、これらのオプションが設定されるべきである特定のナレッジモジュールが列４１６において示されている（その値「ＩＫＭ」は、すべてのオプションが行４５５において指定されたＩＫＭのためのものであることを示している）。なお、構成オプションの値が（列４１８によって示されるように）外部／内部データベースにおいて利用可能であり、これに応じて、値を検索するためのそれぞれのプログラム論理／ＳＱＬクエリが列４１７において指定されることに留意されたい。出力行４５７は、インポート手順で設定されるべきオプションの詳細を指定している。この場合、それは、ターゲットがステージング区域として用いられるべきであるかどうかを示している。
【００４９】
こうして、行４４１〜４５８はともに、使用事例の入力パラメータおよび出力パラメータを指定することによって第１の使用事例の詳細を提供する。同様に、行４５９〜４７４は、特に、拡張２進化１０進コード（Extended Binary Coded Decimal Interchange Code：ＥＢＣＤＩＣ）ファイルからのデータの転送を処理するために、第２の使用事例の詳細を提供する。他の転送シナリオに特有の他の使用事例も同様に指定され得る。なお、入出力パラメータおよび使用事例のサンプルリストだけが例示の目的でテーブル４００に示されていること、さらには、実際の実施形態においては、パラメータおよび使用事例の数／タイプが、本開示の特徴を実現することが求められている環境に適したものとなるように大きく（１００＋）され得ることに留意されたい。
【００５０】
図３を再び参照すると、制御リポジトリ３６０は、転送要求を処理するためにテーブル４００に示されるメタデータを維持する。メタデータは、アドミニストレータシステム１５０の設定の一部としてインストールされてもよく、後で、アドミニストレータは、処理されることが所望される転送要求に基づいて使用事例を（適切なユーザインターフェイス（図示せず）を用いて）追加／変更し得る。
【００５１】
一実施形態においては、転送要求は、データソース、データターゲットおよび転送の他の詳細を指定するインポートコネクタの形式で受取られる。インポートコネクタ／転送要求が受取られ得る態様を以下においていくつかの例とともに記載する。
【００５２】
６．インポートコネクタの受取り
ユーザインターフェイス（user interface：ＵＩ）プロバイダ（ブロック）３７０は、適切なユーザインターフェイスを設けることによって、ユーザがインポートコネクタを生成してアドミニストレータシステム１５０に送信／提出するのを容易にする。以下の記載においては、ユーザインターフェイスがアドミニストレータシステム１５０上に設けられるものと想定されているが、代替的な実施形態においては、この明細書中の開示を読むことによって当業者にとって明らかになるように、ユーザインターフェイスは、エンドユーザシステム１１０Ａ〜１１０Ｚまたはサーバシステム１４０Ａ〜１４０Ｃのうちの１つの上に設けられてもよい。ＵＩプロバイダ３７０によって提供され得るいくつかのサンプルユーザインターフェイスが以下において詳細に記載される。
【００５３】
図５Ａ〜図５Ｅは、一実施形態におけるインポートコネクタの指定および提出を容易にするために設けられ得るサンプルユーザインターフェイスを示す。各々の図の表示領域５００は、アドミニストレータシステム１５０に関連付けられた（図１に示されない）表示部上に設けられたユーザインターフェイスの一部を示す。一実施形態においては、各々の表示領域は、アドミニストレータシステム１５０（特に、ＵＩプロバイダ３７０）によって提供されるそれぞれのウェブページを表示するブラウザに対応する。ウェブページは、アドミニストレータシステム１５０においてエンタープライズのアドミニストレータがブラウザを用いて（たとえば、ＵＲＬを指定することによって）適切な要求を送信することに応じて提供される。
【００５４】
図５Ａは、一実施形態における、アドミニストレータがデータソースおよびデータターゲットをインポートコネクタの一部として指定する態様を示す。表示領域５１０は、アドミニストレータが、データのインポートのためのデータターゲット、特にＡＡＤ３２０の特定のデータインターフェイス（表示領域５１５に示されるような顧客口座）、を選択することを可能にする。表示領域５２０は、アドミニストレータが、インポートコネクタの概略的な詳細、たとえば、名前（「Ｃｏｎｎｅｃｔｏｒ１」）、記述、およびコネクタが属する商品区分（「定期預金、ＣＡＳＡ」）などを指定することを可能にする。
【００５５】
表示領域５３０は、アドミニストレータが、インポート／転送のために用いられるべき（３１０Ａ〜３１０Ｃに対応する）データソースを追加することを可能にする。表示領域５３０は、アドミニストレータが２つのテキストファイル（「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿１」および「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿２」）をデータソースとして選択したことを示す。アドミニストレータはまた、以下において詳細に記載されるように（データのインポートを容易にするために）テキストファイルのフォーマットを指定し得る。
【００５６】
図５Ｂは、一実施形態における、アドミニストレータがデータソースとして用いられるテキストファイルのフォーマットを指定する態様を示す。表示領域６４０は、テキストファイル「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿１」のフォーマットが指定されていることを示す。表示領域５４５は、データを記憶する実際のファイルの名前（「Ｃｏｍｂ＿ｔｄｃａｓａＰｓｐｌｉｔ１．ｃｓｖ」）と、各々の記録を判断するために用いられるべきデリミタ（デリミタがユニックス（Ｕｎｉｘ（登録商標））システムにおける行末文字であることを示すテキスト「Ｕｎｉｘ」）と、フィールド／列（カンマ）を決定するために用いられるべきデリミタとを示している。表示領域５４５はさらに、テキストファイル中に存在するフィールド／列の詳細（データタイプ、長さ、フォーマットなど）を（「ソースデータ要素」の下に）指定する。
【００５７】
こうして、アドミニストレータは、転送のためのデータソースとして用いられるテキストファイルのフォーマットを指定するのが容易になる。この明細書中の開示を読むことによって当業者にとって明らかになるように、図５Ｂと同様のインターフェイスが、拡張可能マークアップ言語（ＸＭＬ）ファイルなどの他のテキストベースのデータソースのフォーマットを指定するために用いられ得ることが認識されるはずである。アドミニストレータはまた、以下に詳細に記載されるようにインポートされるべき記録をフィルタリングするためのさまざまな表現を指定し得る。
【００５８】
図５Ｃは、一実施形態における、データソースからインポートされるべき記録をフィルタリングするための表現をアドミニストレータが指定する態様を示す。表示領域５５０は、ユーザ／アドミニストレータが図５Ａの表示領域５３０における表現アイコン６３５を選択したことに応じて表示されるポップアップウィンドウである。表示領域５５０は、（表示領域５４５においてアドミニストレータによって定義されるフィールドを含む）エンティティのリスト、入手可能なデータベース関数のリスト、およびオペレータのリストを提供する。したがって、アドミニストレータは、所望の表現、たとえば表示領域５５５に示される表現、を作成するためにエンティティと関数とオペレータとの組合せを選ぶ／選択することもできる。
【００５９】
アドミニストレータが「ＯＫ」ボタンを選択したことに応じて、（表示領域５５５に示される「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿１．ＦＩＣ＿ＭＩＳ＿ＤＡＴＥ＝＃ＩＵＴ−１．ＭＩＳＤＡＴＥ」などの）指定された表現が、インポートされる記録をフィルタリングするための基礎として用いられる。特に、特定の表現と一致する記録だけが、特定のデータソース（「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿１」）からデータターゲット（ＡＡＤ３２０における顧客口座）にインポートされる。
【００６０】
図５Ｄは、一実施形態における、アドミニストレータがインポートパラメータについての値をインポートコネクタの一部として指定する態様を示す。表示領域５６０は、ユーザ／アドミニストレータが表示領域５２５における「コネクタプロパティ」タブを選択することに応じて表示される。表示領域５６０は、アドミニストレータがローディングメカニズム（ここではＳＱＬローダーと示される）を選択すること、データのローディング／インポートが（選択された値「真」によって示されるように）データターゲットに対して直接なされるべきであるかまたはステージングテーブルを介してなされるべきである（値「偽」）かどうかを選択すること、ローディングが（選択された値「真」によって示されるように）並列になされるべきであるかまたは連続的になされるべきであるかどうかを選択すること、さらには、他のインポートパラメータの値を選択することを容易にする。図示されていないが、他のインポートパラメータが提供されてもよく、アドミニストレータは、さらに、提供されたインポートパラメータについての所望の値をインポートコネクタの一部として指定し得る。
【００６１】
図５Ｅは、一実施形態における、アドミニストレータがデータターゲットにおける属性に対するデータソースにおけるフィールド間のマッピングを指定する態様を示す。表示領域５５０は、ユーザ／アドミニストレータが図５Ｄの表示領域５８０を選択する／クリックすることに応じて表示されるポップアップウィンドウである。代替的には、表示領域５７０は、ユーザ／アドミニストレータがキーボード上のボタン（図示せず）を選択することおよび／またはキーボード上の予め定義された１セットのキーを押すことに応じて表示され得る。
【００６２】
表示領域５７０は、アドミニストレータによって選択されるデータソース／エンティティにおけるフィールドのリスト（ここでは、図５Ｂの表示領域５４５におけるアドミニストレータによって指定される「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿１」におけるフィールド）と、ＡＡＤ３２０におけるデータターゲットオブジェクト「顧客口座」のために定義された属性のリストとを提示する。アドミニストレータは、「フィールド」リストにおける所望のフィールド、「属性」リストにおける所望の属性を選択し、次いで、選択されたフィールドと選択された属性との間にマッピングを形成するように「［＝］」アイコンをクリック／選択し得る。アドミニストレータによって指定されるこのようなマッピングのリストが表示領域５７５に示されている。
【００６３】
図５Ｆは、一実施形態における、インポートコネクタが受取られる態様を示す。表示領域５８０は、アドミニストレータが表示領域５７０のポップアップウィンドウを用いることによって指定されるマッピングを示す。インポートコネクタのさまざまな詳細を指定するために図５Ａ〜図５Ｅのユーザインターフェイスがアドミニストレータによって用いられ得ることが認識され得る。所望の詳細が指定された後、アドミニストレータは、処理のためにインポートコネクタが提出されるべきであることを示すために「提出」ボタン５９０を選択してもよい。
【００６４】
再び図３を参照すると、ＵＩプロバイダ３７０は、ユーザがボタン５９０を選択したことに応じて、図５Ａ〜図５Ｆのユーザインターフェイスにおいて指定された／受取られた情報を用いて新しいインポートコネクタを作成する。新しいインポートコネクタは、データソースの詳細（「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿１」および「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿２」）、データターゲット（顧客口座）、データソースからインポートされるべき記録をフィルタリングするために用いられるべきいずれかの表現（「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿１．ＦＩＣ＿ＭＩＳ＿ＤＡＴＥ＝＃ＩＵＴ−１．ＭＩＳＤＡＴＥ」など）、（表示領域５６０に示されるような）さまざまなインポートパラメータの値、および、（表示領域５７５／５８０に示されるマッピングなどの）データソースにおけるフィールドとデータターゲットにおける属性との間の物理的マッピング、を指定する。インポートコネクタにおいて指定される値のうちのいくつかは、後でプログラム論理／ＳＱＬクエリを実行したときにこれらの値がインポートパラメータのために戻されるように、内部／外部データベースのうちの予め定義された位置（列／テーブル）に記憶されてもよい。
【００６５】
次いで、ＵＩプロバイダ３７０は、インポートコネクタを使用事例識別子（ブロック）３５０に転送して処理できるようにする。インポートコネクタが処理されて、データソースからデータターゲットへのデータのインポートを行なうためにインポート手順が呼出される態様を以下において例とともに記載する。
【００６６】
７．インポート手順の呼出し
使用事例識別子３５０は、ＵＩプロバイダ３７０から（図５Ａ〜図５Ｆのインターフェイスを用いて定義されるコネクタなどの）インポートコネクタの詳細を受取り、さらに、インポートコネクタにおいて受取られた対応するインポートパラメータについてのそれぞれの値によって満たされる条件を有する（制御リポジトリ３６０に記憶された）使用事例を識別する。上述のように、使用事例において指定された条件は、インポートパラメータに基づいて構築された対応する論理表現の形式である。
【００６７】
このため、使用事例識別子３５０は、制御リポジトリ３６０から各々の使用事例の詳細を検索し、さらに、各々の使用事例において指定された条件に反してインポートパラメータの値を加える。対応する論理的表現が（インポートコネクタにおいて受取られたインポートパラメータの値が加えられた場合に）予め指定された論理値（たとえば、真）として評価される場合、条件が満たされものと見なされる。条件が満たされている使用事例は使用事例識別子３５０によって識別／選択される。
【００６８】
制御リポジトリ３６０が使用事例を（図４Ａ／図４Ｂの）テーブル４００の形式で維持している実施形態においては、使用事例識別子３５０は、最初に、（第１の使用事例に対応する行４４１〜４５８、および、第２の使用事例に対応する行４５９〜４７４などの）各々の使用事例に対応する行／パラメータを検索する。使用事例のために指定されたすべての入力パラメータについての値が、インポートコネクタにおいて受取られる対応する値と一致した場合、使用事例はインポートコネクタと一致するものと見なされる（転送シナリオ）。言換えれば、使用事例は、（第１の使用事例についての（（ＩＳＦＩＬＥ＝「Ｙ」）ＡＮＤ（ＩＳＲＥＣＴＹＰＥ＝「Ｎ」）ＡＮＤ（ＣＯＬＮＯＴＦＩＬＴ＝「Ｎ」）ＡＮＤ（ＬＯＡＤＭＴＨＤ＝「１」）ＡＮＤ（ＨＡＳＥＸＰＲ＝「Ｎ」）ＡＮＤ（ＭＲＴＨＡＮ１ＳＤＩ＝「Ｎ」）ＡＮＤ（ＩＳＭＵＬＴＡＲＧ＝「Ｎ」））などの）使用事例における入力パラメータによって指定される論理的表現に適用される場合のインポートパラメータの値によって論理的表現が予め指定された論理値（たとえば、真）として評価される場合にのみ、選択される。
【００６９】
したがって、使用事例識別子３５０は、最初に、入力パラメータの値を検索するために列４１７に示されるプログラム論理／ＳＱＬクエリを実行し、次いで、検索された値を、検索された使用事例における入力パラメータのために指定された値と比較する。値同士が一致しない（インポートコネクタが選択された使用事例と一致していないことを示している）場合、使用事例識別子３５０は、制御リポジトリ３６０において指定された使用事例から（たとえば、テーブル４００における識別子２を有する）別の使用事例を選択する。使用事例識別子３５０は、使用事例を選択し、選択された使用事例によって指定されるように動作を実行し、動作の結果を取得し、一致する使用事例が発見されるまで、取得された結果を使用事例において指定された値と繰返し比較するという上述の動作を実行する。
【００７０】
一致する使用事例が発見されるシナリオにおいては、使用事例識別子３５０は、（テーブル４００における列４１５を調べることによって、および／または、列４１７において指定されるプログラム論理を実行することによって）一致する使用事例において示される出力パラメータの値を決定する。次いで、使用事例識別子３５０は、実行されるべきナレッジモジュール３４０のうち特定のモジュールなどのインポートマネージャ（ブロック）３８０に対する出力の詳細；特定のナレッジモジュールの各々のために設定されるべき構成オプション；各々のデータソースからインポートするために設定されるべきフィルタ／表現；などを転送する。
【００７１】
インポートマネージャ３８０は、使用事例識別子３５０から上述のデータを受取ったことに応じて、特定のナレッジモジュール／データソースの各々のために指定された構成オプションおよびフィルタを用いて、ナレッジモジュール３４０のうち特定のモジュールを呼出す（モジュールの実行を開始する）。一実施形態においては、インポートマネージャ３８０は、特定のナレッジモジュール／インポート手順を選択し、選択されたモジュールの構成オプションを設定し、データインテグレータ３３０におけるデータフローシナリオを作成する。データインテグレータ３３０においてデータフローが実行される（ことによって、次に、特定のナレッジモジュール／インポート手順が実行される）と、データが、インポートコネクタにおいて（図５Ａ〜図５Ｆのインターフェイスを用いて）指定された値に従って、データソース（「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿１」および「ＴＤ＿ＣＡＳＡ＿ＦＩＬＥ＿２」）からデータターゲット（ＡＡＤ３２０における顧客口座）にインポートされる。
【００７２】
これにより、さまざまな転送シナリオ（テーブル４００）を取込むさまざまな使用事例を指定することによって、データソース（３１０Ａ〜３１０Ｃ）からデータターゲット（ＡＡＤ３２０）へのデータの転送を実行するためのインポート手順（ナレッジモジュール３４０）の選択および呼出しが単純化される。
【００７３】
上述の特徴がハードウェア、実行可能なモジュールおよびファームウェアのうち１つ以上を所望のとおりに組合わせたものとしてさまざまな実施形態において実現され得ることが認識されるはずである。実行可能なモジュールでの命令が実行される場合にさまざまな特徴が動作可能となる実施形態について、引き続き説明する。
【００７４】
８．デジタル処理システム
図６は、適切なソフトウェア命令を実行することによって本開示のいくつかの局面が動作可能となるデジタル処理システム６００の詳細を示すブロック図である。デジタル処理システム６００は、アドミニストレータシステム１５０、または、上述のさまざまな特徴が提供され得る他のシステム（たとえばエンドユーザシステム１１０Ａ〜１１０Ｚ）に対応する。
【００７５】
デジタル処理システム６００は、（中央処理装置（central processing unit：ＣＰＵ）６１０などの）１つ以上のプロセッサ、ランダムアクセスメモリ（random access memory：ＲＡＭ）６２０、二次的記憶装置６３０、グラフィックスコントローラ６６０、表示部６７０、ネットワークインターフェイス６８０および入力インターフェイス６９０を含み得る。表示部６７０以外のすべての構成要素は、関連技術において周知であるいくつかのバスを含み得る通信経路６５０を介して互いに通信し得る。図６の構成要素を以下にさらに詳細に記載する。
【００７６】
ＣＰＵ６１０は、本開示のいくつかの特徴を提供するためにＲＡＭ６２０に記憶された命令を実行し得る。ＣＰＵ６１０は複数の処理ユニットを含み得る。複数の処理ユニットは各々、場合によっては特定のタスクのために設計されている。代替的には、ＣＰＵ６１０は単一の汎用処理ユニットだけを含んでいてもよい。ＲＡＭ６２０は、通信経路６５０を用いて二次的記憶装置６３０から命令を受信し得る。
【００７７】
ＲＡＭ６２０は、このとき、共有環境６２５および／またはユーザプログラム６２６（金融アプリケーション、分析フレームワークなど）を構成するソフトウェア命令を含むように図示されている。共有環境６２５は、ユーザプログラムによって共有されるユーティリティを含んでおり、このような共有されるユーティリティは、オペレーティングシステム、デバイスドライバ、仮想マシン、フローエンジンなどを備えることで、ユーザプログラムの実行のための（共通の）ランタイム環境を提供している。
【００７８】
グラフィックスコントローラ６６０は、ＣＰＵ６１０から受取られたデータ／命令に基づいて表示部６７０に対する（たとえばＲＧＢフォーマットの）表示信号を生成する。表示部６７０は、表示信号によって定義される画像を表示するために表示画面（図５Ａ〜図５Ｆのユーザインターフェイスの部分など）を含む。入力インターフェイス６９０は、（図５Ａ〜図５Ｆのユーザインターフェイスにおいて所望の入力などを指定するためなどの）さまざまな入力を与えるために用いられ得るキーボードおよびポインティングデバイス（たとえばタッチパッド、マウス）に対応し得る。ネットワークインターフェイス６８０は（たとえば、インターネットプロトコルを用いて）ネットワークに接続性をもたらし、（サーバシステム１４０Ａ〜１４０Ｃ、データストア１８０Ａおよび１８０Ｂなどの）他の接続されたシステムと通信するために用いられてもよい。
【００７９】
二次的記憶装置６３０は非一時的媒体であって、デジタル処理システム６００が本開示に従っていくつかの特徴を提供することを可能にするためにデータ（たとえば、図４Ａ／図４Ｂに示されるデータの部分）および（たとえば、図２のステップを実行するための）ソフトウェア命令を記憶し得る。二次的記憶装置６３０に記憶されたコード／命令は、より高速の実行速度を得るためにＣＰＵ６１０によって実行されるよりも前にＲＡＭ６２０にコピーされ得るか、または、ＣＰＵ６１０によって直接実行され得る。
【００８０】
二次的記憶装置６３０は、ハードドライブ６３５と、フラッシュメモリ６３６と、リムーバブルストレージドライブ６３７とを含んでいてもよい。データおよび命令のうちのいくつかまたはすべては、リムーバブルストレージユニット６４０上に提供されてもよく、データおよび命令はリムーバブルストレージドライブ６３７によって読出されてＣＰＵ６１０に提供されてもよい。リムーバブルストレージユニット６４０は、リムーバブルストレージドライブ６３７がデータおよび命令を読出すことができるように、リムーバブルストレージドライブ６３７と互換性がある媒体および記憶フォーマットを使用して実現されてもよい。このため、リムーバブルストレージユニット６４０は、コンピュータソフトウェアおよび／またはデータを格納したコンピュータ読取可能（記憶）媒体を含む。しかしながら、コンピュータ（または、概して機械）読取可能な媒体は、他の形態のもの（たとえば、非リムーバブル、ランダムアクセスなど）であり得る。
【００８１】
この文書では、「コンピュータプログラム製品」という用語は、ハードドライブ６３５にインストールされたハードディスクまたはリムーバブルストレージユニット６４０を概略的に指すために使用される。これらのコンピュータプログラム製品は、デジタル処理システム６００にソフトウェアを提供するための手段である。ＣＰＵ６１０は、上述のこの開示のさまざまな特徴を提供するために、ソフトウェア命令を検索し、命令を実行してもよい。
【００８２】
ここに使用されるような「記憶媒体」という用語は、マシンを特定の方法で動作させるデータおよび／または命令を格納する任意の非一時的媒体を指す。そのような記憶媒体は、不揮発性媒体および／または揮発性媒体を含んでいてもよい。不揮発性媒体は、たとえば、記憶メモリ６３０などの光ディスク、磁気ディスク、またはソリッドステートドライブを含む。揮発性媒体は、ＲＡＭ６２０などのダイナミックメモリを含む。記憶媒体の一般的形態は、たとえば、フロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、ソリッドステートドライブ、磁気テープ、または任意の他の磁気データ記憶媒体、ＣＤ−ＲＯＭ、任意の他の光学データ記憶媒体、穴のパターンを有する任意の物理的媒体、ＲＡＭ、ＰＲＯＭ、およびＥＰＲＯＭ、ＦＬＡＳＨ−ＥＰＲＯＭ、ＮＶＲＡＭ、任意の他のメモリチップまたはカートリッジを含む。
【００８３】
記憶媒体は、伝送媒体とは別個であるが、伝送媒体とともに使用されてもよい。伝送媒体は、記憶媒体間の情報の転送に関与する。たとえば、伝送媒体は、バス６５０を含むワイヤを含む、同軸ケーブル、銅線および光ファイバーを含む。伝送媒体はまた、電波データ通信および赤外線データ通信中に生成されたものなどの音波または光波の形を取り得る。
【００８４】
本明細書全体にわたる「一実施形態」、「ある実施形態」、または同様の文言への言及は、その実施形態に関連して説明された特定の特徴、構造、または特性がこの開示の少なくとも１つの実施形態に含まれる、ということを意味する。このため、本明細書全体にわたって採用されている「一実施形態では」、「ある実施形態では」、または同様の文言は、必ずしもそうとは限らないものの、すべて同じ実施形態を指していてもよい。
【００８５】
さらに、この開示の説明された特徴、構造、または特性は、１つ以上の実施形態において任意の好適な態様で組合わされてもよい。上述の説明では、この開示の実施形態を十分に理解できるようにするために、プログラミング、ソフトウェアモジュール、ユーザ選択、ネットワークトランザクション、データベース問合せ、データベース構造、ハードウェアモジュール、ハードウェア回路、ハードウェアチップなどの例といった多くの特定の詳細が提供されている。
【００８６】
９．結論
この開示のさまざまな実施形態が上述されてきたが、それらは限定のためではなく例示のためだけに提示されてきた、ということが理解されるべきである。このため、この開示の幅および範囲は上述の例示的な実施形態のいずれによっても限定されるべきでなく、請求項およびそれらの均等物に従ってのみ定義されるべきである。
【００８７】
添付物に示されてこの開示の機能性および利点を強調する図および／またはスクリーンショットが例示の目的でのみ提示されている、ということが理解されるべきである。この開示は、添付の図面に示される以外のやり方で利用され得るように、十分に柔軟性がありかつ構成可能である。
【００８８】
また、添付の要約書の目的は、一般には特許庁および一般大衆、特に特許もしくは法律用語または語句に精通していない科学者、エンジニアおよび当業者が、一瞥して本願の技術的開示の性質および本質を迅速に判断できるようにすることである。要約書は、この開示の範囲に関して限定的であるようには意図されていない。
【図１】
0006542880.tif 000002
【図２】
0006542880.tif 000003
【図３】
0006542880.tif 000004
【図４Ａ】
0006542880.tif 000005
【図４Ｂ】
0006542880.tif 000006
【図５Ａ】
0006542880.tif 000007
【図５Ｂ】
0006542880.tif 000008
【図５Ｃ】
0006542880.tif 000009
【図５Ｄ】
0006542880.tif 000010
【図５Ｅ】
0006542880.tif 000011
【図５Ｆ】
0006542880.tif 000012
【図６】
0006542880.tif 000013