(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-02-05
(54)【発明の名称】論理データセットグループの操作を伴うデータ処理システム
(51)【国際特許分類】
G06F 16/28 20190101AFI20240129BHJP
【FI】
G06F16/28
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023546123
(86)(22)【出願日】2022-01-31
(85)【翻訳文提出日】2023-09-26
(86)【国際出願番号】 US2022014541
(87)【国際公開番号】W WO2022165321
(87)【国際公開日】2022-08-04
(32)【優先日】2021-01-31
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-03-19
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】509123208
【氏名又は名称】アビニシオ テクノロジー エルエルシー
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】アミット・ワイズマン
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175EA03
(57)【要約】
データセットの階層的なグループの操作を可能にするユーザインタフェースで動作が実行されるデータセットを指定するユーザ入力を受信するデータ処理システム。ユーザインタフェースは、個々のデータセット又は以前に定義されたデータセットのグループを別のグループ化に集約できるようにする。データ処理システムによる動作のターゲットとして1つ又は複数のデータセットを指定するようにユーザが促された際に、利用可能な選択肢がそのユーザを包含するスコープを有するデータセットに限定されるように、グループ化は、ユーザのペルソナによってなど、スコーピングすることができる。インタフェースは、動作を実行することができるデータセットを含む階層内のグループ化を選択するようにユーザに促すことができる。データセットにおいて1つずつ実行される動作のターゲットとして複数のデータセットを有するグループ化が選択され次第、選択されたグループの各データセットにおいて動作を実行することができる。
【特許請求の範囲】
【請求項1】
グループの複数のデータセットの各々において動作を実行するためにデータセットのグループの選択を可能にすることによって、複数のデータセットを用いる環境においてデータ処理システムの効率的な動作を可能にするための方法であって、
ユーザインタフェースを介して、前記データ処理システムでのデータアクセスに関連する動作と併せて使用するためのデータセットを検索するための検索クエリを受信することと、
前記検索クエリに基づいて前記ユーザインタフェースに前記検索の結果を提示することであって、データセットの1つ又は複数のグループを提示することであって、データセットの前記グループの少なくともいくつかの各々が、前記検索データセットの1つ又は複数を含む、1つ又は複数のグループを提示することを含む、結果を提示することと、
前記ユーザインタフェースを介して、前記ユーザインタフェースに提示されたデータセットの前記1つ又は複数のグループのデータセットの第1のグループの操作を受信することであって、前記ユーザインタフェースが、データアクセスに関連する前記動作のターゲットとしてデータセットの前記第1のグループを前記ユーザインタフェースを介して選択するオプションを提供するように構成される、受信することと、
前記ユーザインタフェースに提示されたデータセットの前記1つ又は複数のグループのデータセットの前記第1のグループが選択され次第、データセットの前記第1のグループに含まれる1つ又は複数のデータセットの各々において前記動作を実行することと
を含む、方法。
【請求項2】
前記ユーザインタフェースが、データアクセスに関連する前記動作のターゲットとしてデータセットの前記第1のグループの1つ又は複数のデータセットを前記ユーザインタフェースを介して選択することを可能にするためにデータセットの前記第1のグループを展開するオプションを提供し、
データセットの前記第1のグループの前記1つ又は複数のデータセットが選択され次第、データセットの前記第1のグループの前記1つ又は複数のデータセットの各々において前記動作が実行される、請求項1に記載の方法。
【請求項3】
前記ユーザインタフェースに提示されたデータセットの前記1つ又は複数のグループの各々が、前記ユーザインタフェースを介して前記検索クエリを入力したユーザと関連付けられたペルソナとデータセットの前記1つ又は複数のグループと関連付けられたスコープとの対応性を有する、請求項1又は2に記載の方法。
【請求項4】
前記検索結果が、前記ユーザの前記ペルソナと関連付けられたメタデータを有さないデータセットを除外する、請求項3に記載の方法。
【請求項5】
1つ又は複数のデータセットの各々において前記動作を実行することが、前記1つ又は複数のデータセットの各々においてデータ品質規則を実行することを含む、請求項1~4の何れか一項に記載の方法。
【請求項6】
1つ又は複数のデータセットにアクセスする動作を構成することに関係して選択を行うために、第1のユーザがデータセットグループを形成し、データセットグループを第2のユーザに提示することを可能にすることによって、複数のデータセットを用いる環境においてデータ処理システムの効率的な動作を可能にするための方法であって、
前記第1のユーザから、1つ又は複数の第1のユーザインタフェースを通じて、データセットの多数のグループのうちの1つのグループと関連付けるために多数のデータセットの1つ又は複数のデータセットを選択する入力を受信することと、
データセットの前記多数のグループの表現を格納することと、
1つ又は複数のデータセットにアクセスする前記動作と併せて使用するための1つ又は複数のデータセットを前記第2のユーザが選択するように構成された第2のユーザインタフェースを提示することであって、前記第2のユーザが、ペルソナを有し、データセットが、ユーザのペルソナに少なくとも部分的に基づくスコープを有する、前記第2のユーザインタフェースを提示することであり、
前記データ処理システムの前記第2のユーザと関連付けられた前記ペルソナとデータセットの1つ又は複数の自動的に識別されたグループと関連付けられたスコープとの対応性に少なくとも部分的に基づいて、データセットの前記1つ又は複数のグループを自動的に識別すること、及び、
データセットの前記1つ又は複数の自動的に識別されたグループのインジケーションを前記第2のユーザインタフェースにレンダリングすること
を含む、前記第2のユーザインタフェースを提示することと
を含む、方法。
【請求項7】
前記多数のグループの表現を格納することが、
データセットの前記多数のグループの各グループに対して、前記グループにアクセスする権限を有する1人又は複数のユーザに関する情報を格納すること
を含む、請求項6に記載の方法。
【請求項8】
前記1つ又は複数の第1のユーザインタフェースが、ファセット化検索インタフェースを含むデータセット検索インタフェースを含み、
前記ファセット化検索インタフェースのファセットが、前記多数のデータセットと関連付けられたメタデータの値に基づく、請求項6又は7に記載の方法。
【請求項9】
前記1つ又は複数の第1のユーザインタフェースが、データセットのリネージュを表示するユーザインタフェースを含む、請求項6~8の何れか一項に記載の方法。
【請求項10】
前記1つ又は複数の第1のユーザインタフェースが、前記多数のデータセットのうちの1つのデータセットに関連するメタデータを表示するユーザインタフェースを含む、請求項6~9の何れか一項に記載の方法。
【請求項11】
前記第2のユーザから、前記第2のユーザインタフェースを通じて、前記1つ又は複数の自動的に識別されたグループのうちの1つのグループを指定する入力を受信することと、
前記第2のユーザから前記受信した入力に基づいて、前記選択されたグループ内の多数のデータセットの各々に対する前記動作を実行することと
をさらに含む、請求項6~10の何れか一項に記載の方法。
【請求項12】
前記動作が、前記データ処理システムによって実行するためのアプリケーションを構成することを含む、請求項6~11の何れか一項に記載の方法。
【請求項13】
前記データ処理システムの前記第2のユーザと関連付けられた前記ペルソナとデータセットの前記1つ又は複数の自動的に識別されたグループと関連付けられたスコープとの対応性に少なくとも部分的に基づいて、データセットの1つ又は複数のグループを自動的に識別することが、前記第2のユーザがアクセスする許可を得ているデータセットの1つ又は複数のグループを選択することを含む、請求項6~12の何れか一項に記載の方法。
【請求項14】
前記1つ又は複数の自動的に識別されたグループの前記インジケーションをレンダリングすることが、前記1つ又は複数の自動的に識別されたグループの各々に対するデータセットのグループを示すグラフィカルユーザインタフェース要素をレンダリングすることを含む、請求項6~13の何れか一項に記載の方法であって、
前記第2のユーザインタフェースを介して、データセットのグループを示すレンダリングされたグラフィカルユーザインタフェース要素の選択を受信し、前記選択に基づいて、前記グループの多数のデータセットを前記第2のユーザインタフェース上にレンダリングすること
をさらに含む、方法。
【請求項15】
1つ又は複数のデータセットにアクセスする動作を構成することに関係してデータ処理システムのユーザが選択を行うために、データセットグループを提示することによって、複数のデータセットを用いる環境において前記データ処理システムの効率的な動作を可能にするための方法であって、
1つ又は複数のデータセットにアクセスする前記動作と併せて使用するための1つ又は複数のデータセットを前記ユーザが選択するように構成されたユーザインタフェースを提示することであって、前記ユーザが、ペルソナを有し、データセットが、ユーザのペルソナに少なくとも部分的に基づくスコープを有する、ユーザインタフェースを提示することであり、
前記データ処理システムの前記ユーザと関連付けられた前記ペルソナとデータセットの前記1つ又は複数の自動的に識別されたグループと関連付けられたスコープとの対応性に少なくとも部分的に基づいて、データセットの1つ又は複数のグループを自動的に識別すること、及び、
データセットの前記1つ又は複数の自動的に識別されたグループのインジケーションを前記ユーザインタフェースにレンダリングすること
を含む、ユーザインタフェースを提示すること
を含む、方法。
【請求項16】
前記ユーザインタフェースを通じて、前記1つ又は複数のグループのうちの1つのグループを指定するユーザ入力を受信することと、
前記受信した入力に基づいて、前記選択されたグループ内のデータセットのインジケーションをレンダリングすることと
をさらに含む、請求項15に記載の方法。
【請求項17】
前記ユーザインタフェースを通じて、前記1つ又は複数のグループのうちの1つのグループを指定するユーザ入力を受信することと、
前記受信した入力に基づいて、前記選択されたグループ内の多数のデータセットの各々に対する前記動作を実行することと
をさらに含む、請求項15又は16に記載の方法。
【請求項18】
データセットの1つ又は複数のグループを自動的に識別することが、
前記ユーザインタフェースを介して、データセットに対する検索クエリを受信することと、
検索結果を生成するために前記検索クエリに基づいて検索を実行することと
をさらに含む、請求項15~17の何れか一項に記載の方法。
【請求項19】
前記動作が、前記データ処理システムによって実行するためにアプリケーションを構成することを含む、請求項15~18の何れか一項に記載の方法。
【請求項20】
前記データ処理システムのユーザと関連付けられた前記ペルソナとデータセットの前記1つ又は複数の自動的に識別されたグループと関連付けられたスコープとの対応性に少なくとも部分的に基づいて、データセットの1つ又は複数のグループを自動的に識別することが、前記ユーザがアクセスする許可を得ているデータセットの1つ又は複数のグループを選択することを含む、請求項15~19の何れか一項に記載の方法。
【請求項21】
前記1つ又は複数の自動的に識別されたグループの前記インジケーションをレンダリングすることが、前記1つ又は複数の自動的に識別されたグループの各々に対するデータセットのグループを示すグラフィカルユーザインタフェース要素をレンダリングすることを含む、請求項15~20の何れか一項に記載の方法であって、
データセットのグループを示すレンダリングされたグラフィカルユーザインタフェース要素の選択を受信し、前記選択に基づいて、前記グループの多数のデータセットを前記ユーザインタフェース上にレンダリングすること
をさらに含む、方法。
【請求項22】
データセットのグループを形成することによって、複数のデータセットを用いる環境においてデータ処理システムの効率的な動作を可能にするための方法であって、
多数のデータセットが識別された1つ又は複数の第1のユーザインタフェースをレンダリングすることと、
前記1つ又は複数の第1のユーザインタフェースを通じて、データセットの多数のグループのうちの1つのグループと関連付けるためにもう1つの識別されたデータセットを選択するユーザ入力を受信することと、
データセットの前記多数のグループの表現を格納することと
を含む、方法。
【請求項23】
前記多数のグループの表現を格納することが、
データセットの前記多数のグループの各グループに対して、前記グループにアクセスする権限を有する1人又は複数のユーザに関する情報を格納すること
を含む、請求項22に記載の方法。
【請求項24】
データアクセスに関連する動作を実行するために前記データ処理システムのユーザ構成と関連付けられた第2のユーザインタフェースをレンダリングすることであって、前記第2のユーザインタフェースが、データセット選択部分を含む、レンダリングすること
をさらに含む、請求項22又は23に記載の方法であって、
前記第2のユーザインタフェースをレンダリングすることが、データセットの前記多数のグループの1つ又は複数のグループの表現を前記データセット選択部分に提示することを含む、方法。
【請求項25】
ユーザのペルソナに基づいて、前記第2のユーザインタフェースに提示するためのデータセットの前記多数のグループの前記1つ又は複数のグループを選択すること
をさらに含む、請求項24に記載の方法。
【請求項26】
前記第2のユーザインタフェースが、プログラム開発環境におけるユーザインタフェースを含み、
データアクセスに関連する前記動作が、データセット又はデータセットのグループにアクセスするために開発中のプログラムのコンポーネントを構成することを含む、請求項24に記載の方法。
【請求項27】
前記1つ又は複数の第1のユーザインタフェースが、データセット検索インタフェースを含む、請求項22~26の何れか一項に記載の方法。
【請求項28】
データセット検索インタフェースが、ファセット化検索インタフェースを含み、
前記ファセット化検索インタフェースのファセットが、前記多数のデータセットと関連付けられたメタデータの値に基づく、請求項27に記載の方法。
【請求項29】
前記1つ又は複数の第1のユーザインタフェースが、データセットのリネージュを表示するユーザインタフェースを含む、請求項22~28の何れか一項に記載の方法。
【請求項30】
前記1つ又は複数の第1のユーザインタフェースが、前記多数のデータセットのうちの1つのデータセットに関連するメタデータを表示するユーザインタフェースを含む、請求項22~29の何れか一項に記載の方法。
【請求項31】
複数のデータセットを用いる環境においてデータ処理システムの効率的な動作を可能にするための方法であって、
データセットが識別された1つ又は複数の第1のユーザインタフェースをレンダリングするための手段と、
前記1つ又は複数の第1のユーザインタフェースを通じて、データセットの多数のグループのうちの1つのグループと関連付けるために1つ又は複数の識別されたデータセットを選択するユーザ入力を受信するための手段と、
データセットの前記多数のグループの表現を格納するための手段と
を含む、方法。
【請求項32】
データアクセスに関連する動作を実行するために前記データ処理システムのユーザ構成と関連付けられた第2のユーザインタフェースをレンダリングするための手段であって、前記第2のユーザインタフェースが、データセット選択部分を含む、レンダリングするための手段
をさらに含む、請求項31に記載の方法であって、
前記第2のユーザインタフェースをレンダリングするための手段が、データセットの前記多数のグループの1つ又は複数のグループの表現を前記データセット選択部分に提示することを含む、方法。
【請求項33】
ユーザのペルソナに基づいて、前記第2のユーザインタフェースに提示するためのデータセットの前記多数のグループの前記1つ又は複数のグループを選択するための手段
をさらに含む、請求項32に記載の方法。
【請求項34】
多数のデータセットを用いて動作可能なデータ処理システムにおいてデータセットグループを作成するための方法であって、少なくとも1つのハードウェアプロセッサを用いて、
前記データ処理システムによって動作を実行する際に使用するために利用可能なデータセットのセットを識別することであって、前記動作が、前記データ処理システムでのデータアクセスに関連する、識別することと、
データセットの前記識別されたセットを第1のユーザインタフェースに提示することと、
前記第1のユーザインタフェースを介して、前記提示されたデータセットの識別されたセットから1つ又は複数のデータセットのユーザ選択を受信することと、
前記選択された1つ又は複数のデータセットを含むグループの表現を格納することと
を含む、方法。
【請求項35】
前記データ処理システムでデータアクセスに関連する動作を実行する際に使用するために利用可能なデータセットの前記セットを識別することが、
ユーザインタフェースを介して、前記データ処理システムにおいて定義された前記多数のデータセットを説明するファセットの1つ又は複数の値を指定する検索クエリを受信することと、
検索結果を生成するために前記検索クエリに基づいて検索を実行することであって、前記検索結果が、前記動作を実行する際に使用するために利用可能なデータセットの前記セットを含む、実行することと
を含む、請求項34に記載の方法。
【請求項36】
前記検索クエリが、ファセット化検索クエリを含み、前記ファセット化検索クエリが、前記検索結果をフィルタリングするための1つ又は複数のファセットを含む、請求項35に記載の方法。
【請求項37】
前記1つ又は複数のファセットが、物理データセットにアクセスするための情報を論理データセットに関連付けるカタログにデータセットが登録されているかどうかを示すファセットを含む、請求項36に記載の方法。
【請求項38】
前記検索クエリを受信するための前記ユーザインタフェースが、前記1つ又は複数のファセットに対する値を識別するユーザ入力を受信するための多数のフィールドを含み、
前記多数のフィールドが、前記多数のデータセットと関連付けられた論理、物理及び/又は動作メタデータの値を受信するためのフィールドを含む、請求項36又は37に記載の方法。
【請求項39】
データアクセスに関連する前記動作が、前記データ処理システムによって実行されるアプリケーションのコンポーネントを構成することを含む、請求項34~38の何れか一項に記載の方法。
【請求項40】
第2のユーザインタフェースを介して、前記グループを更新するというコマンドを受信することであって、前記コマンドが、1つ若しくは複数のデータセットを前記グループに追加するという要求又は1つ若しくは複数のデータセットを前記グループから削除するという要求を含む、受信すること
をさらに含む、請求項34~39の何れか一項に記載の方法。
【請求項41】
前記第1のユーザインタフェースを介して、前記データセットに関連するメタデータを要求するユーザ入力に応答して、データセットの前記識別されたセットのデータセットに関するメタデータを提示すること
をさらに含む、請求項34~40の何れか一項に記載の方法。
【請求項42】
前記グループが、第2のグループであり、
1つ又は複数のデータセットの前記ユーザ選択を受信することが、前記第2のグループがデータセットの階層的なグループ化を含むように以前に定義されたデータセットの第1のグループの選択を受信することを含む、請求項34~41の何れか一項に記載の方法。
【請求項43】
前記グループの前記表現を格納することが、前記グループに対するスコープ情報を格納することを含む、請求項34~42の何れか一項に記載の方法。
【請求項44】
前記スコープ情報が、前記グループにアクセスする権限を有する1人又は複数のユーザの識別を含む、請求項43に記載の方法。
【請求項45】
前記スコープ情報が、前記グループにアクセスする権限を有する1つ又は複数の役割の識別を含む、請求項43に記載の方法。
【請求項46】
データアクセスに関連する前記動作を実行するために前記データ処理システムのユーザ構成と関連付けられた第2のユーザインタフェースをレンダリングすることであって、前記第2のユーザインタフェースが、データセット選択部分を含む、レンダリングすること
をさらに含む、請求項34~45の何れか一項に記載の方法であって、前記第2のユーザインタフェースをレンダリングすることが、前記選択された1つ又は複数のデータセットを含む前記グループの表現を前記データセット選択部分に提示することを含む、方法。
【請求項47】
少なくとも1つのコンピュータハードウェアプロセッサと、
前記少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、前記少なくとも1つのコンピュータハードウェアプロセッサに請求項1~46の何れか一項に記載の方法を行わせるプロセッサ実行可能命令を保存する少なくとも1つの非一時的コンピュータ可読媒体と、
を含む、データ処理システム。
【請求項48】
少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、前記少なくとも1つのコンピュータハードウェアプロセッサに請求項1~46の何れか一項に記載の方法を行わせるプロセッサ実行可能命令を含む、少なくとも1つの非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
この出願は、米国特許法第119(e)条の下で、2021年3月19日に出願された「論理データセットグループの操作を伴うデータ処理システム(DATA PROCESSING SYSTEM WITH MANIPULATION OF LOGICAL DATASET GROUPS)」と称する米国仮特許出願第63/163,699号明細書、及び、2021年1月31日に出願された「論理データセットグループの操作を伴うデータ処理システム(DATA PROCESSING SYSTEM WITH MANIPULATION OF LOGICAL DATASET GROUPS)」と称する米国仮特許出願第63/143,924号明細書への優先権の利益を主張し、同特許は、その全体が参照により本明細書に組み込まれる。
【0002】
本開示の態様は、多数のデータストアの何れかに保存され得る多数のデータセットを有するデータ処理システムを効率的に動作させるための技術に関する。
【背景技術】
【0003】
現代のデータ処理システムは、企業内の膨大な量のデータを管理している。例えば大規模な機関では、数百万ものデータセットを有し得る。このデータは、企業の事業の複数の側面をサポートすることができるため、このような多数のデータセットを有することは、企業にとって極めて貴重であり得る。一部のデータセットは、例えば、顧客の口座残高の追跡、又は顧客に対する口座明細書の送付などの、ルーチンプロセスをサポートすることができる。他の例では、1つ又は複数のデータセットからのデータを処理することによって、要求された取引が不正であるという結論、又は特定の地理的地域において全体的な取引の結果として、企業が特定のレベルの財務リスクにさらされているという結論などの、ビジネス上の洞察を生み出すことができる。さらに他の例では、1つ又は複数のデータセットからのデータを処理することによって、企業が間違った技術的プロセスの結果として技術的な障害のリスクにさらされているという結論などの技術的な洞察を生み出すことができる。
【0004】
データセットは、データ処理システムによって実行されるアプリケーションによって又はデータ処理システムのユーザによって呼び出されるツールを介してアクセスすることができる。アプリケーションは、繰り返し行われるプロセス(顧客口座残高の追跡又は顧客への口座明細書の送信)を実行するために、プログラマによって開発することができる。プログラマは、そのプロセスに入力されるデータのソースとなるか又はプロセスを実行することによって生成される結果のデスティネーションとなるデータセットを指定することができる。ツールもまた、データセットを使用して動作を実行することができる。例えば、データ処理システムは、無効な記録の除去のため又はデータセットに関するメトリクス(無効な値を含む記録若しくはフィールドの数など)の生成のためのデータセットの処理をユーザが行えるようにするためのツールを含み得る。
【0005】
ユーザを援助するため、企業内のデータセットの中から適切なデータセットを見つける上でユーザを支援するためのデータセット検索能力を提供することができる。例えば、アプリケーション開発環境は、アプリケーションプログラマが所望のデータセットの特性を指定できるようにするためのデータセット検索インタフェースを含み得る。次いで、プログラマは、検索結果の中から入力又は出力データセットを選択することができる。同様の検索により、ユーザは、ツールの入力又は出力としてデータセットを識別することができる。
【0006】
検索は、データセットに対して格納されたメタデータに基づき得る。例えば、データ処理システムは、データセットを特徴付ける1つ又は複数のパラメータの値を示すデータセットのメタデータを格納することができる。そのメタデータは、例えば、データセットのフィールド又はデータセット自体の名前又は記述を含み得る。別の例として、メタデータは、データセットを作成した企業内の組織、データセットを生成したプログラム、データセットの作成日を示し得る。データセットの検索では、これらの又は他のタイプのメタデータが使用され得る。
【発明の概要】
【課題を解決するための手段】
【0007】
いくつかの態様によれば、1つ又は複数のデータセットにアクセスする動作を構成することに関係して選択を行うために、データセットグループを形成し、データセットグループを提示することによって、複数のデータセットを用いる環境においてデータ処理システムの効率的な動作を可能にするための方法が提供される。方法は、第1のユーザから、1つ又は複数の第1のユーザインタフェースを通じて、データセットの多数のグループのうちの1つのグループと関連付けるために多数のデータセットの1つ又は複数のデータセットを選択する入力を受信することと、データセットの多数のグループの表現を格納することと、1つ又は複数のデータセットにアクセスする動作と併せて使用するための1つ又は複数のデータセットを第2のユーザが選択するように構成された第2のユーザインタフェースを提示することであって、第2のユーザが、ペルソナを有し、データセットが、ユーザのペルソナに少なくとも部分的に基づくスコープを有する、第2のユーザインタフェースを提示することであり、データ処理システムの第2のユーザと関連付けられたペルソナとデータセットの1つ又は複数の自動的に識別されたグループと関連付けられたスコープとの対応性に少なくとも部分的に基づいて、データセットの1つ又は複数のグループを自動的に識別すること、及び、データセットの1つ又は複数の自動的に識別されたグループのインジケーションを第2のユーザインタフェースにレンダリングすることを含む、第2のユーザインタフェースを提示することとを含む。
【0008】
一態様によれば、多数のグループの表現を格納することは、データセットの多数のグループの各グループに対して、グループにアクセスする権限を有する1人又は複数のユーザに関する情報を格納することを含む。
【0009】
一態様によれば、1つ又は複数の第1のユーザインタフェースは、ファセット化検索インタフェースを含むデータセット検索インタフェースを含み、ファセット化検索インタフェースのファセットは、多数のデータセットと関連付けられたメタデータの値に基づく。
【0010】
一態様によれば、1つ又は複数の第1のユーザインタフェースは、データセットのリネージュを表示するユーザインタフェースを含む。
【0011】
一態様によれば、1つ又は複数の第1のユーザインタフェースは、多数のデータセットのうちの1つのデータセットに関連するメタデータを表示するユーザインタフェースを含む。
【0012】
一態様によれば、方法は、第2のユーザから、第2のユーザインタフェースを通じて、1つ又は複数の自動的に識別されたグループのうちの1つのグループを指定する入力を受信することと、第2のユーザから受信した入力に基づいて、選択されたグループ内の多数のデータセットの各々に対する動作を実行することとをさらに含む。
【0013】
一態様によれば、動作は、データ処理システムによって実行するためのアプリケーションを構成することを含む。
【0014】
一態様によれば、データ処理システムの第2のユーザと関連付けられたペルソナとデータセットの1つ又は複数の自動的に識別されたグループと関連付けられたスコープとの対応性に少なくとも部分的に基づいて、データセットの1つ又は複数のグループを自動的に識別することは、第2のユーザがアクセスする許可を得ているデータセットの1つ又は複数のグループを選択することを含む。
【0015】
一態様によれば、1つ又は複数の自動的に識別されたグループのインジケーションをレンダリングすることは、1つ又は複数の自動的に識別されたグループの各々に対するデータセットのグループを示すグラフィカルユーザインタフェース要素をレンダリングすることを含み、方法は、第2のユーザインタフェースを介して、データセットのグループを示すレンダリングされたグラフィカルユーザインタフェース要素の選択を受信し、その選択に基づいて、グループの多数のデータセットを第2のユーザインタフェース上にレンダリングすることをさらに含む。
【0016】
いくつかの態様によれば、1つ又は複数のデータセットにアクセスする動作を構成することに関係してデータ処理システムのユーザが選択を行うために、データセットグループを提示することによって、複数のデータセットを用いる環境においてデータ処理システムの効率的な動作を可能にするための方法が提供される。方法は、1つ又は複数のデータセットにアクセスする動作と併せて使用するための1つ又は複数のデータセットをユーザが選択するように構成されたユーザインタフェースを提示することであって、ユーザが、ペルソナを有し、データセットが、ユーザのペルソナに少なくとも部分的に基づくスコープを有する、ユーザインタフェースを提示することであり、データ処理システムのユーザと関連付けられたペルソナとデータセットの1つ又は複数の自動的に識別されたグループと関連付けられたスコープとの対応性に少なくとも部分的に基づいて、データセットの1つ又は複数のグループを自動的に識別すること、及び、データセットの1つ又は複数の自動的に識別されたグループのインジケーションをユーザインタフェースにレンダリングすることを含む、ユーザインタフェースを提示することを含む。
【0017】
一態様によれば、方法は、ユーザインタフェースを通じて、1つ又は複数のグループのうちの1つのグループを指定するユーザ入力を受信することと、受信した入力に基づいて、選択されたグループ内のデータセットのインジケーションをレンダリングすることとをさらに含む。
【0018】
一態様によれば、方法は、ユーザインタフェースを通じて、1つ又は複数のグループのうちの1つのグループを指定するユーザ入力を受信することと、受信した入力に基づいて、選択されたグループ内の多数のデータセットの各々に対する動作を実行することとをさらに含む。
【0019】
一態様によれば、データセットの1つ又は複数のグループを自動的に識別することは、ユーザインタフェースを介して、データセットに対する検索クエリを受信することと、検索結果を生成するために検索クエリに基づいて検索を実行することとをさらに含む。
【0020】
一態様によれば、動作は、データ処理システムによって実行するためにアプリケーションを構成することを含む。
【0021】
一態様によれば、データ処理システムのユーザと関連付けられたペルソナとデータセットの1つ又は複数の自動的に識別されたグループと関連付けられたスコープとの対応性に少なくとも部分的に基づいて、データセットの1つ又は複数のグループを自動的に識別することは、ユーザがアクセスする許可を得ているデータセットの1つ又は複数のグループを選択することを含む。
【0022】
一態様によれば、1つ又は複数の自動的に識別されたグループのインジケーションをレンダリングすることは、1つ又は複数の自動的に識別されたグループの各々に対するデータセットのグループを示すグラフィカルユーザインタフェース要素をレンダリングすることを含み、方法は、データセットのグループを示すレンダリングされたグラフィカルユーザインタフェース要素の選択を受信し、その選択に基づいて、グループの多数のデータセットをユーザインタフェース上にレンダリングすることをさらに含む。
【0023】
いくつかの態様によれば、グループの複数のデータセットの各々において動作を実行するためにデータセットのグループの選択を可能にすることによって、複数のデータセットを用いる環境においてデータ処理システムの効率的な動作を可能にするための方法が提供される。方法は、ユーザインタフェースを介して、データ処理システムでのデータアクセスに関連する動作と併せて使用するためのデータセットを検索するための検索クエリを受信することと、検索クエリに基づいてユーザインタフェースに検索の結果を提示することであって、データセットの1つ又は複数のグループを提示することであって、データセットのグループの少なくともいくつかの各々が、検索データセットの1つ又は複数を含む、1つ又は複数のグループを提示することを含む、結果を提示することと、ユーザインタフェースを介して、ユーザインタフェースに提示されたデータセットの1つ又は複数のグループのデータセットの第1のグループの操作を受信することであって、ユーザインタフェースが、データアクセスに関連する動作のターゲットとしてデータセットの第1のグループをユーザインタフェースを介して選択するオプションを提供するように構成される、受信することと、ユーザインタフェースに提示されたデータセットの1つ又は複数のグループのデータセットの第1のグループが選択され次第、データセットの第1のグループに含まれる1つ又は複数のデータセットの各々において動作を実行することとを含む。
【0024】
一態様によれば、1つ又は複数のデータセットの各々において動作を実行することは、1つ又は複数のデータセットの各々においてデータ品質規則を実行することを含む。
【0025】
一態様によれば、ユーザインタフェースは、データアクセスに関連する動作のターゲットとしてデータセットの第1のグループの1つ又は複数のデータセットをユーザインタフェースを介して選択することを可能にするためにデータセットの第1のグループを展開するオプションを提供し、データセットの第1のグループの1つ又は複数のデータセットが選択され次第、データセットの第1のグループの1つ又は複数のデータセットの各々において動作が実行される。
【0026】
一態様によれば、ユーザインタフェースに提示されたデータセットの1つ又は複数のグループの各々は、ユーザインタフェースを介して検索クエリを入力したユーザと関連付けられたペルソナとデータセットの1つ又は複数のグループと関連付けられたスコープとの対応性を有する。
【0027】
一態様によれば、検索結果は、ユーザのペルソナと関連付けられたメタデータを有さないデータセットを除外する。
【0028】
いくつかの態様によれば、データセットのグループを形成することによって、複数のデータセットを用いる環境においてデータ処理システムの効率的な動作を可能にするための方法が提供される。方法は、多数のデータセットが識別された1つ又は複数の第1のユーザインタフェースをレンダリングすることと、1つ又は複数の第1のユーザインタフェースを通じて、データセットの多数のグループのうちの1つのグループと関連付けるために1つ又は複数の識別されたデータセットを選択するユーザ入力を受信することと、データセットの多数のグループの表現を格納することとを含む。
【0029】
一態様によれば、多数のグループの表現を格納することは、データセットの多数のグループの各グループに対して、グループにアクセスする権限を有する1人又は複数のユーザに関する情報を格納することを含む。
【0030】
一態様によれば、方法は、データアクセスに関連する動作を実行するためにデータ処理システムのユーザ構成と関連付けられた第2のユーザインタフェースをレンダリングすることであって、第2のユーザインタフェースが、データセット選択部分を含む、レンダリングすることをさらに含み、第2のユーザインタフェースをレンダリングすることは、データセットの多数のグループの1つ又は複数のグループの表現をデータセット選択部分に提示することを含む。
【0031】
一態様によれば、方法は、ユーザのペルソナに基づいて、第2のユーザインタフェースに提示するためのデータセットの多数のグループの1つ又は複数のグループを選択することをさらに含む。
【0032】
一態様によれば、第2のユーザインタフェースは、プログラム開発環境におけるユーザインタフェースを含み、データアクセスに関連する動作は、データセット又はデータセットのグループにアクセスするために開発中のプログラムのコンポーネントを構成することを含む。
【0033】
一態様によれば、1つ又は複数の第1のユーザインタフェースは、データセット検索インタフェースを含む。
【0034】
一態様によれば、データセット検索インタフェースは、ファセット化検索インタフェースを含み、ファセット化検索インタフェースのファセットは、多数のデータセットと関連付けられたメタデータの値に基づく。
【0035】
一態様によれば、1つ又は複数の第1のユーザインタフェースは、データセットのリネージュを表示するユーザインタフェースを含む。
【0036】
一態様によれば、1つ又は複数の第1のユーザインタフェースは、多数のデータセットのうちの1つのデータセットに関連するメタデータを表示するユーザインタフェースを含む。
【0037】
いくつかの態様によれば、複数のデータセットを用いる環境においてデータ処理システムの効率的な動作を可能にするための方法が提供される。方法は、データセットが識別された1つ又は複数の第1のユーザインタフェースをレンダリングするための手段と、1つ又は複数の第1のユーザインタフェースを通じて、データセットの多数のグループのうちの1つのグループと関連付けるために1つ又は複数の識別されたデータセットを選択するユーザ入力を受信するための手段と、データセットの多数のグループの表現を格納するための手段とを含む。
【0038】
一態様によれば、方法は、データアクセスに関連する動作を実行するためにデータ処理システムのユーザ構成と関連付けられた第2のユーザインタフェースをレンダリングするための手段であって、第2のユーザインタフェースが、データセット選択部分を含む、レンダリングするための手段をさらに含み、第2のユーザインタフェースをレンダリングするための手段は、データセットの多数のグループの1つ又は複数のグループの表現をデータセット選択部分に提示することを含む。
【0039】
一態様によれば、方法は、ユーザのペルソナに基づいて、第2のユーザインタフェースに提示するためのデータセットの多数のグループの1つ又は複数のグループを選択するための手段をさらに含む。
【0040】
いくつかの態様によれば、多数のデータセットを用いて動作可能なデータ処理システムにおいてデータセットグループを作成するための方法が提供される。方法は、データ処理システムによって動作を実行する際に使用するために利用可能なデータセットのセットを識別することであって、動作が、データ処理システムでのデータアクセスに関連する、識別することと、データセットの識別されたセットを第1のユーザインタフェースに提示することと、第1のユーザインタフェースを介して、提示されたデータセットの識別されたセットから1つ又は複数のデータセットのユーザ選択を受信することと、選択された1つ又は複数のデータセットを含むグループの表現を格納することとを含む。
【0041】
一態様によれば、データ処理システムでデータアクセスに関連する動作を実行する際に使用するために利用可能なデータセットのセットを識別することは、ユーザインタフェースを介して、データ処理システムにおいて定義された多数のデータセットを説明するファセットの1つ又は複数の値を指定する検索クエリを受信することと、検索結果を生成するために検索クエリに基づいて検索を実行することであって、検索結果が、動作を実行する際に使用するために利用可能なデータセットのセットを含む、実行することとを含む。
【0042】
一態様によれば、検索クエリは、ファセット化検索クエリを含み、ファセット化検索クエリは、検索結果をフィルタリングするための1つ又は複数のファセットを含む。
【0043】
一態様によれば、1つ又は複数のファセットは、物理データセットにアクセスするための情報を論理データセットに関連付けるカタログにデータセットが登録されているかどうかを示すファセットを含む。
【0044】
一態様によれば、検索クエリを受信するためのユーザインタフェースは、1つ又は複数のファセットに対する値を識別するユーザ入力を受信するための多数のフィールドを含み、多数のフィールドは、多数のデータセットと関連付けられた論理、物理及び/又は動作メタデータの値を受信するためのフィールドを含む。
【0045】
一態様によれば、データアクセスに関連する動作は、データ処理システムによって実行されるアプリケーションのコンポーネントを構成することを含む。
【0046】
一態様によれば、第2のユーザインタフェースを介して、グループを更新するというコマンドを受信することであって、コマンドが、1つ若しくは複数のデータセットをグループに追加するという要求又は1つ若しくは複数のデータセットをグループから削除するという要求を含む、受信すること。
【0047】
一態様によれば、第1のユーザインタフェースを介して、データセットに関連するメタデータを要求するユーザ入力に応答して、データセットの識別されたセットのデータセットに関するメタデータを提示すること。
【0048】
一態様によれば、グループは、第2のグループであり、1つ又は複数のデータセットのユーザ選択を受信することは、第2のグループがデータセットの階層的なグループ化を含むように以前に定義されたデータセットの第1のグループの選択を受信することを含む。
【0049】
一態様によれば、グループの表現を格納することは、グループに対するスコープ情報を格納することを含む。
【0050】
一態様によれば、スコープ情報は、グループにアクセスする権限を有する1人又は複数のユーザの識別を含む。
【0051】
一態様によれば、スコープ情報は、グループにアクセスする権限を有する1つ又は複数の役割の識別を含む。
【0052】
一態様によれば、方法は、データアクセスに関連する動作を実行するためにデータ処理システムのユーザ構成と関連付けられた第2のユーザインタフェースをレンダリングすることであって、第2のユーザインタフェースが、データセット選択部分を含む、レンダリングすることをさらに含み、第2のユーザインタフェースをレンダリングすることは、選択された1つ又は複数のデータセットを含むグループの表現をデータセット選択部分に提示することを含む。
【0053】
上記の様々な態様は、本明細書に記載するシステム、方法、及び/又はプロセスの何れかにおける態様と代替的又は追加的に使用することができる。さらに、データ処理システムは、前述の態様の1つ又は複数を有する方法に従って動作するように構成され得る。そのようなデータ処理システムは、少なくとも1つのコンピュータハードウェアプロセッサと、少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、少なくとも1つのコンピュータハードウェアプロセッサにそのような方法を行わせるプロセッサ実行可能命令を保存する少なくとも1つの非一時的コンピュータ可読媒体とを含み得る。さらに、非一時的コンピュータ可読媒体は、データ処理システムの少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、少なくとも1つのコンピュータハードウェアプロセッサに前述の態様の1つ又は複数を有する方法を行わせるプロセッサ実行可能命令を含み得る。このように、上記は、添付の特許請求の範囲によって定義される本発明の非限定的な要約である。
【0054】
以下の図を参照しながら、様々な側面について説明する。図は必ずしも縮尺通りに描かれていないことを理解されたい。複数の図に現れる項目は、それらが現れるすべての図において同一又は類似の参照番号で示される。
【図面の簡単な説明】
【0055】
【
図1A】本明細書で説明される技術の態様による、データセットカートなどのデータセットのグループを作成して使用する例示的な企業ITシステムの異なるユーザを示す図である。
【
図1B】本明細書で説明される技術の態様による、データセットのグループの作成及び/又は管理を目的としてデータセットに関連する様々な動作を実行する例示的な企業ITシステムのユーザを示す図である。
【
図1C】本明細書で説明される技術の態様による、データセットのグループに関する情報を維持するデータセットカタログを有するデータ処理システムを備えた例示的な企業ITシステムのブロック図である。
【
図2A】ユーザが実行可能データフローグラフのコンポーネント及びコンポーネントの間の相互接続を指定できるようにするための、データ処理システムによってレンダリングされる、簡略化された例示的なグラフィカルユーザインタフェースの図示である。
【
図2B】
図2Aの例示的なグラフィカルユーザインタフェースの動作状態の図示であり、ユーザは、データセットにアクセスするために実行可能データフローグラフのコンポーネントを構成するプロセスのステップとしてデータセットを選択するためにデータセット選択ツールにアクセスしている。
【
図2C】描写されるユーザインタフェースの追加の要素を有する
図2Aの例示的なグラフィカルユーザインタフェースの図示である。
【
図2D】ユーザが実行可能データフローグラフのコンポーネント及びコンポーネントの間の相互接続を指定できるようにするための、データ処理システムによってレンダリングされる、簡略化された例示的なグラフィカルユーザインタフェースの図示である。
【
図2E】例示的なグラフィカルユーザインタフェースの動作状態の図示であり、ユーザは、実行可能データフローグラフのコンポーネントを構成するプロセスのステップとしてデータセットカートを選択するためにデータセット選択ツールにアクセスしている。
【
図3】ユーザが論理データセットを選択できるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェースの図示であり、ユーザは、選択に利用可能な論理データセットに対応する物理データセットにおけるデータの閲覧を要求する入力を行っている。
【
図4A】ユーザがデータセットを選択できるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェースの図示であり、ユーザは、検索を制限するための第1のメカニズムとしてデータセットのディレクトリを通じてナビゲートし、次いで、検索を制限するための第2のメカニズムとしてデータセットの記述に現れるようなテキストを検索クエリとして入力している。
【
図4B】ユーザがデータセットを選択できるようにするための、データ処理システムによってレンダリングされる、
図4Aの例示的なグラフィカルユーザインタフェースの検索クエリが実行された後の動作状態の図示であり、ユーザが動作のターゲットとして1つ又は複数のデータセットを選択できるように、検索クエリと一致するデータセットのリストが提示されている。
【
図5】ユーザがデータセットを選択できるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェースの検索クエリが実行された後の動作状態の図示であり、データセットのリストがEメールを格納するフィールドを含むものに限定されている。
【
図6】ユーザがデータセットに関連する情報の閲覧又は変更を行えるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェースの図示である。
【
図7】ユーザがデータセットカートに関連する情報の閲覧又は変更を行えるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェースの図示である。
【
図8A】ユーザがデータセットカートを定義できるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェースの図示である。
【
図8B】
図8Aの例示的なグラフィカルユーザインタフェースの異なる動作状態の図示であり、ユーザは、データセットカートに含めるためのデータセットを選択することができる。
【
図9】ユーザがデータセットカートに含めるためのデータセットを指定できるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェースの図示である。
【
図10A】ユーザがデータセットを検索できるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェースの図示である。
【
図10B】
図10Aの例示的なグラフィカルユーザインタフェースの動作状態の図示であり、ユーザは、データセットカタログに登録されたデータセットに検索結果を限定するための追加の検索基準を指定している。
【
図10C】
図10Aの例示的なグラフィカルユーザインタフェースの動作状態の図示であり、ユーザは、ここではデータセットカートとして示されているデータセットのグループに含めるためのデータセットを示している。
【
図11】ユーザがここでは技術グループとして識別されているデータセットのグループに関連する情報の閲覧又は変更を行えるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェースの図示である。
【
図12】データ処理システムの態様による、データセットのグループについての情報を保持する例示的なデータ構造のブロック図である。
【
図13】本明細書で説明される技術の態様による、多数のデータセットを用いて動作可能なデータ処理システムを動作させるための例示的な方法のフローチャートである。
【
図14】本明細書で説明される技術の態様による、データセットにアクセスする動作を実行するように構成されたデータ処理システムを動作させるための例示的な方法のフローチャートである。
【
図15】本明細書で説明される技術の態様による、データセットにアクセスするためのプログラムを実行するように構成されたデータ処理システムを動作させるための例示的な方法のフローチャートである。
【
図16】本明細書で説明される技術のいくつかの態様を実装する際に使用することができる例示的なコンピューティングシステム環境のブロック図である。
【発明を実施するための形態】
【0056】
本発明人等は、データ処理システムが、データ処理システムによって実行される動作のターゲットとしての役割を果たし得るデータセットのグループの操作をサポートする際は、より効率的に実行できるものであり、データ分析にとってより効果的なツールであることを認識及び理解した。個々のデータセットの代わりに又はそれに加えて、データセットのグループをユーザインタフェースに提示することができ、それを通じて、ユーザは、動作のターゲットとして1つ又は複数のデータセットを選択する。次いで、ユーザは、動作のターゲットとしてその構成要素の何れかを選択できるようにグループを展開することによって、又は、いくつかのシナリオでは、グループのデータセットのすべてにおいて動作が実行されるように動作のターゲットとしてグループを選択することによってなど、グループを操作することができる。動作を介して処理されるデータセットは、ユーザによって、ユーザインタフェースに提示されるグループの操作を通じて直接選択することができるため、もはや個々のデータセットの操作のための位置付け及び設定を行う必要はない。言い換えれば、本明細書で説明される技法は、データセットを繰り返し処理する必要も、処理する必要がある個々のデータセットの各々に対するメニューを設定する必要もなく、ユーザ起動動作を介して1つ又は複数のデータセットの処理を開始するためのグラフィカルショートカットを提供する。
【0057】
データセットのグループは、検索の結果としてそのグループのスコープの範囲内の特定のグループのみが現れるようにスコーピングすることができる。データセットグループをスコーピングすることにより、データ処理システムは、データセットの検索が行われる時点で関連のあるデータセットのグループを自動的に提示することができる。文字通り何百万ものデータセットが存在し得る企業では、検索結果は、ユーザ及び/又はそのユーザによって実行されているタスクに関連のないデータセットを除外することができる。従って、より関連のある検索結果を届けることに加えて、適切なデータセットの検索を高速で行うことができ、その処理資源の消費が少なくなる。すなわち、本明細書で説明されるデータセットのグループは、データベース管理システムにおいてなど、データの効率的な管理のためのデータの格納及び回収の技術的なタスクの実行を支援する。言い換えれば、データセットのグループは、効率的な方法でデータへのアクセスを容易にする。
【0058】
データセットのグループの操作は、データセットについての豊富なメタデータセットが維持されるデータ処理システムにおいて有利であり得る。メタデータは、データ処理システムにおけるデータアクセスに関連する動作のターゲットとして使用するためのデータセットを検索するため又は指定するために使用することができる。豊富なメタデータセットは、特定のデータアクセス動作に対するデータセットを識別するために検索クエリを指定する際に大きな柔軟性を提供するが、その柔軟性は、複雑なユーザインタフェース、長い検索時間又はコンピュータ資源の大量使用を招き得、その何れか又はすべては、データ処理システムの有効性を低下し得る。データセットのグループの検索をユーザのためにスコーピングすることにより、より単純な検索インタフェースにおいて、少ない時間及び/又は少ないコンピュータ資源で、等しく関連のある又はより関連のある検索結果を返すことができる。メタデータは、データセットの論理、物理及び/又は動作態様など、データセットの複数の態様に関連し得る。
【0059】
論理態様は、企業又は企業内の人々に対するデータセット又はデータセット内のフィールドのデータの有意性を指し得る。論理態様は、そのデータセットの物理ストレージに関係なく、データセットに適用することができる。例えば、データセットは、顧客データを保持するために定義することができる。そのデータセットは、顧客名、顧客識別子、Eメール、住所及び電話番号など、企業内で有意義な特定のタイプのデータを保持するフィールドを指定するスキーマを有し得る。フィールドは、これらのエンティティを表すデータの根本的な物理ストレージとは無関係に、そのような論理エンティティに関連するものとして指定することができる。
【0060】
対照的に、物理態様は、データセットのデータが格納される方法に関連し得る。データセットは、例えば、特定のストレージハードウェア及びソフトウェアで実装される特定のデータストアに格納することができる。そのソフトウェアは、例えば、格納されたデータセットをセルの行を有する表に組織化することができる。論理エンティティに対応するデータは、各行の特定の1つ又は複数のセルに格納することができる。例えば、Eメールアドレスを構成するデータは、3つのフィールド(1つはユーザ名として識別され、もう1つはドメイン名として識別され、もう1つはTLDとして識別される)に格納することができる。データセットの物理態様についてのメタデータは、物理ストレージのストレージスキーマ、データセットのデータを組織化するために使用されるソフトウェア及び/又はデータセットのデータを保持するハードウェアなど、物理データストアの態様に関連し得る。その代替として又はそれに加えて、物理メタデータは、例えば、データの量又は品質を含む、データの特性を示し得る。データの量に関連するメタデータは、例えば、データセットの記録の数など、データセットのデータの総量を示し得る。量に関連する他のメタデータは、特定のフィールドに特定の値を有する記録の数を示し得る。データの品質に関連するメタデータは、例えば、特定のフィールドが欠如しているか又は特定のフィールドが無効な値を含む記録の数を示し得る。
【0061】
動作態様は、データセットを用いて実行される動作に関連し得る。例えば、動作メタデータは、データ処理システムによって実行される各ジョブに対して記録することができる。そのメタデータは、ジョブの間にアクセスされるデータセット及びジョブについての他の情報(ジョブに入力されるパラメータの値、ジョブの実行日時又はジョブの実行を要求するユーザなど)を示し得る。
【0062】
データ処理システムのメタデータのリポジトリは、データセットについてのメタデータの他のアイテムを格納することができる。そのようなメタデータは、データセットのスキーマを定義したユーザ又は物理データセットのデータのインポート元であるシステムなど、データセットのプロビンスを定義するアイテムを含み得る。別の例として、データセット又はフィールドのテキスト記述を記録することができる。
【0063】
データ処理システムにおいて維持することができるメタデータの特定のアイテムに関係なく、メタデータは、データ処理システムでの動作のターゲットとして使用するために企業内の巨大なデータセットの中から1つ又は複数のデータセットのグループ化及び/又は検索を行う際に使用することができる。様々な態様についてのメタデータは、データ処理システムによって、互いに関連し合うように格納することができる。その結果、検索では、メタデータの態様の組み合わせを満たすデータセットを探し出すことができる。データ処理システムは、ユーザがデータセットメタデータに関する複数の基準を満たすデータセットを検索できるようにするためのユーザインタフェースでデータセット選択ツールを提供することができる。次いで、ユーザは、検索によって識別されたデータセットの中からターゲットとしてデータセットを選択することができる。データセットのグループがスコーピングされる実施形態では、データセット選択ツールは、スコープの範囲内のデータセットを含むデータセットグループのみ及び/又はスコープの範囲内にあるデータセットグループのみを返すように検索を制限することができる。
【0064】
例えば、開発環境においてアプリケーションを開発するユーザは、アプリケーションの入力としてデータセットを選択し得る。データセット選択ツールは、ユーザがデータセットを選択できるようにするためのユーザインタフェースを提示することができ、次いで、そのデータセットは、識別されたデータセットにアプリケーションを結び付ける開発環境内の動作のターゲットとして開発環境において識別される。選択を行うため、ユーザは、論理、物理及び/又は動作メタデータ態様のいくつかに対する値の組み合わせを指定する検索クエリを入力することができる。特定の例として、検索クエリは、Eメールを含むデータセット、指定された閾値量を上回るEメールフィールドのデータ品質を有するデータセット、及び、ここ一週間内のジョブで使用されたデータセットを指定することができる。この目的のため、検索のためのファセットを提供するデータセットメタデータの異なる態様を有するファセット化検索インタフェースを使用することができる。次いで、ユーザは、システムのデータセットメタデータリポジトリに対してこのクエリを実行した結果としてデータ処理システムによって返された結果セットから選択することができる。結果セットが1つ又は複数のデータセットグループを含む場合は、ユーザは、データセットグループを展開するため及びそのデータセットグループが含むデータセットを示すためのコマンドとしての役割を果たす入力を提供することができる。次いで、展開されたデータセットグループからデータセットを選択することができる。ユーザが選択したデータセットは、開発中のアプリケーションのための入力データセットとして使用するために、開発環境に返すことができる。
【0065】
別の例として、データセット選択ツールは、メンテナンスが実行され得るデータセットを選択するために使用することができる。ユーザは、例えば、データ品質規則を実行するためのデータセットを選択することを希望し得る。この例では、データセット選択ツールは、データセットにおいてデータ品質規則のセットを実行するツールのためのターゲットとして提供されるデータセットを識別するために使用することができる。ユーザは、選択ツールを介して、他の論理、物理及び/又は動作要件を満たす、ジョブで頻繁に使用されるデータセットを検索し、次いで、データ品質分析に対するこの結果セットから、それらのデータセットの1つ又は複数を選択し得る。結果セットが1つ又は複数のデータセットグループを含む場合は、ユーザは、データセットグループを展開するため及びそのデータセットグループが含むデータセットを示すためのコマンドとしての役割を果たす入力を提供することができる。次いで、展開されたデータセットグループからデータセットを選択することができる。いくつかの実施形態では、単一のデータセットを選択するというよりむしろ、ユーザは、データセットグループを選択し得る。このコンテキストでは、ユーザが単一のデータセットの選択を行うためにデータセットグループのコンテンツを提示するというよりむしろ、データセットグループが選択され、ターゲットとして提供され得る。データセットにおいて動作を実行するツールにターゲットとしてグループが提供されると、その動作は、グループ内の各データセットにおいて実行され得る。
【0066】
選択を援助するため、データセット選択ツールは、検索クエリに応答して返されたデータセットについての追加の情報にユーザがアクセスできるようにする。追加の情報は、例えば、検索セットに含まれるデータセットに対して格納されたメタデータのいくつか又はすべてを含み得る。その代替として又はそれに加えて、追加の情報は、選択されたデータセットのデータについての情報を含み得る。例えば、追加の情報は、選択されたデータセットの少数の行のビューを含み得る。この追加の情報は、例えば、ユーザインタフェース要素とのユーザの対話に応答して、提示することができる。
【0067】
多くのデータセットを有する企業では、グループでのデータセットの操作を可能にすることにより、データセット検索機能性が向上する。本明細書の例示的な実施形態ではデータセットカートとして表されるグループは、事前に定義することができ、データセットと同様に、どのデータセットがグループのメンバーであるかについて定義し得る関連メタデータを有し得る。関連データセットカートメタデータは、論理、物理及び/又は動作メタデータを含み得る。データセット検索能力は、個々のデータセットを返す代わりに又はそれに加えて、データセットカートなどのデータセットのグループを返すことができる。データセットカートは、個々のデータセットの表現とは異なって見えるように視覚的に独特のアイコンによって表すことができる。アイコンは、例えば、ショッピングカートとして現れ得る。この仕様では、データセットカートのコンテキストにおける特徴の記述は、データセットカートに限定されず、データセットのグループのいかなる表現にも当てはまる。
【0068】
データセットの検索は、データセットカートのデータセットのいくつか又はすべてが指定された検索基準を満たすデータセットカートを返すように制限され得る。或いは、検索インタフェースは、例えば、検索のファセットとして、検索クエリに応答して、個々のデータセットというよりむしろ、データセットカートのみが返されることをユーザが指定するオプションを含み得る。
【0069】
データセットカートは、ユーザがデータ処理システムにおける動作のターゲットとしてデータセットの選択を行う際に考慮されるデータセットの量を制限できるようにする。何百万ものデータセットを有する企業では、厳重に指定された検索基準でさえ、さらなる処理のためなど、さらなる多大な努力なしでは、ユーザによる最も適切なデータセットの識別が難しくなるほど又は適切なデータセットの識別でさえ難しくなるほど多くのデータセットを返し得る。例えば、データセットカートは、カートからのデータセットの選択の制限により、適切なデータセットを選択する際に必要な時間が削減されるように、特定のタスクに適切なデータセットを保持するために、事前に定義することができる。また、より多くの、そのユーザに実際に関連のある検索結果を生成することができる。
【0070】
データセットカートは、データセットの検索を実行しているユーザと同じユーザによって、事前に定義することができる。次いで、ユーザは、それら自体のデータセットカートのうちの1つからのみ、データセットの選択を考慮し得る。その代替として又はそれに加えて、データセットカートは、データ処理システムの他のユーザによってキュレートすることができる。例えば、顧客ロイヤルティプログラムに参加している顧客についてのデータの維持に対する責任を有するユーザは、ロイヤルティプログラムについての情報の最も信頼できるソースを表すデータセットを含めるために、データセットカートをキュレートすることができる。次いで、他のユーザは、顧客ロイヤルティプログラムに関与するデータ分析のためのデータセットの選択をカート内のデータセットに限定することができる。データ処理システムは、検索を要求するユーザがアクセス可能な単なるデータセットカートに又はデータセットカート内にあるデータセットにデータセットの検索の結果を限定することができる。
【0071】
データセットカートをサポートするデータ処理システムは、企業内の複数の利益の何れかを提供することができる。例えば、データ処理システムは、より大きな効率につながるプロセスフローを自動的に実施することができる。
図1Aは、ITシステム100の異なるユーザが企業内でどのようにデータセットカートを作成して使用することができるかを示す。
図1Aに示されるように、ITシステム100のデータ処理システムの第1のユーザ(ユーザ111aなど)や、データセット、それらのリネージュ並びにそれらの個々の利点及び欠点についての知識を有する者は、例えば、多くのデータセット(データセット1~Nなど)から特定のタイプのデータ分析に適したデータセットカート(データセットカート1、2、3、4など)を定義するか又は作成することができる。データ処理システムの第2のユーザ(ユーザ112a、113aなど)や、データ分析についての知識を有する者は、それらのデータセットカートから、特定の分析タスクに関連のあるそれらのデータセットカート又はデータセットの1つ又は複数を迅速に選択することができる。別の利益として、企業内の巨大なデータセットにわたってデータセットを検索する人間及びコンピュータ作業は、データセットがデータセットカートに割り当てられる際に行うことができる。その後、データアクセスに関連する動作において使用するためのデータセットの検索は、人間作業とコンピュータ作業の両方において、簡略化することができる。特定の例として、データアクセスに関連する動作において使用するためのデータセットを選択するための検索インタフェースは、データセットカートに含めるためのデータセットを選択するための検索インタフェースの検索ファセット又は他のオプションのサブセットのみを含み得るが、その理由は、関連のあるスコープを有するデータセットカートに検索結果が限定されている場合には、関連のあるデータセットを見つけるために必要とされる検索ファセットがより少なくなるためである。
【0072】
図1Bは、第1のユーザ(ユーザ111aなど)がデータセットカートの定義、作成及び/又は管理のために実行することができる様々な動作(例えば、動作115a、115b、115c、115d、115e)を示す。例えば、ユーザ111aは、
図6、7及び11に関連して説明されるインタフェースを介して、データセット及び/又はデータセットグループ/カートについての情報の閲覧又は変更を行うことができる。別の例として、ユーザ111aは、
図8A及び8Bに関連して説明されるインタフェースを介して、データセットカートの定義又は作成を行うことができる。さらなる別の例として、ユーザ111aは、
図9及び10Cに関連して説明されるインタフェースを介して、1つ又は複数のデータセットカートに含めるためのデータセットの選択又は指定を行うことができる。別の例として、ユーザ111aは、
図10A及び10Bに関連して説明されるインタフェースを介して、データセットの検索を行うことができる。
【0073】
これらの又は他の動作を実行するには、ユーザ111aは、データセット(データセット1…データセットN)のいくつか又はすべてについての専門知識を有する必要があり得るか、或いは、ユーザ111aは、多くのそのようなデータセットを通じて多大な時間を要する検索に取り組む必要があり得る。しかし、
図1Bに示されるように、より少ない数のデータセットカートを作成することにより、ユーザ112a及び113a並びに企業ITシステムに対するこれらの動作の負担を回避することができる。例えば、ユーザ112a及び113aがそのような選択を行うために必要な処理電力及びネットワーク帯域幅を低減することができる。その上、この低減は、演算資源が複合化し得るが、その理由は、112a及び113aなどのユーザが関連のあるデータセットの検索を頻繁に行うためである。
【0074】
データセットのグループ化は、階層的なものであり得る。データセットのグループは、データセットに加えて、データセットのサブグループを含み得る。階層は、いくつものレベルに及び、サブグループは、次々とさらなるサブグループを含む。グループがデータセットカートとして表される例では、データセットカートは、データセットの代わりに又はそれに加えて、データセットのサブグループを含み得る。そのサブグループは、カート内のデータセットカートとして識別することができるか、又は、データセットカートは、異なる方法で表されるサブグループを有する最上位グループ化として識別することができる。
【0075】
データセット選択ツールは、データセット選択ツールが呼び出された動作に少なくとも部分的に応じて、検索において返されたデータセットのグループにおける動作を条件付きで実行することができる。例えば、動作がそのターゲットとして単一のデータセットを必要とする場合は、検索クエリの実行に続くユーザによるグループの選択の結果、そのグループがデータセットカートであるか又はサブグループであるかにかかわらず、データセット選択ツールは、グループを展開して、ユーザが単一のデータセットを選択できるようにする。逆に、複数のデータセットに動作を適用することができる場合は、ユーザがターゲットとしてグループのすべてのデータセットを選択するように促されるか又はそのためのメカニズムがユーザに提供されるか、或いは、ユーザが選択を行うことができるグループの複数のデータセットをシステムに提示させることができる。そのような選択ツールは、例えば、別個のナビゲーション及び選択制御を提供することによって実装することができる。ナビゲーション制御を介して、ユーザは、データセットグループ化の階層を横断することができる。選択制御を介して、ユーザは、要望通り、単一のデータセット又はデータセットグループを選択することができる。いくつかの例では、選択制御は、コンテキスト依存性であり得る。例えば、選択制御は、単一のデータセットのみが適切なターゲットであるシナリオにおいて、データセットグループの選択を排除するように構成することができる。
【0076】
グループは、検索クエリに応答して返されるグループがスコープに基づいて制限されるように、スコーピングすることができる。例えば、データセットカートは、ユーザのペルソナに基づいてスコーピングすることができる。ペルソナは、例えば、特定の個人又は複数の個人を示し得る。個人は、例えば、認証情報によって確立することができる彼らのアイデンティティに基づいて指定することも、企業内の部署又は特定のプロジェクトチームのメンバーなどの1つ又は複数のグループのメンバーシップに基づいて指定することもできる。その代替として又はそれに加えて、ペルソナは、データアナリスト、アプリケーション開発者、テストエンジニア又はデータベースプログラマなどの企業内の役割に基づいて確立することができる。その代替として又はそれに加えて、データセットカートを使用する権限を有するユーザを識別するために他の基準を使用することや、ペルソナを指定する際に他の基準を使用することができる。
【0077】
データセットカートをスコーピングすることにより、データセット選択ツールを通じてデータセットの検索に応答して任意の特定のユーザに返されるデータの量が制限され得る。ツールは、例えば、データセットの検索を要求するユーザの個人の特性をチェックし、次いで、そのユーザの個人の特性を包含するスコープを有するデータセットカート及び/又はデータセットのみに結果セットを限定することができる。この方法では、データセットの検索から、より少なく且つより関連のある結果を返すことができる。
【0078】
そのような選択方法は、例えば、プロジェクトに関連のあるデータセットを含むデータセットカートを作成するデータアナリストによって使用することができる。データセット選択ツールは、データ処理システム内の複数の動作のためのターゲットデータセットを選択するために使用することができる。この方法では、利用可能なデータセットは、それらの作業全体を通じてデータアナリストに従い、それにより、適切なデータセットが迅速に且つ一貫して選択されることが保証される。
【0079】
1つ又は複数のデータセットがターゲットとして選択される各動作に対してデータセット選択ツールを実装するために、全く同じコンピュータ実行可能命令を実行する必要はない。いくつかの実施形態では、この動作をサポートするために、汎用ツールを実装することができる。しかし、他の実施形態では、データセット選択方法論は、上記で説明される選択機能を実行する異なるコンピュータ実行可能命令によって実装することができる。データ処理システムによって実行される異なる動作に対してデータセット選択をサポートするために異なるコンピュータ実行可能命令が使用されると、コンピュータ実行可能命令の各コピーは、一貫性又は使い易さのために、同様のインタフェースをレンダリングし得る。しかし、異なる動作に対するデータセットの選択のための同一のインタフェースは必須ではない。
【0080】
データ処理システムの態様は、前述の目的及び利点の何れか1つ又は複数を達成するために実装することができる。これらの目的及び利点は、単独で使用することも、任意の適切な組み合わせで一緒に使用することもできる。
【0081】
データセットカートをサポートする代表的なデータ処理システム
本明細書で説明されるデータセットカートなどのデータセットグループは、ユーザが動作のターゲットとしてデータセットを検索できるようにするための検索インタフェースを提供するデータ処理システムにおいて使用することができる。それらの検索インタフェースは、データセットの代わりに又はそれに加えて、データセットグループ/カートを返す検索を行うことができる。他のインタフェースは、ユーザがデータセットグループ/カートの作成又は修正を行えるようにする。そのようなデータ処理システムは、データセットカート(それらのスコープを含む)についての情報のリポジトリを維持する1つ又は複数のコンポーネントを含み得る。
【0082】
例示的なデータ処理システムは、物理データセットのみならず、論理データセットにおいても動作し得る。論理データセットは、例えば、企業のビジネスに有意義な要素を含むが、格納されるデータの物理表現とは無関係のスキーマに基づいて定義され得る。論理データセットは、物理データセットに対応し得る。
【0083】
その全体が参照により本明細書に組み込まれる、代理人整理番号A1041.70066US02が割り当てられた「データ処理システム用のデータセットマルチプレクサ(Dataset Multiplexer for Data Processing System)」と称する同時係属出願は、論理データセットにおける動作の指定を可能にしながら、それらの動作が適切な物理データセットに適用されることを保証するデータ処理システムについて説明している。この出願は、データセットカタログが、論理データセットと関連付けられたデータの格納に影響を及ぼす事象に応答して更新されることについて説明している。データセットの選択のための本明細書で説明される技法は、その同時係属出願において説明されるようにデータ処理システムにおいて適用することができる。
【0084】
データセットの選択に関連するする動作は、論理データセット及び/又は物理データセットに適用することができる。例えば、論理データセットが選択され得る。それにもかかわらず、選択は、対応する物理データセットに関与するか又は基づき得る。そのような結果は、選択するデータセットを検索する時点で、データセット選択ツールが、論理データセットに対する物理情報の取得及びデータセット選択プロセスにおける使用を行えるように、データセットカタログにアクセスして、論理データセットに対応する物理データセットを識別することによって、達成することができる。
【0085】
図1Cは、例示的なデータ処理システム104と、データ処理システム104と統合されたデータセットマルチプレクサ105とを含むITシステム100のブロック図である。ITシステム100は、例えば、金融会社などの企業のITシステムであってもよい。簡略化のために、ネットワーク、クラウドストレージ、及びユーザデバイスなどの企業ITシステムの要素は、明示的に図示されていない。
【0086】
データ処理システム104は、データストア102-1、102-3、102-3、…、及び102-nにアクセスする(例えば、これらのデータストアからデータを読み出す、及び/又はこれらのデータストアに対してデータを書き込む)ように構成される。データストア102-1、102-3、102-3、…、及び102-nのそれぞれは、1つ又は複数の物理データセットを保存することができる。データストアは、任意の適切なタイプのデータを、任意の適切な方法で保存することができる。データストアは、例えばデータベースシステム(例えば、リレーショナルデータベースシステム)を使用して、フラットテキストファイル、スプレッドシートとしてデータを保存してもよい。また、これらのデータストアは、企業の内部であっても、又は外部であってもよい。例えば、外部データストアは、「クラウド内」、又はサードパーティによって管理されるストレージハードウェア内に存在し得る。従って、データストアは、企業によって使用される異なるデータストアが異なる場所にあってもよく、及び/又は企業の内部若しくは外部の異なるエンティティによって管理されてもよい連合環境を提供することができる。
【0087】
場合によっては、データストアは、取引データを保存することができる。例えば、データストアは、クレジットカード取引、電話記録データ、又は銀行取引データを保存することができる。本明細書に記載される技術の態様はこの点で限定されないので、データ処理システム104は、任意の適切なタイプの任意の適切な数のデータストアにアクセスするように構成されてもよいことを理解されたい。データ処理システム104がデータを読み出すように構成され得るデータストアは、データソースと呼ばれることがある。データ処理システム104がデータを書き込むように構成され得るデータストアは、データシンクと呼ばれることがある。しかしながら、本明細書に記載されるような技術は、企業で使用される他のタイプのデータを保持するデータストアに適用することができる。
【0088】
各データストアは、1つ又は複数のストレージデバイスで実装されてもよく、任意の適切なタイプの1つ又は複数のフォーマットでの物理データセットの保存をサポートするためのデータ管理ソフトウェア又は他の制御機構を含み得る。1つ又は複数のストレージデバイスは、任意の適切なタイプのものでよく、例えば、1つ又は複数のサーバ、1つ又は複数のディスクアレイ、1つ又は複数のディスクアレイのクラスタ、1つ又は複数のポータブルストレージデバイス、1つ又は複数の不揮発性ストレージデバイス、1つ又は複数の揮発性ストレージデバイス、及び/又はデータを電子的に保存するように構成された任意の他の1つ若しくは複数のデバイスを含み得る。データストアが複数のストレージデバイスを含む実施形態では、ストレージデバイスは、1つの物理的な場所(例えば、ある建物内)に併設されてもよく、又は複数の物理的な場所(例えば、複数の建物内、異なる都市、州、若しくは国)に分散されてもよい。本明細書に記載される技術の態様はこの点で限定されないので、ストレージデバイスは、任意の適切なタイプの1つ又は複数のネットワークを使用して互いに通信するように構成されてもよい。
【0089】
データ管理ソフトウェアは、物理ストレージ内のデータを整理し、及び物理ストレージにデータを書き込むこと、又は物理ストレージからデータを読み出すことができるようにデータにアクセスする機構を提供することができる。データ管理ソフトウェアは、例えば、データベースシステム又はファイル管理システムであってもよい。データ管理ソフトウェアのタイプに応じて、1つ又は複数のストレージデバイスは、データベーステーブル、スプレッドシートファイル、フラットテキストファイル、及び/又は他の任意の適切なフォーマット(例えば、メインフレームのネイティブフォーマット)のファイルなどの1つ又は複数のフォーマットを使用して、物理データセットを保存することができる。ある実施形態では、データストア102-1、102-2、102-3、…、及び102-nは、同じタイプのものであってもよく(例えば、すべてがリレーショナルデータベースであってもよい)、又は異なるタイプのものであってもよい(例えば、1つはリレーショナルデータベースであってもよいが、別のものはフラットファイルにデータを保存するデータストアであってもよい)。複数のデータストアが異なるタイプのものである場合、ストレージ環境は異種又は連合データ環境102と呼ばれることがある。データストアは、本明細書に記載される技術の態様はこの点で限定されないので、例えば、SQLサーバデータベース、ORACLEデータベース、TERADATAデータベース、フラットファイル、マルチファイルデータストア、HADOOP分散データベース、DB2データストア、Microsoft SQL SERVERデータストア、INFORMIXデータストア、テーブル、テーブルの一群若しくはデータベースの他のサブパーツ、及び/又は任意の他の適切なタイプのデータストアであってもよい。
【0090】
データ処理システム104は、データストア102-1、102-3、102-3、…、及び102-nに保存された物理データセットにアクセス(例えば、読み出しアクセス及び/又は書き込みアクセス)する機能を実行するために、様々なアプリケーション106をサポートする。そして、アプリケーション106は、データストア内のデータに基づいて操作を行うことができる。データ処理システム104は、同じタイプ又は異なるタイプのものでもよいアプリケーション106-1、106-2、162-3、…、及び106-nをサポートすることができる。一部の例では、アプリケーションは、実行されると、データストア内の1つ又は複数の物理データセットに対して、取引データの読み出し又は書き込みを行うことができる。他の例では、アプリケーションは、実行されると、複数の異なるデータストアにわたって保存された物理データセットに対して、データの読み出し又は書き込みを行い、データセットからビジネス上の洞察を抽出するためにデータを分析することができる。
【0091】
アプリケーション106は、データフローグラフとして開発することができる。データフローグラフは、データに対して行われるデータ処理操作を表す「ノード」又は「頂点」と呼ばれるコンポーネントと、データの流れを表すコンポーネント間のリンクとを含み得る。データフローグラフによってエンコードされた計算を実行するための技術は、「Executing Computations Expressed as Graphs」と題された米国特許第5,966,072号明細書に記載されており、これは、参照によりその全体が本明細書に組み込まれる。データフローグラフとしてアプリケーション(例えば、コンピュータプログラム)を開発するための環境は、「Managing Parameters for Graph-Based Applications」と題された、米国特許出願公開第2007/0011668号明細書に記載されており、これは、参照によりその全体が本明細書に組み込まれる。データフローグラフは、データソース及びデータシンクを含み得る。これらは、データストア102-1、102-3、102-3、…、又は102-nへのアクセスを示すフローにおける終端ノードによって表される。
【0092】
しかしながら、アプリケーション自体は、アプリケーションに含まれる特定のデータストアでプログラムされる必要はない。単一の物理データセットにアクセスするようにハードコードされるのではなく、アプリケーション106は、論理データセットの観点からプログラムされ得る。論理データセットは、1つ又は複数のデータセットの論理表現を指し得る。データ処理システム104は、複数の論理データセットの定義及びそれらの論理データセットに関する他のメタデータを保存してもよい。この情報は、データセットマルチプレクサ105によって管理されてもよい。データ処理システム104と共に使用されるツールは、論理データセットに関するメタデータにアクセスし、そのメタデータに基づいて機能を実行することができる。例えば、プログラム開発環境は、利用可能な論理データセットを選択し、アプリケーションのプログラミングにおいて使用することができるユーザインタフェースを提供し得る。
【0093】
論理データセットは、物理データストアの対応するデータのフォーマットとは無関係に、データを定義するスキーマを有する場合がある。例えば、論理データセットは、論理データセット内の論理エンティティを定義するスキーマを有し得る。論理エンティティは、人間のユーザにとって認識可能及び/又は理解可能なものであってもよい。例えば、論理データセットは、顧客名などの論理エンティティを含み得る。この論理データセットに対応する物理データセットでは、顧客名は、それぞれ顧客のファーストネーム、ミドルネームのイニシャル、及びラストネームに対応するデータを保持する3つのフィールドとして、データテーブルの1行に保存されてもよい。しかしながら、論理データセットは、物理ストレージのデータのフォーマットに関係なく、単に論理エンティティCustomer_Nameを含んでもよい。
【0094】
データ処理システム104は、論理データセットのスキーマを定義することができるインタフェース(図示せず)を含み得る。インタフェースは、例えば、ユーザが論理データセットを指定し、又は論理データセットのスキーマを指定することによって論理データセットをシステムに導入することができるユーザインタフェースであってもよい。データ処理システム104は、企業のビジネスにおいてよく使用される論理エンティティのセットを保存してもよい。よく使用される論理エンティティの例には、名前、識別番号、電話番号、住所、国籍、口座残高、取引額、又は日付のうちの1つ又は複数が含まれ得る。これらのビジネス用語は、論理データセットのスキーマを少なくとも部分的に指定するために使用され得る。しかしながら、スキーマは、事前に定義された論理エンティティの代わりに、又はそれらに加えて、他の論理エンティティを含むものとして定義されてもよい。
【0095】
論理データセットの観点からアプリケーションのプログラミングを可能にすることによって、アプリケーションを作成するプログラマが、対応する物理データセットを保存するデータストアのフォーマットを理解する必要がなくなる。その結果、データアナリストは、物理データセットを保持するデータストア内のデータのフォーマットを理解していなくても、論理データセットを使用してアプリケーションを開発し得る。
【0096】
より詳細な例として、企業内でプログラマが新規顧客を保存する論理データセットを定義する場合がある。論理データセットのスキーマは、例えば、顧客名、顧客住所、顧客識別子、及び顧客獲得日などの論理エンティティを含み得る。データアナリストは、論理データセットに対応する物理データセットの保存フォーマットに関係なく、論理データセット及びこれらの論理エンティティの観点からアプリケーションを書くことができる。その結果、データアナリストは、アプリケーションによってアクセスされるデータを保存する物理データセットの知識なしに、アプリケーションを書くことができる。
【0097】
アプリケーションの実行時に、論理データセットに対応する物理データセットのデータは、データストア102-1、102-3、102-3、…、及び102-nのうちの1つ又は複数に保存されてもよい。アプリケーションを実行するために、論理データセットへのアクセスを指定する各操作は、データストア102-1、102-3、102-3、…、及び102-nのうちの1つに保存された、対応する物理データセットからデータの読み出し又は書き込みを行うデータ処理システム104によって実行されてもよい。データセットマルチプレクサ105は、対応する物理データセットに自動的にアクセスすることによって、そのような操作の自動実行を可能にすることができ、物理データストアに保存されたデータのフォーマット及び論理データセットのスキーマで指定されたフォーマット間の変換を可能にすることができる。
【0098】
図1Cに示すように、データ処理システム104は、対応する物理データセットへのアクセス並びに論理データセット及び物理データセットのフォーマット間の変換を自動化するためのデータセットマルチプレクサ105を含む。データセットマルチプレクサ105は、データセットのカタログ107を維持することができ、カタログの各エントリは論理データセットに対応し、1つ又は複数の物理データセットにアクセスするための情報を提供する。例えば、カタログエントリは、論理データセットに対応するデータストア102-1、102-3、102-3、…、又は102-n内のデータセットを識別し得る。カタログエントリは、代替的又は追加的に、物理データセットに保存されたデータを論理データセットのフォーマットに変換するための情報を含み得る。その情報は、実行可能プログラムであってもよく、又は実行可能プログラムを含んでもよい。例えば、カタログ情報は、物理データセット内の複数のフィールドのデータを、論理データセット内の対応する論理エンティティのフォーマットに変換するためのプログラムを識別し得る。他の情報は、代替的又は追加的に、1つ又は複数の物理データセットにアクセスするためのカタログ情報として保存されてもよく、又はそのようなカタログ情報に反映されてもよい。
【0099】
データセットマルチプレクサ105は、アプリケーション106が、データセットのカタログ内の情報を使用して、プログラムされた論理データセットに基づいて物理データセットにシームレスにアクセスできるようにする。アプリケーション(例えば、アプリケーション106-3)において論理データセットにアクセスする(例えば、読み取る及び/又は書き込む)動作が実行され次第、データ処理システム104のデータセットマルチプレクサ105は、データストア(例えば、データストア102-1)内の対応する物理データセットへのアクセスを可能にすることができる。例えば、論理データセットに関して保存されたカタログ情報がアクセス制御プログラムであるか、又はアクセス制御プログラムを含む場合、そのプログラムが実行されてもよい。その結果、アプリケーション106-3が論理データセットの観点からプログラムされているにもかかわらず、データアクセス操作が実行されると、データストア102-1に保存された物理データセットがアクセスされる。
【0100】
データセットマルチプレクサ105は、データセットのカタログにアクセスして、アプリケーション106-3で参照される論理データセットに関連付けられたエントリを選択し得る。その後、対応するデータストア102-1に保存された物理データセットを識別するため、及び/又はデータストア102-1のフォーマットのデータを論理データセットのフォーマットに変換するための情報が、データアクセスのために使用され得る。
【0101】
このアクセスは動的であってもよい。カタログ情報は、データアクセスを必要とするアプリケーションの操作の実行時に使用されてもよい。データセットのカタログにおける論理データセットに関連付けられたエントリは、論理データセットに関連付けられた情報の保存に対する変更を示す事象に応答して更新され得る。カタログ情報を介した物理データストアのアクセスは、ITシステム100全体の任意の時点で行われ得る変更にもかかわらず、アプリケーション106-3を書いたデータアナリスト又は他のユーザがそれらの変更に気付いていなかったとしても、アプリケーションが実行を継続することを保証し得る。
【0102】
例えば、物理データセットは、データストア102-1からデータストア102-nに移行され得る。アプリケーションがプログラムされている論理データセットは、この変更を考慮して修正される必要はない。論理データセットのカタログエントリを更新することによって、データセットマルチプレクサ105は、正しい物理データセットへのアクセスを、それが存在するデータストアに関係なく、アプリケーション106-3に提供するために、更新されたカタログ情報を自動的に利用することができる。
【0103】
データセットへのアクセスに関連する動作の一部として特定のデータストアにアクセスする方法に関係なく、ユーザは、どのデータセットが特定の動作のターゲットであるかを指定する入力を提供することができる。多くのデータセットを有する企業内のデータ処理システムでは、適切なデータセットの指定を可能にするために、1つ又は複数の検索インタフェースを提供することができる。データセット選択ツールは、例えば、データセット検索及び選択コマンドを指定する入力を受信するように構成されたインタフェース要素を提供するユーザインタフェースを提供することができる。
【0104】
データセットの検索及びデータセットグループにおける動作を可能にする情報は、ITシステム100内に格納することができる。この例では、その情報は、データセットマルチプレクサ105内に格納することができ、データセットマルチプレクサ105は、1つ又は複数のメタデータリポジトリを含み得る。メタデータリポジトリは、データセットの検索を実行するためのファセットを提供する異なるタイプのメタデータを有する論理及び/又は物理データセットについての情報を格納することができる。このメタデータは、当技術分野で知られているような技法を含む手動又は自動技法を使用して収集することができる。
【0105】
それに加えて、1つ又は複数のリポジトリは、データセットグループについての情報を格納することができる。例えば、そのような情報を保持するデータセットグループリポジトリ120は、
図1Cに示されている。この情報は、複数のタイプの情報を関連付ける方法で、不揮発性のコンピュータ可読媒体に格納することができる。例えば、関連情報は、例えば、同じデータ構造に格納することも、リンクを通じて関連させることもできる。
【0106】
この情報は、データ処理システムの複数のユーザの間で共有することができる。その結果、異なるユーザが、データセットグループについての情報の作成、修正及び/又はアクセスを行うことができる。情報は、データセットグループに対するスコープの範囲内のペルソナを有するユーザにのみ、各データセットグループについての情報を流出させるように、スコーピングすることができる。その代替として又はそれに加えて、データセットグループについての情報を格納するリポジトリは、アクセス制限を実施し、データセットグループのいくつか又はすべての作成、修正及び/又はアクセスを行うことができるユーザを制限することができる。
【0107】
リポジトリ内の情報へのアクセスに関する制限は、データセットグループへのアクセスに関するスコープ制限と並行し得る。アクセスは、ユーザに固有のスコープを有するデータセットグループの作成又は修正を行うために、そのユーザに与えられ得る。その代替として又はそれに加えて、アクセスは、役割を有するグループのユーザ及び/又はデータセットグループのスコープの範囲内の彼らのペルソナの一部としての他の特性を有するグループのユーザに与えられ得る。しかし、いくつかの実施形態では、データセットグループの作成及び修正を行う特権は、それらのデータセットグループの使用のためのスコープとは別に設定することができる。データセットグループの管理及び使用に対する異なるアクセス制御により、企業内の労働者の一部の専門知識を捕捉し、データ処理システムを通じてその専門知識を自動的に広めることが可能になり得る。例えば、特定の動作における使用に対する適切なデータセットについての専門知識を有するユーザは、明確にリストされたユーザ、特定の役割を有するユーザ又はそれらの動作を実行する企業内のグループのユーザによる使用のためにスコーピングされたデータセットグループの作成又は修正を行うために、アクセス特権が与えられ得る。他のユーザが、彼らのペルソナがスコープの範囲内であるデータセットグループからデータセットを選択することによってそれらの動作を実行する際は、システムは、彼らのデータセットの選択肢を、データに関する専門知識を有するユーザによって以前に指定されたものに自動的に限定され得る。
【0108】
アクセスがどのように実施されるかにかかわらず、データ処理システム104は、データセットグループの作成若しくは修正を行うため、データセットグループを返す検索を行うため及び/又はデータセットグループからデータセットを選択するためのユーザインタフェースを提供することができる。そのようなユーザインタフェースの例は、以下のセクションで提供する。
【0109】
グループに基づいて論理データセットを選択するための代表的なユーザインタフェース
データセットグループは、データアクセスに関連する動作を実行するために1つ又は複数のデータセットを選択する際に使用するために利用可能であり得る。例えば、動作を実行する際に使用するためのデータセットの選択と関係して、検索インタフェースが提示され、データセットグループが検索結果に含まれ得る。
【0110】
一例として、データ処理システムによる実行のためのアプリケーションは、ユーザ入力に基づいて特定のデータセットにアクセスするように構成することができる。データセットカートは、この選択プロセスを単純化するために使用することができる。アプリケーションがデータフローグラフとして構成される実施形態では、データフローグラフのデータセットコンポーネントは、読み取り動作を実行するためのデータ源として構成することができる。構成は、データセットを検索し、適切なデータセットを選択することを伴い得る。検索結果にデータセットカートを含めることにより、検索を単純化することができる。例えば、データセットカート内にある検索クエリと一致するデータセットは、検索結果として別々に提示されることはない。むしろ、検索結果は、データセットカートを提示することによって制限され得る。
【0111】
図2Aは、データセットカートを使用して、アプリケーションを構成するためのユーザによるデータセットの選択を援助することができる、プログラミング環境におけるGUI 800を示す。この例では、ユーザ(
図1Aのユーザ112a又は113aなど)は、GUI 800を通じて、実行可能データフローグラフのコンポーネント及びコンポーネントの間の相互接続を指定することができる。それらのコンポーネントは、1つ又は複数の入力源、1つ又は複数の出力源、及び、出力を生成するために入力からのデータにおいて実行される1つ又は複数の動作を表し得る。入力及び/又は出力源を表すコンポーネントは、ユーザによる構成が可能であり得る。構成は、入力又は出力に対して使用するためのデータセットを指定することを伴い得る。これらのコンポーネントの構成は、最初に、データセットカートを選択し、次いで、選択したデータセットカート内のデータセットを選択するユーザ入力を伴い得る。
【0112】
図2Aは、単純なグラフを示し、図示の簡略化のために、表示され得る情報の一部や、表示コンポーネントと関連付けられるインタフェース要素が省略されている。この例では、ユーザは、入力データセットを処理するためにコンポーネント804を指定している。コンポーネント804は、例えば、選択した入力データセットにデータ品質規則を適用する動作を表し得る。
【0113】
コンポーネント802は、入力データセットを含むデータ源を表す。コンポーネント802は、最初に、データセットカートを選択し、次いで、入力データ源として使用するためにそのカート内のデータセットを選択することによってなど、ユーザがコンポーネントを構成するためにアクセスすることができるインタフェース要素を有する。コンポーネント806は、出力コンポーネントを表し、ユーザは、例えば、コンポーネント804によって表される動作において作成されたデータを保持するために作成することができる出力データセットを指定するように構成することができる。
【0114】
図2Aに示されるように、コンポーネント802は、ユーザがデータセットの選択のための選択ツールと対話できるようにするためのユーザインタフェース要素を含む。それらのインタフェース要素は、フィールド812を含み得、フィールド812は、ここでは、ドロップダウンメニューボックスとして示されている。
図2Aに示される状態では、ユーザは、フィールド812内で、ユーザがデータセットカタログ内のデータセットの選択を希望することを示す値を選択している。リンク810は、別のユーザインタフェース要素であり、それを通じて、ユーザは、ユーザが利用可能なデータセットカタログのオプションからデータセットを選択するという選択プロセスの次のステップに進むというコマンドを入力することができる。
【0115】
リンク810のユーザ選択に応答して、データ処理システムは、
図2BのGUI 890を生成し、ユーザに提示することができる。
図2Bは、データセットの選択のための選択ツールのインタフェースを示し、この事例では、
図2Aのデータフローグラフのコンポーネント802を構成するためにデータセットを選択するプロセスの一部として呼び出されている。GUI 890内では、
図2Aと関係して上記で説明されるように、そのソースタイプのユーザの選択と一致する利用可能なカタログデータセットが提示されている。
【0116】
GUI 890は、部分855において、選択のために利用可能なデータセットを含むデータセットカートを提示している。仮にデータセットカート内に存在しないデータセットが選択のために利用可能であるとすれば、それらのデータセットもまたリスト895に現れ得る。GUI 890のリスト895は、データセットカートの中で特に、例えば、
図8AのGUI 400を通じて作成されたデータセットカート(例えば、「過去最高のカート」)を含む。
【0117】
この例では、データセットの階層を保存するために、検索結果が提示されている。リスト895の要素の隣に提示されているアイコンは、要素がデータセットカートであるか又はデータセットであるかを示す。例えば、その隣に「フォルダ」アイコン897が描写されている要素は、データセットカートであり得、ここではファイルアイコンとして示されている異なるアイコン898を有する要素は、データセットであり得る。ナビゲーション用のグラフィカルユーザインタフェース要素は、「フォルダ」アイコンによって表されるデータセットのグループのコンテンツを示すか又は隠すことによってなど、ユーザが階層を横断できるようにするために提供される。
図2Bの例では、GUI 890は、ナビゲーション用のグラフィカルユーザインタフェース要素896を含む。要素896の選択により、GUI 890は、データセットカートに含まれるデータセット(例えば、論理データセット)を提示するか隠すかをトグルする。この方法では、ユーザは、適切な階層レベルにおいて、アイコンの識別及び選択を行うことができる。
【0118】
図2Bは、2つの階層レベルのみ示しているが、いくつかのシナリオでは、グループは、さらなるグループを含み得、さらなるデータセットカートを含むデータセットカートが展開される場合は、ユーザインタフェース要素と関連付けられた内部グループを有するインタフェースがユーザに提示され、内部グループにおいて展開されるオプションもユーザに提供され得る。この方法では、複数の階層レベルが露出され得る。ユーザに提示される階層レベルの数に関係なく、ユーザは、階層レベルにわたってナビゲートして、選択のために利用可能なデータセットを明示し、次いで、所望のデータセットを選択することができる。
【0119】
それに加えて、ユーザは、インタフェースを介して表示されるデータセット又はデータセットグループについての追加の情報を得るために、入力を提供することができる。例えば、
図3のGUI 900は、ユーザが、「ロイヤルティデータ」データセットカート920を含む特定のデータセットカートを展開し、そのデータセットカートに含まれる論理データセットのセットが明示されるように、ユーザインタフェース要素を操作して、データセット選択ツールを制御している動作状態を描写している。GUI 900は、ユーザが、GUI 900の論理データセット930を選択することによって、特定の論理データセットに関する追加の情報を得られるようにする。例えば、論理データセットについての追加の情報を閲覧するというユーザの要求に応答して、ポップアップGUI 910を提示することができる。
【0120】
GUI 910は、ユーザがデータセットについての追加の情報を得るために操作することができる追加のユーザインタフェース要素を提供する。GUI 910の「情報」タブの選択により、論理データセットに関連するデータストア、データストア又はストレージのタイプ、データストア及び/又はデータストア内の物理データセットへの経路、データセットのカタログ内の対応するエントリへのリンク並びに/或いは他の情報など、論理データセットについての基本的な情報が提示される。GUI 910の「閲覧」タブの選択により、論理データセットに対応する物理データセットのデータなど、論理データセットに関連する物理データが提示される。GUI 910の「記録フォーマット」タブの選択により、データセットに関する記録フォーマット情報(例えば、論理データセット及び/又は論理データセットの論理エンティティに関する記録フォーマット情報)が提示される。GUI 910の「プロファイル」タブの選択により、システムにおいて定義される他のデータセットカート及び/又は論理データセットとの関係など、プロファイル情報が生じる。ユーザは、データセットが所望の使用に適切かどうかを評価するために、この情報の何れか又はすべてを閲覧することができる。
【0121】
選択の候補としてユーザに提示されるデータセットカート及び/又はデータセットの数を制限するために、他のメカニズム(検索インタフェースなど)を使用することができる。
図2Bに戻ると、GUI 890は、ユーザが検索クエリを入力できるようにする。GUI 890は、ユーザが検索クエリを入力するためのグラフィカルユーザ要素892を含み得る。この例では、検索クエリは、テキストとして指定されている。ユーザは、データセット、データセット内に含まれるフィールドの名前及び/又はデータセットに対して格納された他のメタデータについて説明するためにリポジトリに入力されている言葉を指定することができる。例えば、
図4Aは、検索クエリ「ロイ」に対する検索結果を描写している。データ処理システムは、クエリに基づいて検索を実行し、クエリに基づいてデータ処理システムによって選択されたデータセットカート及び/又は論理データセットのリストを含む検索結果を生成することができる。この例では、検索クエリは、2つのデータセットカート内のデータセットのタイトルと一致し、GUI 1000を通じて選択するために利用可能なデータセットのリストは、これらの2つの一致するデータセットを含むデータセットカートに限定される。
【0122】
リスト895(
図2B)がどのように指定されるかにかかわらず、選択ツールは、ユーザがリストから選択を行えるようにするためのユーザインタフェースを提示し得る。この例では、選択用のユーザインタフェース要素は、ナビゲーション用のユーザインタフェース要素とは別である。そのような構成により、リスト895のエントリの選択において、コンテキストに適切なデータセットグループの階層レベルを有することができる。選択が行われる動作を単一のデータセットにおいて行うシナリオでは、選択用のユーザインタフェース要素は、ユーザが個々のデータセットの選択を示した際にのみ動作可能であり得る。データセットグループの選択が適切であるシナリオでは、選択用のユーザインタフェース要素は、ユーザがデータセットカートを示した際に動作可能であり得る。グループ又は単一のデータセットが動作に適切である場合は、選択用のユーザインタフェース要素は、グループ又は単一のデータセット要素が示された際に動作可能であり得る。ユーザがグラフのコンポーネントを構成するために単一のデータセットを選択している
図2Aの例では、選択ツールは、個々のデータセットを示す階層レベルに選択を限定し得る。
【0123】
図2Bに示されるように、選択対象として、「ロイヤルティ」データセットが指定されている。これは、GUI要素898の選択に続いてGUI要素845の選択を行うことによって達成することができ、それにより、GUI 890の部分899に「ロイヤルティ」データセットが提示される。GUI要素870の選択により、部分899において識別されたデータセットは、選択ツールによって、データアクセス動作を実行する際に使用するためのユーザ選択として返される。ユーザは、例えば、部分899においてリストに現れたデータセットを指定することができる。そこから、ユーザは、上記で説明されるように、そのデータセットに関する情報を呼び出し、指定したデータセットを選択すべきかどうかの最終的な決定を行うことができる。部分899において指定されたデータセットを除去する「クリア」とラベル付けされたインタフェース要素又は選択を行うことなく選択プロセスを終了する「キャンセル」インタフェース要素を含む、他のユーザインタフェース要素は、選択ツールがその選択を返す前に、ユーザが指定したデータセットを修正できるようにする。
【0124】
この例では、検索インタフェースは、
図10Aの検索インタフェースより著しく単純であり、検索基準を指定するためのフィールドがより少なく提示されている。より単純な検索インタフェースでさえ、その結果は、ユーザを包含するスコープを有するデータセットカート内及び/又は検索の他のコンテキスト内のものに限定されるため、その結果は、
図10Aのインタフェースを通じてユーザが見つけられるものと等しく関連のある又はそれより関連のあるものであり得る。
【0125】
選択プロセスを単純化する価値は、
図2Cと関係して見出すことができ、
図2Cは、
図2Aの単純な例に対してさえ存在し得るさらなる情報及びユーザインタフェース要素を示している。
図2Cは、データセット選択を行うことができるプログラミング環境におけるGUI 875を示す。この例では、ユーザ(
図1Aのユーザ112a又は113aなど)は、GUI 875を通じて、実行可能データフローグラフのコンポーネント及びコンポーネントの間の相互接続を指定することができる。例えば、ユーザは、検証を実行するか又はデータ品質規則をデータに適用するためのコンポーネントを指定することができる。データフローグラフは、使用されるデータセットを示すコンポーネント882を含み得る。コンポーネントは、そのコンポーネントと関連付けられたデータアクセス動作に対してどのデータセットを使用するかを識別するように構成することができる。
【0126】
図2Cは、動作884が、選択されたデータ源におけるデータ品質規則の実行を含むシナリオを示す。データフローグラフのコンポーネント886は、検証動作の出力を表し得る。
【0127】
図2Cに示されるように、コンポーネント882と関連付けられたユーザインタフェース要素を通じて、そのコンテンツが検証される予定のデータセット(loyalty.datなど)を選択することができる。それらのインタフェース要素は、フィールド888を含み得、フィールド888は、ここでは、選択するデータ源がデータセットカタログ107(
図1C)に登録されているものに限定されていることを示す値をユーザが選択したことを示している。リンク889は、別のユーザインタフェース要素であり、ユーザは、さらなる検索基準を入力するために呼び出すことができる。
【0128】
リンク889の選択により、
図2Bと関係して上記で説明されるGUI 890などのユーザインタフェースを提示するように選択ツールをトリガすることができ、そのユーザインタフェースを通じて、ユーザは、データセットを選択することができる。この例では、
図2Cのコンポーネント882において選択されたデータセットとして、「ロイヤルティ」データセットが描写されている。
図2Aのものに対して、
図2Cのインタフェースの複雑性が増しているにもかかわらず、このデータセットは、データセット選択ツールを通じて、そのデータセットを選択するための単純なプロセスで選択されている。
【0129】
同様の単純なプロセスを使用して、同じ動作を実行する複数のデータセットを指定することができる。例えば、検証規則を適用する
図2Aに示されるようなグラフは、それらの検証規則を複数のデータセットに適用するように構成することができる。
図2Dは、コンポーネント802が複数のデータセットを表すように構成されている動作状態のGUI 800を示す。この例では、その構成は、ソースタイプとしてカタログデータセットカートの選択を示すフィールド812’におけるユーザ入力によって達成されている。
【0130】
データ入力又は出力を表すコンポーネントを構成するためのソースタイプに関係なく、データ選択ツールを使用して、データセット又はデータセットのグループを選択するユーザ入力を受信することができる。複数のデータセットにおいて動作が実行され得るコンテキストにおいてデータセットが選択されているシナリオでは、データ選択ツールは、データセットカート全体を選択できるようにすることができる。データセットカートの選択は、
図2Bと関係して上記で説明されるように実行することができるが、ユーザインタフェース要素845は、データセットグループがリスト855に示された際に動作することができる。
図2Eは、データセットのグループの選択のための例示的なユーザインタフェースを提供する。
【0131】
動作のターゲットとしてのデータセットグループの選択は、選択されたデータセットカートの各データセットにおいて動作を実行するというデータ処理システムへのコマンドとしての役割を果たし得る。例えば、動作は、データセットカートに含まれる各データセットにおいてデータ品質規則を実行すること又は各データセットのコンテンツの他のタイプの処理を含み得る。
【0132】
図2Eの例では、GUI 811は、部分850において、選択のために利用可能なデータセットカートをリストしている。GUI 811のリスト815は、データセットカートの中で特に、
図8AのGUI 400を通じて作成されたデータセットカート(例えば、「過去最高のカート」)を含む。ユーザは、リストから選択を行うことができる。
図2Eに示されるように、選択対象として、「過去最高のカート」データセットが指定されている。これは、GUI要素820の選択に続いてGUI要素840の選択を行うことによって達成することができ、それにより、GUI 811の部分860に「過去最高のカート」データセットカートが提示される。GUI要素861の選択により、データアクセス動作を実行する際に使用するために、「過去最高のカート」データセットカートが選択される。
【0133】
従って、これらの例において説明される選択ツールは、ユーザが無数の選択肢の中から効率的に選択を行えるようにするための情報及びユーザインタフェース要素を提供する。
【0134】
選択用のインタフェースは、選択のためにデータセット又はデータセットのグループを識別するための他のユーザインタフェース要素を含み得る。例えば、ユーザインタフェースは、ユーザが1つ又は複数のデータセット又はデータセットカートにアクセスすることを伴う動作に対して関連のあるデータセットを識別できるように、他の検索基準を入力として受け入れることができる。ユーザに提示されるオプションは、データセットであるか又はデータセットカートであるかにかかわらず、指定された検索基準と一致するものに限定され得る。データセットカートの事例では、提示されるオプションは、検索基準と一致するデータセットを含むもの及び/又は指定された基準と一致するカートに限定され得る。
図4Aは、ユーザがデータセットを選択できるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェース1000の図示であり、ユーザは、検索を制限するための第1のメカニズムとしてデータセットのディレクトリを通じてナビゲートし、次いで、検索における第2の制限としてデータセットの記述に現れるような「ロイ」などのテキストを検索クエリとして入力している。次いで、ユーザは、フィルタリングされた検索結果から動作を実行する際に使用するためのデータセットカート及び/又はデータセットを選択することができる。
【0135】
この例では、検索の対象を指定する際に追加の柔軟性が提供されるにもかかわらず、検索インタフェースは、
図10Aの検索インタフェースより著しく単純であり、検索基準を指定するためのフィールドがより少なく提示されている。より単純な検索インタフェースでさえ、その結果は、ユーザを包含するスコープを有するデータセットカート内及び/又は検索の他のコンテキスト内のものに限定されるため、その結果は、
図10Aのインタフェースを通じてユーザが見つけられるものと等しく関連のある又はそれより関連のあるものであり得る。
【0136】
図4Bは、ユーザがデータセットを選択できるようにするための、データ処理システムによってレンダリングされる、
図4Aの例示的なグラフィカルユーザインタフェースの検索クエリが実行された後の動作状態の図示であり、ユーザが動作のターゲットとして1つ又は複数のデータセットを選択できるように、検索クエリ(例えば、検索クエリ「ロイ」)と一致するデータセットのリストが提示されている。検索結果は、カートのスコープ及び検索を実行するユーザに基づくデータセットに限定され得る。
【0137】
図5は、ユーザがデータセットを選択できるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェース1100の検索クエリが実行された後の動作状態の図示であり、データセットのリストがEメールを格納するフィールドを含むものに限定されている。検索結果は、カートのスコープ及び検索を実行するユーザに基づくデータセットに限定され得る。例えば、検索結果は、検索を実行するユーザがカートのスコープの範囲内であるデータセットカート内のデータセットに限定され得る。
【0138】
データセットカートを作成するため、検索を実行するため及び/又は動作のターゲットとしてデータセット/カートの使用若しくは選択を行うために、データ処理システムを使用して、ユーザのアイデンティティを決定するための様々な形式のユーザ入力を使用することができる。例えば、キーボード、スタイラス又は他の筆記用具を使用したテキスト入力(例えば、ユーザ識別子及び/又はパスワード)、マイクロホン又は他のデバイスを使用した音声入力、バイオメトリック入力(例えば、指紋、顔のパターン、声のパターンなど)並びに/或いは他の形式の入力などのユーザ入力を利用して、ユーザのアイデンティティを決定することができる。アイデンティティ情報は、ユーザのペルソナを示すために使用することができる。
【0139】
論理データセットをグループ化するための代表的なユーザインタフェース
データ処理システムは、ユーザが、グループの作成、修正又は削除を行うことによってなど、データセットのグループを管理することができる1つ又は複数のメカニズムを提供することができる。メカニズムは、データ処理システム内に含まれる専用ツールであっても、データ処理システムに存在するデータセット情報にユーザがアクセスできるようにするためのツール又は他のインタフェースと関連付けられた追加のユーザインタフェースオプションを通じて提供してもよい。例えば、指定された基準を満たすデータセットをユーザが検索できるようにするためのインタフェースは、検索結果に含まれるデータセットをデータセットグループと関連付ける入力をユーザが提供できるようにするためのユーザインタフェース要素を含み得る。同様に、リネージュ情報が提示されている所などの他のインタフェースは、ユーザがデータセットグループを管理できるようにするためのユーザインタフェース要素で拡張することができる。これらのユーザインタフェース要素は、データセットグループについての格納された情報へのアクセス及び/又は修正を行うコンピュータ実行可能コードにリンクすることができる。
【0140】
図6は、データセット及び/又はデータセットグループについての情報を閲覧するという要求に応答して生成されるグラフィカルユーザインタフェース(GUI)200を示し、この例では、データセットカートとして描写されている。例えば、このインタフェースは、ユーザが、データセット検索クエリの働きをする入力を提供し、次いで、その結果から特定のデータセットを選択した結果であり得る。GUI 200は、データセット202についての情報を提示している。
図6に示されるように、データセット「loyalty.dat」に関する情報が提示されている。データセット202に関する情報は、データセットのタイプ(例えば、ファイル、ディレクトリ、表など)、データセットが属するディレクトリ、データセットが属するデータセットの階層に関する情報及び/又は他の情報を含み得る。例えば、GUI 200は、データセット202が、ファイルであること、ディレクトリ「メイン」に属すること、並びに、データセットの少なくとも3つの階層(「ロイヤルティプログラム」、「リテール」及び「メイン」など)に属することを描写している。階層は、データ処理システム104のユーザによって定義するか又は指定することができる。
【0141】
また、インタフェースは、データセットグループを管理できるようにするためのインタフェース要素も含み得る。この例では、GUI 200は、データセット202を含むデータセットカート204のリストも含む。例えば、ユーザインタフェース200は、データセットカート「ロイヤルティデータ」及び「管理データ」がデータセット202を含むことを描写している。データセットカートについての情報を閲覧するという要求により、別のGUIが生成され得る。例えば、「ロイヤルティデータ」データセットカートを表すグラフィカルユーザ要素206の選択により、GUI 300が生成され得る。
【0142】
図7は、データセットカート302についての情報の閲覧及び/又は変更を行うという要求に応答して生成された例示的なGUI 300を示す。しかし、データ処理システムは、示されるようなデータセットカートを管理するためのインタフェースをユーザが呼び出すことができる代替の又は追加のメカニズムを提供できることを理解すべきである。この例では、GUI 300は、「ロイヤルティデータ」データセットカートに関する情報340を提示している。データセットカート302に関する情報は、データセットカートの名前、データセットカートについて説明する情報、データセットカートの所有者(例えば、データセットカートを作成したユーザ)、データセットカートを修正する許可(例えば、データセットカートを編集若しくは削除する許可)が与えられているユーザ、データセットカートのコンテンツ(例えば、データセットカートに含まれるデータセットに関する情報)、データセットカートと関連付けられた他のデータセットカート、論理データセット若しくは論理エンティティ(例えば、データセットカートと関係があるもの)及び/又は他の情報を含む。データセットカートを閲覧する許可が与えられているユーザについての情報は、リポジトリ120内の情報を閲覧することと関連するか又はそのユーザが行う検索の結果にデータセットカートを表示させることと関連するかにかかわらず、ユーザインタフェース要素304を選択するユーザによって入力することができる。例えば、GUI 300は、データセットカート302が、論理データセット「loyalty.dat」202と、その論理データセットに対応する物理データセットに関する情報206とを含むことを描写している。GUI 300に示されるように、データセットカート302は、データセットカートに含まれる他の論理データセットに対応する物理データセットに関する情報を含み得る。例えば、データセットカート302は、論理データセット310、312と、これらの論理データセットに対応する物理データセットに関する情報314、316とを含む。
【0143】
GUI 300は、データセットカートを変更する入力を受信するように構成されたインタフェース要素を含む。インタフェース要素330は、例えば、ユーザによって選択されると、ユーザが、個人のリストとして、役割別に、グループメンバーシップ別に又はユーザペルソナの他の特性別に、データセットカートの読み取り、編集、削除などを行うことができるユーザを指定できるようにするための、追加の画面を提示することができる。データセットカートには、現在の所有者を割り当てることができる。現在の所有者は、データセットカートのすべての態様への完全なアクセスを有し得る。現在の所有者は、最初は、データセットカートを作成したユーザであり得る。その後、データセットカートの現在の所有者は、グラフィカルユーザ要素355を選択し、所有権を委譲するユーザ又は役割を示すことによって、別のユーザに所有権を委譲することができる。
【0144】
いくつかの実施形態では、データセットカートのスコープは、データセットカートを読み取る及び/又は編集する権限を有するユーザに見合ったものである。他の実施形態では、データセットに対して実行された検索の結果の中にデータセットカートが現れ得る対象となるユーザを指定するデータセットカートのスコープは、別に指定することができる。データセットカートのスコープを設定するために、GUI 300などのインタフェースにおいて、別個のメカニズムを提供することができる。例えば、ユーザインタフェース要素304は、データセットを編集する権限を有するユーザによって選択されると、特定のユーザ、グループ、役割などを識別するなどのスコープをユーザが入力することができる別の表示画面をレンダリングし得る。
【0145】
それに加えて又はその代替として、他のパラメータを使用して、データセットカートのスコープを定義することができる。例えば、スコープを定義するため、時間パラメータ(例えば、時刻、曜日、月)を使用することができる。そのようなシナリオでは、データ処理システムは、データセットを検索するユーザに提示するためのデータセット及び/又はデータセットカートの選択を、検索を開始した時点で使用が承認されているそれらのデータセット又はデータセットカートにのみ限定することによって、スコープの時間パラメータを実装することができる。
【0146】
データセットカート302は、GUI 300を介して更新することができる。例えば、グラフィカルユーザ要素320の選択により、編集許可を得ているユーザは、データセットカート302へのデータセットの追加又はデータセットカート302からのデータセットの削除を行うことができる。
【0147】
いくつかの例では、ユーザ(
図1Aのユーザ111aなど)は、データセットカートの定義又は作成を行うために、インタフェース200、300を介して、データセット又はデータセットカートについての情報の閲覧及び/又は変更を要求することができる。
【0148】
図8Aは、新しいデータセットカートを作成することができる状態のGUI 400を示す。例えば、データセットについての情報が表示されているユーザインタフェースを閲覧している間、ユーザ(
図1Aのユーザ111aなど)は、データセットカートを作成することを指定することができる。この例では、ユーザは、「loyalty.dat」データセットについての情報を閲覧しており、次いで、「loyalty.dat」データセットを含む新しいデータセットカートを作成することを希望し得る。ユーザは、グラフィカルユーザ要素402を選択して、新しいデータセットカートを作成することができる。グラフィカルユーザ要素402の選択により、システムは、ポップアップダイアログボックス404を生成し得、ポップアップダイアログボックス404では、ユーザは、カートに名前を付け(例えば、「過去最高のカート」)、作成しているエンティティのタイプを示し(例えば、データセットカート)、データセットカートの記述を提供することができる。
【0149】
グラフィカルユーザ要素406の選択により、システムは、「loyalty.dat」データセットを含む新しいデータセットカートを生成し得る。システムは、新しく作成されたデータセットカートの表現を格納することができる。例えば、データセットカートを表すために、リポジトリ120(
図1C)にエントリを追加することができる。いくつかの例では、データセットカートの特性のいくつか又はすべてには、最初は、デフォルト値が割り当てられ得る。例えば、データセットカートには、最初は、それを作成したユーザのペルソナに基づくスコープが割り当てられ得る。これは、例えば、最初は、その作成者のみがデータセットカートを閲覧できるように、スコープを設定することによって達成することができる。特性の初期の値が最初にどのように割り当てられるかにかかわらず、1人又は複数のユーザは、その後、それらを変更することができる。データセットカートの記録が作成された時点で、
図6又は7に示されるようなユーザインタフェースを通じてなど、それを編集することができる。
【0150】
或いは、データセットカートは、作成された時点で、他の方法で更新することができる。例えば、データセットを保持するための新しいデータセットカートを作成するというよりむしろ、ユーザは、既存のデータセットカートにデータセットを追加することを希望し得る。
図8Bは、ユーザ(
図1Aのユーザ111aなど)が既存のデータセットカートに「loyalty.dat」データセットを追加することを選ぶことができるGUI 400の部分450を示す。例えば、ドロップダウンメニュー455は、ユーザによって選択されると、データ処理システムにおいて定義されている既存のデータセットカートのリストを提示する、ユーザインタフェース要素である。データセットカートがスコープを有する実施形態では、リストは、その時点におけるユーザを含むスコープを有するデータセットカートに限定され得る。リストから特定のデータセットカートを選択することにより、選択したデータセットカートにデータセットを追加することができる。システムは、選択されたデータセットカートの格納された表現を相応に更新することができる。
【0151】
図12は、データセットカートの格納された表現を保持する(すなわち、データセットカートに関する情報を格納する)例示的なデータ構造を示す。各データセットカートに対して、様々な情報片を格納することができる。リポジトリ120(
図1C)は、例えば、各データセットカートに対するそのようなデータ構造を有し得る。
図12に示されるように、データセットカートに対するデータ構造1202は、データセットカートの名前フィールド1222、データセットカートに含まれるデータセットのリストの識別子1224及びデータセットカートと関連付けられた1つ又は複数のパラメータ1226などの情報を含む、複数のフィールドを含み得る。ここでは、パラメータ1226は、データセットカートについて説明するテキスト、データセットカートと関係して本明細書で説明されるか又は別の方法で使用される1つ又は複数のタグの値又は他のタイプの情報など、格納することができる他の情報を示す。データセットのグループ化が階層的であり得る実施形態では、リスト1224は、他のデータセットの代わりに又はそれに加えて、さらなるデータセットグループを含み得る。
【0152】
また、データセットカートについての情報と共に、アクセス情報1240も格納することができる。このアクセス情報は、データセットカートについての格納された情報にアクセスする特権を有するユーザを示し得る。この情報は、データセットカートの所有者1228、データセットカートについての情報を読み取る権限を有するユーザのリスト1230、又は、データセットカートについての情報を修正する権限を有するユーザのリスト1232を含み得る。この認可情報のいくつか又はすべては、データセットカートのスコープを確立するために、データ処理システムの他のコンポーネントによって処理することができる。その代替として又はそれに加えて、スコープを確立するために、他の情報を含めることができる。例えば、リスト1234は、データセットカートのスコープの範囲内のグループを定義することができる。リスト1236は、データセットカートにアクセスする権限を有するユーザの役割を定義することができる。
【0153】
データ処理システムは、データセット及び/又はデータセットグループが示される複数のユーザインタフェースを提供することができる。これらのインタフェースの各々は、新しいデータセットグループを作成するか又はデータセットグループにデータセットを追加することによってなど、ユーザがデータセットグループを管理できるように構成することができる。これらのインタフェースのユーザ操作により、データ処理システムにおいて利用可能なデータセットグループの集合体を変更することができ、それは、1202などのデータ構造の追加、削除又は変更によってなど、実施することができる。
【0154】
図9は、ユーザ(
図1Aのユーザ111aなど)がデータセットカートに含めるためのデータセットを指定できるようにするためのGUI 500を示す。GUI 500は、データセットと関連付けられたリネージュ情報を表示する。データ処理システムは、データセットグループの管理に関連する必要のない複数の理由のうちの何れかの理由で、そのような情報を提示することができる。例えば、技術リネージュの表示により、ユーザは、データセットのデータにおいて識別されたエラーの考えられる発生源を探索することができる。ビジネスリネージュの表示により、ユーザは、データセットの変更による影響を受ける可能性のある企業内のグループを識別することができる。リネージュ情報が表示される理由に関係なく、そのような情報を閲覧するユーザは、データセットグループ管理を可能にするユーザインタフェース要素をリネージュユーザインタフェースと統合することによって効率的な動作が容易になるように、1つ又は複数のデータセットグループを管理する必要性を確認することができる。
【0155】
例えば、GUI 500は、「loyalty.dat」データセットに対するリネージュ情報502を表示するように示されている。表示されるリネージュ情報におけるデータセットを表す1つ又は複数のコンポーネントの選択及び操作を行い、それらのコンポーネントによって表される、データセットカートに含めるためのデータセットを指定することができる。この例では、コンポーネント510の選択により、ウインドウ512が表示され、それを通じて、ユーザは、グラフィカルユーザインタフェース要素514を選択することができ、グラフィカルユーザインタフェース要素514は、呼び出されると、データセット「フィルタリング済みのロイヤルティ」を既存のデータセットカートに追加するか(
図8Bに示されるように)又は新しく作成されたデータセットカートに追加する(
図8Aに示されるように)。
【0156】
データセットカートに含めるためのデータセットは、ユーザ(
図1Aのユーザ111aなど)によって、検索GUI(
図10A~10Cに示されるGUI 600など)を介して選択することができる。データ処理システムは、検索基準の豊富な組み合わせを含むデータセット検索インタフェースを含み得る。そのユーザインタフェースは、新しいデータセットカートを作成するという要求に応答して提示することができるか、又は、そのような検索を通じて1つ又は複数のデータセットを識別した後、ユーザは、検索結果において返された特定のデータセットを、データセットカートを管理する際に使用するように指定することができる。
【0157】
検索インタフェースを通じて、システムは、データ処理システム104でデータアクセスに関連する動作を実行する際に使用するために利用可能なデータセットを識別することができる。いくつかの実装形態では、検索GUI 600は、ユーザが検索クエリを入力するためのグラフィカルユーザインタフェース要素602、604、606、608を含み得る。ユーザインタフェース要素602は、例えば、入力したテキストを含む名前、フィールド及び/又は他の関連するメタデータを有するデータセットに検索結果が限定されるテキストフィールドであり得る。
【0158】
ユーザは、ファセット化クエリを定義するために、他のユーザインタフェース要素を通じて、他の入力を行うことができる。そのようなクエリでは、ユーザは、データ処理システムにおいて定義されるデータセットについて説明するファセットの1つ又は複数の値を指定することができる。ユーザインタフェース要素は、データ処理システムにおいて定義されるデータセットと関連付けられたメタデータに格納された値をユーザが示せるようにするための各ファセットに対して提供することができる。値の範囲は、検索インタフェースにおいて既に指定されている基準を満たしているデータセットに対する値に限定され得る。ユーザインタフェース要素604、606及び608は、ユーザがファセットの値を指定できるようにするためのユーザインタフェース要素の例である。例えば、1つ又は複数のファセットは、データセットのプロパティ(タイプ、所有者、階層、物理データセットにアクセスするための情報を論理データセットと関連付けるカタログにデータセットが登録されているかどうかなど)及び/又は他のプロパティに対応し得る。
【0159】
その代替として又はそれに加えて、検索クエリを定義するために、そのようなユーザインタフェースを通じて、他の情報を入力することができる。
【0160】
データ処理システムは、クエリに基づいて検索を実行し、クエリに基づいてデータ処理システムによって選択されたデータセットのリスト610を含む検索結果を生成することができる。ファセット化クエリは、1つ又は複数のファセットを含み得、そのファセットに基づいて、検索結果をフィルタリングすることができる。示される例では、GUI 600に提示されるデータセットのリスト610は、名前に、フィールド名に又はデータセットの記述に「ロイヤルティ」を含むすべてのデータセットを含む。追加のファセットは、検索結果をさらにフィルタリングするために指定されているように示されている。ファセットの選択により、ファセットに従って検索結果をフィルタリングすることができる。
【0161】
例えば、物理データセットにアクセスするための情報を論理データセットと関連付けるカタログにデータセットが登録されているかどうかを示すファセット606が選択された場合は、検索結果は、
図10Bの例で示されるように、カタログに登録されたデータセットのみがGUIにおいてユーザに提示されるようにフィルタリングされる。
図10Bに示されるように、GUI 600は、いくつかのアイテム(リスト610からのアイテム620、625など)を含まないデータセットの更新されたリスト615を提示する。
【0162】
次いで、ユーザは、データセットカートに含めるための提示されたデータセットの1つ又は複数を選択することができる。データセットカートは、選択されたデータセットに基づいて作成することができる。例えば、
図10Cに示されるように、ユーザは、データセットのリスト615から、データセットカートに含めるためのデータセット「loyalty.dat」を選択することができる。この例では、データセットカートに含めることを示す入力は、複数のステップにおいて行うことができる。リスト615のデータセット名は、例えば、ユーザインタフェース要素630を形成し得る。ユーザインタフェース要素630の選択により、要素630と関連付けられたデータセットについての情報を有するウインドウ632が開き得る。ウインドウ632は、さらなる「カートに追加する」というユーザインタフェース要素を含み得、それを選択することにより、さらなるユーザインタフェース要素を含むウインドウ634が開き得る。ウインドウ634のユーザインタフェース要素により、ユーザは、選択されたデータセットが追加される、既存のデータセットカートを指定するか(
図8Bと関係して説明される選択と同様に)又は新しいデータセットカートを作成することができる(
図8Aと関係して説明されるプロセスと同様に)。
【0163】
データセットが論理データセットである場合は、データ処理システムは、論理データセットに対応する物理データセットを識別し、物理データセットに関する情報をデータセットカートに含めることができる。
【0164】
作成されたデータセットカートは、プログラムにおいて使用するために利用可能であり得る。いくつかの例では、プログラムは、データ処理システムによって実行されるアプリケーションであり得る。他の例では、プログラムは、データ処理システムのユーティリティ(データ品質分析を実行するように構成されたデータ分析ユーティリティなど)であり得る。
【0165】
図11は、ユーザ(
図1Aのユーザ111aなど)がここでは技術グループとして識別されているデータセットのグループに関連する情報の閲覧又は変更を行えるようにするための、データ処理システムによってレンダリングされる、例示的なグラフィカルユーザインタフェース700の図示である。データセットのグループ化が階層的であるシステムでは、最上位グループ化は、下位グループ化で使用されるものとは異なる名前によって識別することができる。最上位グループ化は、例えば、データセットカートと呼ぶことができる。下位グループ化は、技術グループなど、異なる名前を有し得る。例えば、
図11は、「報酬」ディレクトリ702が「消費傾向」、「tpc顧客」、「tpc_date_dim」及び「ウェブ販売」という名前の付いた技術グループ704のメンバーであることを示している。データセットカートを管理するための本明細書で説明される動作のいくつか又はすべては、技術グループ化を管理するために実行することができる。この二分法により、技術グループをデータセットカートに含めることはできるが、その逆は不可能である。しかし、階層システムがそのような制限を有する必要はない。
【0166】
論理データセットのグループをサポートするデータ処理システムの代表的な動作方法
図13は、多数のデータセットを用いて動作可能なデータ処理システムを動作させるための例示的なプロセス1300のフローチャートである。プロセス1300は、
図1Cを参照して説明されるデータ処理システム104によって実行することができる。その代替として又はそれに加えて、プロセス1300は、他の実施形態と関係して本明細書の他の場所で説明される行為を含む、他の行為を含み得る。
【0167】
行為1302では、プロセス1300は、データ処理システム104でデータアクセスに関連する動作を実行する際に使用するために利用可能なデータセットを識別することができる。例えば、データセットは、
図10Aに示されるように、GUI 600を介して指定される検索クエリに基づいて検索を実行することによって識別することができる。
【0168】
プロセス1300は、行為1304に進むことができ、その間、識別されたデータセットをユーザインタフェース(
図10BのGUI 600など)に提示することができる。例えば、
図10Bは、キーワード「ロイヤルティ」を含む検索クエリの実行に応答して生成された検索結果のいくつか、及び、物理データセットにアクセスするための情報を論理データセットと関連付けるカタログにデータセットが登録されているかどうかを示すファセットを描写する。
【0169】
プロセス1300は、行為1306に進むことができ、その間、識別されたデータセットからの1つ又は複数のデータセットの選択を受信することができる。ユーザは、グループ(データセットカートなど)に含めるための識別されたデータセットの1つ又は複数を選択することができる。例えば、
図10Cに示されるように、ユーザは、識別されたデータセットから、データセットカートに含めるためのデータセット「loyalty.dat」を選択することができる。データセットは、新しいデータセットカート又は既存のデータセットカートに含めるために選択することができる。
【0170】
プロセス1300は、行為1308に進むことができ、その間、選択された1つ又は複数のデータセットを含むグループの表現の生成及び格納を行うことができる。そのような表現は、
図12で描写されており、グループの名前、グループに含まれるデータセットに関する情報、グループのデータセットと関連付けられたパラメータ、グループの所有者及び/又はグループと関連付けられたスコープ情報など、様々な情報片を含む。
【0171】
プロセス1300は、行為1310に進むことができ、その間、データセットのさらなる識別を実行するかどうかに関する決定を行うことができる。例えば、ユーザは、検索クエリのための追加の又は異なるファセットを指定することができる。それに応答して、例えば、行為1302において、データセットの異なるセットを識別することができる。データセットは、データセットの異なるセットから選択することができ、その結果、グループの新しい表現又はグループの既存の表現の更新が生成される。
【0172】
図14は、データセットにアクセスする動作を実行するように構成されたデータ処理システムを動作させるための例示的なプロセス1400のフローチャートである。プロセス1400は、
図1Cを参照して説明されるデータ処理システム104によって実行することができる。その代替として又はそれに加えて、プロセス1400は、他の実施形態と関係して本明細書の他の場所で説明される行為を含む、他の行為を含み得る。
【0173】
行為1402では、プロセス1400は、データ処理システムでデータアクセスに関連する動作と併せて使用するための1つ又は複数のデータセット又はデータセットカートをユーザが選択するように構成されたユーザインタフェースを提示することができる。そのようなユーザインタフェースの例は、
図2B及び2Eに示されている。
【0174】
プロセス1400は、行為1404に進むことができ、その間、データ処理システムのユーザ(例えば、データセットの検索を要求するユーザ)と関連付けられたペルソナを識別し、データセット及び/又はデータセットのグループ(例えば、データセットカート)と関連付けられたスコープ情報を識別することができる。データセット及び/又はデータセットのグループと関連付けられたスコープ情報は、データ処理システムのユーザのペルソナ及び/又は他のパラメータに基づいて定義することができる。
【0175】
プロセスは、行為1406に進むことができ、その間、ユーザのペルソナとデータセットの自動的に識別されたグループと関連付けられたスコープ情報との対応性に少なくとも部分的に基づいて、データセットの1つ又は複数のグループを自動的に識別することができる。例えば、
図2B及び2Eは、データセットの検索を要求するユーザの個人の特性(例えば、許可)をチェックすることによって生成することができるデータセット及び/又はデータセットカートのリスト815、895を描写しており、結果セットは、そのユーザの個人の特性を包含するスコープを有するデータセットカート及び/又はデータセットのみに限定され得る。
【0176】
プロセスは、行為1408に進むことができ、その間、ユーザインタフェースを介して、データセットの自動的に識別されたグループのインジケーションをレンダリングすることができる。例えば、ユーザが
図2Eの特定のデータセットカートを選択すると、選択したデータセットカートのインジケーションがユーザインタフェースの第2の部分860にレンダリングされ得る。
【0177】
図15は、データセットにアクセスするためのプログラムを実行するように構成されたデータ処理システムを動作させるための例示的なプロセス1500のフローチャートである。プロセス1500は、
図1Cを参照して説明されるデータ処理システム104によって実行することができる。その代替として又はそれに加えて、プロセス1500は、他の実施形態と関係して本明細書の他の場所で説明される行為を含む、他の行為を含み得る。
【0178】
行為1502では、プロセス1500は、ユーザインタフェースを介して、データ処理システムでデータアクセスに関連する動作と併せて使用するためのデータセットの検索クエリを受信することができる。そのようなユーザインタフェースの例は、
図4Aに示されている。
【0179】
プロセス1500は、行為1504に進むことができ、その間、検索結果を生成するために、検索クエリに基づいて、検索を実行することができる。検索結果は、ユーザインタフェースに提示することができ、1つ又は複数のデータセットカートを含み得る。データセットカートの少なくともいくつかの各々は、検索されたデータセットの1つ又は複数を含み得る。ユーザインタフェースに提示されたデータセット及び/又はデータセットカートは、データセットの検索を要求するユーザの個人の特性(例えば、許可)をチェックすることによって識別することができ、結果セットは、そのユーザの個人の特性を包含するスコープを有するデータセットカート及び/又はデータセットのみに限定され得る。
【0180】
プロセス1500は、行為1506に進むことができ、その間、ユーザインタフェースにおいてデータセットカートが選択され次第、データセットカートに含まれる各データセットにおいて動作を実行することができる。ユーザインタフェースは、動作のターゲットとしてデータセットカートを選択するためのオプションを提供することができる。
【0181】
さらなる実装形態の詳細
図16は、本明細書に記載の技術が実装され得る適切なコンピューティングシステム環境1600の一例を示す。コンピューティングシステム環境1600は、適切なコンピューティング環境の一例に過ぎず、本明細書に記載される技術の使用範囲又は機能性に関する制限を示唆することを意図するものではない。コンピューティング環境900は、例示的な動作環境900に例示されるコンポーネントの何れか1つ又は組み合わせに関連する依存関係又は要件を有すると解釈されるべきではない。
【0182】
本明細書に記載する技術は、多数の他の汎用又は専用コンピューティングシステムの環境又は構成と共に使用可能である。本明細書に記載する技術と共に使用するのに適し得る周知のコンピューティングシステム、環境、及び/又は構成の例には、限定されることはないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルド又はラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラマブル大衆消費電子製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記のシステム又はデバイスの何れかを包含する分散コンピューティング環境などが包含される。
【0183】
コンピューティング環境は、プログラムモジュールなどのコンピュータ実行可能命令を実行することができる。一般に、プログラムモジュールには、特定のタスクを行う、又は特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが包含される。本明細書に記載する技術は、通信ネットワークを通してリンクされるリモート処理デバイスによってタスクが行われる分散コンピューティング環境において実行されてもよい。分散コンピューティング環境では、プログラムモジュールは、メモリストレージデバイスを包含するローカル及びリモートコンピュータストレージ媒体の両方に位置していてもよい。
【0184】
図16を参照して、本明細書に記載する技術を実施する例示的システムは、コンピュータ1610の形態の汎用コンピューティングデバイスを包含する。コンピュータ1610のコンポーネントは、限定されないが、処理装置1620、システムメモリ1630、及びシステムメモリを包含する様々なシステムコンポーネントを処理装置1620に結合するシステムバス1621を包含してもよい。システムバス1621は、様々なバスアーキテクチャの何れかを使用した、メモリバス又はメモリコントローラ、周辺バス、及びローカルバスを包含する幾つかのタイプのバス構造の何れかであってもよい。例として、及び限定ではなく、このようなアーキテクチャには、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオ電子装置規格化協会(Video Electronics Standards Association)(VESA)ローカルバス、及びメザニンバスとしても知られるペリフェラルコンポーネントインターコネクト(PCI)バスが包含される。
【0185】
コンピュータ1610は、一般的に、様々なコンピュータ可読媒体を包含する。コンピュータ可読媒体は、コンピュータ1610によってアクセスすることができる任意の入手可能な媒体でよく、及び揮発性及び不揮発性両方の媒体、リムーバブル及び非リムーバブル媒体を包含する。例として、及び限定ではなく、コンピュータ可読媒体は、コンピュータストレージ媒体及び通信媒体を含んでもよい。コンピュータストレージ媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータなどの情報のストレージのための任意の方法又は技術で実施される、揮発性及び不揮発性、リムーバブル及び非リムーバブル媒体を包含する。コンピュータストレージ媒体には、限定されないが、RAM、ROM、EEPROM、フラッシュメモリ又は他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)又は他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又は他の磁気ストレージデバイス、又は所望の情報を保存するために使用することができ、且つコンピュータ1610によってアクセスすることができるその他の媒体が包含される。通信媒体は、一般的に、コンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータを搬送波又は他のトランスポート機構などの変調データ信号で具現化し、及びあらゆる情報配信媒体を包含する。「変調データ信号」という用語は、それの特性集合の1つ又は複数を有する、又は信号の情報をエンコードするように変更された信号を意味する。例として、及び限定ではなく、通信媒体には、有線ネットワーク又は直接有線接続などの有線媒体、及び音響、RF、赤外線、及び他の無線媒体などの無線媒体が包含される。上記の何れかの組み合わせも、コンピュータ可読媒体の範囲内に包含されるものとする。
【0186】
システムメモリ1630は、読み出し専用メモリ(ROM)1631及びランダムアクセスメモリ(RAM)1632などの揮発性及び/又は不揮発性メモリの形態のコンピュータストレージ媒体を包含する。起動時などに、コンピュータ1610内の素子間で情報を転送することを助ける基本ルーチンを含有した、基本入出力システム1633(BIOS)は、一般的に、ROM1631内に保存される。RAM1632は、一般的に、即座に利用できる、及び/又は処理装置1620によって現在操作されているデータ及び/又はプログラムモジュールを含有する。例として、及び限定ではなく、
図16は、オペレーティングシステム1634、アプリケーションプログラム1635、他のプログラムモジュール1636、及びプログラムデータ16
37を図示する。
【0187】
コンピュータ1610は、他のリムーバブル/非リムーバブル、揮発性/不揮発性コンピュータストレージ媒体も包含することができる。単なる例として、
図16は、非リムーバブル、不揮発性磁気媒体に対する読み取り又は書き込みを行うハードディスクドライブ1641、フラッシュメモリなどのリムーバブル、不揮発性メモリ1652に対する読み取り又は書き込みを行うフラッシュドライブ1651、及びCD-ROM又は他の光学媒体などのリムーバブル、不揮発性光ディスク1656に対する読み取り又は書き込みを行う光ディスクドライブ1655を図示する。例示的動作環境において使用することができる他のリムーバブル/非リムーバブル、揮発性/不揮発性コンピュータストレージ媒体には、限定されないが、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、固体RAM、固体ROMなどが包含される。ハードディスクドライブ1641は、一般的に、インタフェース1640などの非リムーバブルメモリインタフェースを通してシステムバス1621に接続され、及び磁気ディスクドライブ1651及び光ディスクドライブ1655は、一般的に、インタフェース1650などのリムーバブルメモリインタフェースによってシステムバス1621に接続される。
【0188】
上述した、及び
図16に図示したドライブ及びそれらに関連付けられたコンピュータストレージ媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、及びコンピュータ1610の他のデータのストレージを提供する。
図16においては、例えば、ハードディスクドライブ1641は、オペレーティングシステム1644、アプリケーションプログラム1645、他のプログラムモジュール1646、及びプログラムデータ1647を保存するものとして図示される。これらのコンポーネントは、オペレーティングシステム1634、アプリケーションプログラム1635、他のプログラムモジュール1636、及びプログラムデータ1637と同じであってもよいし、或いは異なっていてもよいことに留意されたい。オペレーティングシステム1644、アプリケーションプログラム1645、他のプログラムモジュール1646、及びプログラムデータ1647は、少なくとも、それらが異なるコピーであることを図示するために、ここでは、異なる番号が付与されている。アクターは、キーボード1662及び一般にマウス、トラックボール、又はタッチパッドと呼ばれるポインティングデバイス1661などの入力デバイスによって、コンピュータ1610にコマンド及び情報を入力することができる。他の入力デバイス(不図示)には、マイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナなどが包含され得る。これら及び他の入力デバイスは、システムバスに結合されたユーザ入力インタフェース1660によって、処理装置1620に接続されることが多いが、パラレルポート、ゲームポート、又はユニバーサルシリアルバス(USB)などの他のインタフェース及びバス構造によって接続されてもよい。モニタ1691又は他のタイプのディスプレイデバイスも、ビデオインタフェース1690などのインタフェースを介して、システムバス1621に接続される。モニタに加えて、コンピュータは、出力周辺インタフェース1695を通して接続することができる、スピーカ1697及びプリンタ1696などの他の周辺出力デバイスも包含することができる。
【0189】
コンピュータ1610は、リモートコンピュータ1680などの1つ又は複数のリモートコンピュータへの論理接続を用いたネットワーク化環境で動作することができる。リモートコンピュータ1680は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、又は他の共通ネットワークノードでもよく、及び一般的に、
図16ではメモリストレージデバイス1681のみが図示されているが、コンピュータ1610に関連して上記した素子の多く又はすべてを包含する。
図16に描かれる論理接続は、ローカルエリアネットワーク(LAN)1671及び広域ネットワーク(WAN)1673を包含するが、他のネットワークも包含してもよい。このようなネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、及びインターネットにおいて、ありふれたものである。
【0190】
LANネットワーキング環境で使用される場合、コンピュータ1610は、ネットワークインタフェース又はアダプタ1670を通してLAN1671に接続される。WANネットワーキング環境で使用される場合、コンピュータ1610は、一般的に、モデム1672、又はインターネットなどのWAN1673上で通信を確立するための他の手段を包含する。内部又は外部のものでもよいモデム1672は、アクター入力インタフェース1660又は他の適宜の機構を介して、システムバス1621に接続されてもよい。ネットワーク化環境において、コンピュータ1610に関連して描かれたプログラムモジュール、又はそれらの一部は、リモートメモリストレージデバイスに保存されてもよい。例として、及び限定ではなく、
図16は、メモリデバイス1681に常駐しているとして、リモートアプリケーションプログラム1685を図示する。示されるネットワーク接続は、例示的なものであり、及びコンピュータ間で通信リンクを確立する他の手段が使用されてもよいことが理解されるだろう。
【0191】
本明細書で説明する技法は、特定の実装態様に限定されないため、多数の方法の何れかで実装され得る。実装形態の詳細の例は、本明細書において、単なる例示目的で提供されるものである。さらに、本明細書に記載される技術の態様は、特定の技法又は技法の組み合わせの使用に限定されないので、本明細書に開示される技法は、個々に、又は任意の適切な組み合わせで使用されてもよい。
【0192】
このように、本明細書に記載された技術のいくつかの態様について説明してきたが、様々な変更、修正、及び改良が可能であることを理解されたい。
【0193】
例えば、データセットグループが複数のデータセットを含む例が提供された。本明細書で説明されるようなデータ処理システムは、いくつかのシナリオでは、単一のデータセットを有するグループをサポートするために実装すること、及び/又は、他のシナリオでは、データセットのないヌルグループをサポートするために実装することができる。
【0194】
別の例として、ユーザが選択を行うことができる結果セットにデータセットグループが含まれる例が提供されている。ユーザは、データセットグループを選択することができ、それに続いて、さらなる選択のためにデータセットグループのコンテンツがユーザに提示され得る。そのデータセットグループ内に含まれるデータセットをユーザが選択するシナリオが説明されている。いくつかのシナリオでは、データセットグループは、他のデータセットグループを含み得る。グループ内に含まれるデータセットグループを選択することにより、選択したデータセットグループのコンテンツがユーザに提示され、そのデータセットグループのコンテンツの中から選択するというプロセスが繰り返され得る。そのような再帰的なプロセスは、いくつものレベルにわたって再帰的に繰り返され得る。
【0195】
さらに、データセット選択ツールが、所望のデータセットが提示される画面にユーザが到達するまで、ユーザインタフェースの1つ又は複数の画面を段階的に進めることによって、単一のデータセットのみを指定するためのユーザ入力を受信する例が提供されている。本明細書で説明されるようなデータ処理システムの変形形態では、ユーザは、ユーザインタフェース画面を通じてナビゲートし、複数のデータセットを選択することができ、選択ツールは、複数のデータセットが指定される動作において使用される。
【0196】
さらに、データセットカートは、ユーザのペルソナに基づくスコープを有するものとして説明されている。使用時に評価することができる他の特性は、スコープを定義するために使用され得る。スコープに対しては、例えば、時間を使用することができる。例えば、曜日に基づいてデータセットグループをスコーピングすることにより、特定の曜日に更新された、それらが最新のものである日の検索において返された、データセットにアクセスすることができる。
【0197】
さらなる別の例として、スコープは、数を制限し、検索クエリに応答して返されるデータセットグループの関連性を強化するものとして説明された。いくつかの実施形態では、検索クエリに応答して返されるデータセットが検索の時点におけるスコープに基づいて制限されるように、スコープは、データセットに個別に付け加えることができる。
【0198】
さらなる別の例として、データセットグループは、スコープを有するものとして説明されている。スコープは、データセットグループと関連付けられたスコープ情報を格納してアクセスすることによって実施することができる。データ処理システムでは、コンポーネントにスコープを与えることができる(必ずしもデータセットグループに限定されるとは限らない)。例えば、特定のツールをスコーピングし、それらの使用をスコープの範囲内のペルソナを有するユーザに限定することができる。そのような実施形態では、データセットグループのスコープ情報は、他のコンポーネントのスコープ情報と同じ方法で設定及び使用することができる。
【0199】
さらなる別の変形形態として、データセットの検索の結果は、それら自体が検索クエリと一致するデータセットカートに又は検索基準と一致するデータセットを含むデータセットカートに限定することができる。いくつかの実施形態では、検索結果は、基準と一致するデータセットを含むデータセットカート、及び、検索基準と一致し且つどのデータセットカートにも割り当てられていないデータセットを含み得る。個々のデータセットを提示することができるが、検索結果は、データセットカート又は他のグループ化の中に組み入れられたデータセットが個別に示されないように、データセットを階層的に提示することによって制限され得る。
【0200】
さらに、ユーザ入力がソースタイプを指定した例が提供され、それにより、選択が単一のデータセットであるべきであるというコンテキストと、データセットのグループであるべきであるというコンテキストとを区別することができる。このコンテキストは、自動的になど、他の方法で決定することができる。コンテキストが自動的に決定される場合は、それは、選択された1つ又は複数のデータセットにおいて実行される予定の動作のコンピュータ化された分析に基づき得る。
【0201】
開示される実施形態の考えられる変形形態のさらなる例として、論理データセットへのアクセスを指定するアプリケーションをユーザが書き込むことが説明されている。いくつかの実施形態では、ユーザは、人間のユーザであり得る。他の実施形態では、ユーザは、人工知能(AI)を備えたプログラムであり得る。例えば、AIは、他のデータセットに適用することができるデータセットを処理することによって、データ処理アルゴリズムを導き出すことができる。
【0202】
このような変更、修正、及び改良は、本開示の一部であることが意図され、及び本開示の精神及び範囲内であることが意図される。さらに、本明細書に記載の技術の利点が示されるが、本明細書に記載の技術のすべての実施形態が、すべての記載した利点を包含するわけではないことが理解されるものとする。幾つかの実施形態は、本明細書において有利であると記載された何れの特徴も実施しない場合があり、場合によっては、記載された特徴の1つ又は複数が、さらなる実施形態を得るために実施されてもよい。従って、上記の記載及び図面は、単なる例である。
【0203】
本明細書に記載の技術の上記態様は、多数のやり方の何れで実施されてもよい。例えば、これらの態様は、ハードウェア、ソフトウェア、又はそれらの組み合わせを用いて実施されてもよい。ソフトウェアで実施される場合には、ソフトウェアコードは、単一のコンピュータにおいて提供されていようと、複数のコンピュータ間で分散されていようと、任意の適宜のプロセッサ又は一群のプロセッサ上で実行することができる。このようなプロセッサは、集積回路として実施されてもよく、業界において、CPUチップ、GPUチップ、マイクロプロセッサ、マイクロコントローラ、又はコプロセッサなどの名称で知られている市販の集積回路コンポーネントを包含する集積回路コンポーネントにおいて、1つ又は複数のプロセッサを有する。代替的に、プロセッサは、ASICなどのカスタム回路、又はプログラマブル論理デバイスの構成に起因するセミカスタム回路において実施されてもよい。またさらなる代替手段として、プロセッサは、市販、セミカスタム、或いはカスタムであろうと、より大きな回路又は半導体デバイスの一部であってもよい。ある具体例として、幾つかの市販のマイクロプロセッサは、複数のコアの1つ又はサブセットがプロセッサを構成することができるように、複数のコアを有する。しかし、プロセッサは、任意の適宜のフォーマットの回路を使用して実施することができる。
【0204】
さらに、コンピュータは、ラックマウント式コンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、又はタブレットコンピュータなどの多数の形態の何れかで具現化されてもよいことが理解されるものとする。追加的に、コンピュータは、携帯情報端末(PDA)、スマートフォン、又は任意のその他の適宜のポータブル又は固定電子デバイスを包含する、一般にコンピュータとは見なされないが、適宜の処理能力を備えたデバイスに組み込まれてもよい。
【0205】
また、コンピュータは、1つ又は複数の入力デバイス及び出力デバイスを有していてもよい。これらのデバイスは、特に、ユーザインタフェースを提示するために使用することができる。ユーザインタフェースを提供するために使用することができる出力デバイスの例には、出力の視覚的表現のためのプリンタ又はディスプレイスクリーン、及び出力の可聴表現のためのスピーカ又は他の音生成デバイスが包含される。ユーザインタフェースに使用することができる入力デバイスの例には、キーボード、並びにマウス、タッチパッド、及びデジタイザタブレットなどのポインティングデバイスが包含される。別の例として、コンピュータは、音声認識により、又は他の可聴フォーマットで入力情報を受信してもよい。
【0206】
このようなコンピュータは、企業ネットワーク又はインターネットなどのローカルエリアネットワーク又は広域ネットワークとして包含する、任意の適宜の形態の1つ又は複数のネットワークによって相互接続することができる。このようなネットワークは、任意の適宜の技術に基づいてもよく、及び任意の適宜のプロトコルに従って動作してもよく、及び無線ネットワーク、有線ネットワーク、又は光ファイバネットワークを包含してもよい。
【0207】
また、本明細書に概要が述べられる様々な方法又はプロセスは、様々なオペレーティングシステム又はプラットフォームの何れか1つを用いる1つ又は複数のプロセッサに対して実行可能なソフトウェアとして符号化されてもよい。追加的に、このようなソフトウェアは、多数の適宜のプログラミング言語及び/又はプログラミング又はスクリプト作成ツールの何れかを使用して書かれてもよく、及びフレームワーク又は仮想マシンに対して実行される実行可能マシン語コード又は中間コードとしてコンパイルされてもよい。
【0208】
この点において、本明細書に記載の技術の態様は、1つ又は複数のコンピュータ又は他のプロセッサに対して実行されると、上述の様々な実施形態を実施する方法を行う1つ又は複数のプログラムでエンコードされたコンピュータ可読ストレージ媒体(又は複数のコンピュータ可読媒体)(例えば、コンピュータメモリ、1つ又は複数のフロッピーディスク、コンパクトディスク(CD)、光ディスク、デジタルビデオディスク(DVD)、磁気テープ、フラッシュメモリ、フィールドプログラマブルゲートアレイ又は他の半導体デバイスにおける回路構成、又は他の有形コンピュータストレージ媒体)として具現化されてもよい。上記の例から明らかなように、コンピュータ可読ストレージ媒体は、非一時的な形態でコンピュータ実行可能命令を提供するのに十分な時間の間、情報を保持することができる。このような1つ又は複数のコンピュータ可読ストレージ媒体は、それ(ら)に保存された1つ又は複数のプログラムを、上述の技術の様々な態様を実施するために、1つ又は複数の異なるコンピュータ又は他のプロセッサにロードすることができるように、可搬であってもよい。本明細書においては、「コンピュータ可読ストレージ媒体」という用語は、製品(すなわち、製造物)又はマシンであると見なすことができる非一時的コンピュータ可読媒体のみを網羅する。代替的又は追加的に、本明細書に記載の技術の態様は、伝搬信号などの、コンピュータ可読ストレージ媒体以外のコンピュータ可読媒体として具現化されてもよい。
【0209】
「プログラム」又は「ソフトウェア」という用語は、本明細書では、上述の技術の様々な態様を実施するようにコンピュータ又は他のプロセッサをプログラムするために使用することができる、あらゆるタイプのコンピュータコード又はコンピュータ実行可能命令のセット又はプロセッサ実行可能命令のセットを指すために総称的に使用される。追加的に、本実施形態のある態様によれば、実行されると、本明細書に記載の技術の方法を行う1つ又は複数のコンピュータプログラムは、単一のコンピュータ又はプロセッサに常駐する必要はなく、本明細書に記載の技術の様々な態様を実施するために、多数の異なるコンピュータ又はプロセッサ間で、モジュラー方式で分散されてもよいことが理解されるものとする。
【0210】
コンピュータ実行可能命令は、1つ又は複数のコンピュータ又は他のデバイスによって実行される、プログラムモジュールなどの多くの形態のものでもよい。一般に、プログラムモジュールには、特定のタスクを行う、又は特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが包含される。一般的に、プログラムモジュールの機能性は、様々な実施形態において、要望通りに組み合わせられてもよいし、或いは分散されてもよい。
【0211】
また、データ構造は、任意の適宜の形態でコンピュータ可読媒体に保存されてもよい。図示を簡単にするために、データ構造は、データ構造内の場所によって関連したフィールドを有して示される場合がある。このような関係は、同様に、フィールドのストレージにフィールド間の関係を伝達するコンピュータ可読媒体内の場所を割り当てることによって、達成することができる。但し、ポインタ、タグ、又はデータ要素間の関係を確立する他の機構の使用によることを包含する、任意の適宜の機構を使用して、データ構造のフィールドにおける情報間の関係を確立してもよい。
【0212】
本明細書に記載の技術の様々な態様は、単独で、組み合わせて、又は上記に記載した実施形態において具体的に述べられていない様々な配置で使用されてもよく、従って、その適用において、上記の説明に記載された、又は図面に図示されたコンポーネントの詳細及び配置に限定されない。例えば、ある実施形態に記載した態様は、任意の様式で、他の実施形態に記載した態様と組み合わせることができる。
【0213】
また、本明細書に記載の技術は、
図13~15の参照を含む本明細書において例が提供された方法として具現化されてもよい。何れかの方法の一部として行われるアクトは、任意の適宜のやり方で、順序付けが行われてもよい。従って、アクトが、図示されたものとは異なる順序で(これは、説明のための実施形態では、逐次的なアクトとして示されたとしても、幾つかのアクトを同時に行うことを包含してもよい)行われる実施形態が構築されてもよい。
【0214】
さらに、幾つかの行為は、「アクター」又は「ユーザ」によって行われると記載される。「アクター」又は「ユーザ」は、一人の個人である必要はなく、及び幾つかの実施形態では、「アクター」又は「ユーザ」に帰する行為は、複数の個人から成るチーム及び/又はコンピュータ支援ツール又は他の機構と組み合わせた個人によって行われてもよいことが理解されるものとする。
【0215】
クレーム要素を修飾する、クレームにおける「第1の」、「第2の」、「第3の」などの序数用語の使用は、それ自体は、1つのクレーム要素の別のクレーム要素に対する優先、先行、又は順序、又は方法のアクトが行われる時間的順序を暗示せず、ある名称を有する1つのクレーム要素を、同じ名称(序数用語の使用を除き)を有する別の要素と区別するための単なるラベルとして使用することにより、これらのクレーム要素が区別される。
【0216】
また、本明細書において使用される表現及び用語は、説明目的のものであり、及び限定として見なされるものではない。本明細書における、「包含する(including)」、「含む(comprising)」、又は「有する(having)」、「含有する(containing)」、「関与する(involving)」、及びそれらのバリエーションの使用は、その後にリストされるアイテム及びそれらの均等物、並びに追加のアイテムを網羅することを意味する。
【国際調査報告】