JP2023541584A - 自動データモデル生成 - Google Patents
自動データモデル生成 Download PDFInfo
- Publication number
- JP2023541584A JP2023541584A JP2023515380A JP2023515380A JP2023541584A JP 2023541584 A JP2023541584 A JP 2023541584A JP 2023515380 A JP2023515380 A JP 2023515380A JP 2023515380 A JP2023515380 A JP 2023515380A JP 2023541584 A JP2023541584 A JP 2023541584A
- Authority
- JP
- Japan
- Prior art keywords
- data
- data fields
- popular
- visualizations
- working
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- User Interface Of Digital Computer (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
実施形態は、データのビジュアライゼーションを管理することを対象とする。データソースからの候補データフィールドは、検索式に基づいて決定され得る。候補データフィールドは、モデルパネルに表示され得る。ワーキングデータモデルは、候補データフィールドの一部がワーキングデータモデルに含まれ得るように候補データフィールドの一部に基づいて生成され得る。ビジュアライゼーションは、ビジュアライゼーションの一部が、ワーキングデータモデルとビジュアライゼーションとに含まれ得る共有データフィールドに基づいて決定され得るように、推奨モデル及びワーキングデータモデルに基づいて決定され得る。ワーキングビジュアライゼーションは、ワーキングデータモデルに含まれるデータフィールドが、ワーキングビジュアライゼーションに関連付けられ得るように、ディスプレイパネルにリストされるビジュアライゼーション及びワーキングデータモデルに基づいて決定され得る。
Description
本発明は、一般にデータ分析に関し、より具体的には、排他的ではないが、データモデルの生成に関する。
組織は、ますます多くのデータを生成し、収集している。このデータは、消費者活動、製造活動、カスタマサービス、サーバログ等のような、組織の異なる部分に関連付けられることがある。場合によっては、組織が分析に関心を持つ可能性がある情報を表すために、様々な異なるデータソース又はデータモデルを開発することがある。また、場合によっては、アナリストに利用可能なデータの量が、アナリストの即時又はローカルのニーズを超えることがある。さらに、場合によっては、アナリストに利用可能なデータソース又はデータモデルの一部は、アナリストにとってなじみのない方法や無関係な方法で編成されることがある。同様に、場合によっては、アナリストは、以前に提供されたデータモデル又はデータソースの発見に関連する困難性のために、他のアナリストによって以前に提供されたデータ設計又はデータモデルを複製する必要があることもある。また、いくつかの実施形態では、いくつかのデータソース又はデータモデルの複雑な性質を考慮して、アナリストは、独自のデータモデルを生成するために、高度なデータ設計スキルや基礎となるデータシステムの深い知識を必要とされることがある。したがって、本発明がなされたのは、これらの考慮事項及び他に関する。
本革新の非限定的かつ非網羅的な実施形態は、以下の図面を参照して説明される。図面において、同様の参照番号は、特段の記載がない限り、様々な図全体にわたって同様の部分を指す。説明される技術革新のより良い理解のために、以下の様々な実施形態の詳細な説明を参照し、これは添付の図面に関連して読まれるべきである。
様々な実施形態が、以下に添付の図面を参照してより十分に説明されるが、図面は様々な実施形態の一部を形成し、本発明が実施され得る具体的な例示的実施形態を図示により示す。しかしながら、実施形態は、多くの異なる形態で具現化されてよく、本明細書で説明される実施形態に限定されるものとして解釈されるべきではなく、むしろ、これらの実施形態は、この開示が徹底的かつ完全であり、実施形態の範囲を当業者に完全に伝えることができるように提供されるものである。他の中でも特に、様々な実施形態は、方法、システム、媒体又はデバイスであり得る。したがって、様々な実施形態は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態又はソフトウェアとハードウェアの側面を組み合わせた実施形態の形態をとってよい。したがって、以下の詳細な説明は、限定的な意味に解釈されない。
本明細書及び特許請求の範囲の全体を通して、以下の用語は、文脈により明確に別段の指示がない限り、ここで明示的に関連付けられる意味をとる。本明細書で使用されるとき、「一実施形態において」という語句は、必ずしも同じ実施形態を指すとは限らないが、そうであることもある。さらに、本明細書で使用されるとき、「別の実施形態において」という語句は、必ずしも異なる実施形態を指すとは限らないが、そうであることもある。したがって、以下で説明されるように、本発明の範囲又は精神から逸脱することなく、様々な実施形態を容易に組み合わせることができる。
加えて、本明細書で使用されるとき、「又は」という用語は包括的な「or」演算子であり、文脈により明確に別段の指示がない限り、「及び/又は」という用語と同等である。「に基づいて」という用語は排他的ではなく、文脈により明確に別の指示がない限り、記載されていない追加的な要因に基づくことを許容にする。さらに、本明細書全体を通して、「a」、「an」及び「the」の意味は複数の参照を含む。「in」の意味は、「in」及び「on」を含む。
例示の実施形態では、以下の用語も、文脈により明確に別段の指示がない限り、本明細書において、対応する意味に従って使用される。
本明細書で使用されるとき、「エンジン」という用語は、ハードウェア又はソフトウェア命令で具現化されるロジックを指し、そのような命令を、C、C++、Objective-C、COBOL、Java(登録商標)、PHP、Perl、JavaScript、Ruby、VBScript、C#のようなMicrosoft.NET(登録商標)等のようなプログラミング言語で書くことができる。エンジンは、実行可能プログラムにコンパイルされてよく、あるいはインタプリタ型のプログラミング言語で書かれてもよい。ソフトウェアエンジンは、他のエンジンから又はそれ自体から呼び出し可能であり得る。本明細書で説明されるエンジンは、他のエンジン又はアプリケーションとマージすることができるか又はサブエンジンに分割することができる、1つ以上の論理モジュールを指す。エンジンを、非一時的なコンピュータ読取可能媒体又はコンピュータストレージデバイス内に記憶することができ、1つ以上の汎用コンピュータ上に記憶して1つ以上の汎用コンピュータによって実行することができるので、エンジンを提供するよう構成される特別な目的のコンピュータを作成することができる。
本明細書で使用されるとき、「データソース」という用語は、モデルされているか又は他の方法で分析されている基礎となる情報のソースを指す。データソースは、データベース(例えばリレーショナル、グラフベース、非sql等)、ファイルシステム、非構造化データ、ストリーム等からの情報又はそれらによって提供される情報を含み得る。データソースは典型的に、組織に関連付けられる様々なオペレーション又はアクティビティをモデル化、記録又は記念(memorialize)するように配置される。場合によっては、データソースは、効率的なストレージ、クエリ、インデックス化、データ交換、検索、更新等のような、データに焦点を当てた様々なアクションを提供又は促進するように配置される。一般に、データソースは、データの分かりやすい提示又はビジュアライゼーションを提供するのではなく、データ操作やデータ管理に関連する機能を提供するように配置され得る。
本明細書で使用されるとき、「データモデル」という用語は、基礎となるデータソースの表現を提供する1つ以上のデータ構造を指す。場合によっては、データモデルは、特定のアプリケーションのデータソースのビューを提供し得る。データモデルは、基礎となるデータソースへのビュー又はインタフェースと見なされ得る。場合によっては、データモデルは、データソースに直接マップされ得る(例えば実際には論理パススルー)。また、場合によっては、データモデルは、データソースによって提供され得る。場合によっては、データモデルは、データソースへのインタフェースと見なされ得る。データモデルは、組織が、より便利でより意味があり(例えば推理することがより容易な)、より安全であり得る方法で、データソースからの情報を編成又は提示することを可能にする。
本明細書で使用されるとき、「データモデルフィールド」という用語は、データモデルの名前付き又は名前付け可能なプロパティ又は機能を指す。データモデルフィールドは、データベーステーブルの列、グラフのノード、Javaクラス属性等に類似している。例えば従業員データベーステーブルに対応するデータモデルは、名前、電子メールアドレス、電話番号、従業員ID等のようなデータモデルフィールドを有し得る。
本明細書で使用されるとき、「データオブジェクト」という用語は、データモデルを構成する1つ以上のエンティティ又はデータ構造を指す。場合によっては、データオブジェクトは、データモデルの一部と見なされ得る。データオブジェクトは、アイテム又はクラスの個々のインスタンス又はアイテムの種類を表し得る。
本明細書で使用されるとき、「データフィールド」という用語は、データオブジェクトの名前付き又は名前付け可能なプロパティ又は属性を指す。場合によっては、データフィールドは、オブジェクト指向プログラミングにおけるオブジェクトのクラスメンバに類似していると見なされ得る。
本明細書で使用されるとき、「パネル」という用語は、GUI内で定義済みジオメトリ(例えばx,y,z順)を有するグラフィカルユーザインタフェース(GUI)内の領域を指す。パネルは、ユーザに情報を表示するか又は1つ以上の対話型コントロールをホストするために配置され得る。パネルに関連付けられるジオメトリ又はスタイルは、動的ルールを含む構成情報を使用して定義され得る。また、場合によっては、ユーザは、移動、表示、非表示、サイズ変更、並べ替え等のようなアクションを1つ以上のパネルに対して実行できるようにされ得る。
本明細書で使用されるとき、「ワーキングデータモデル」という用語は、開発又はモデル化されている過程にあり得るデータモデルを指す。この用語は、ワーキングデータモデルを、1つ以上の推奨データフィールド又はデータオブジェクトを含み得るデータモデルのような他のデータモデルと区別するために使用される。
本明細書で使用されるとき、「ワーキングビジュアライゼーション(working visualization)」という用語は、開発又はモデル化されている過程にあり得るビジュアライゼーションを指す。この用語は主に、開発又はモデル化されているビジュアライゼーションを他のビジュアライゼーションと区別するために使用される。
本明細書で使用されるとき、「構成情報」という用語は、構成ファイル、データベース、ユーザ入力、組み込みのデフォルト等又はそれらの組合せを含む様々なソースから提供され得る、ルールベースのポリシー、パターンマッチング、スクリプト(例えばコンピュータ読取可能命令)等を含み得る情報を指す。
以下では、本発明のいくつかの態様の基本的な理解を提供するために、本発明の実施形態について簡単に説明する。この簡単な説明は、広範な概要として意図されていない。重要又は重大な要素を識別し、範囲を画定するか又は他の方法で狭めたりすることは意図されていない。その目的は単に、後で提示されるより詳細な説明の前段階として、いくつかの概念を簡略化した形式で提示することである。
簡単に説明すると、様々な実施形態は、本明細書で説明されるように実行する1つ以上の命令を実行する1つ以上のプロセッサを使用してデータのビジュアライゼーションを管理することを対象とする。
様々な実施形態の1つ以上において、データソース、モデルパネル及びディスプレイパネルは、データソースを、各々が複数のデータフィールドを含む1つ以上のデータモデルに関連付けることができるように提供され得る。
様々な実施形態の1つ以上において、提供された検索式に応答して、以下に説明されるように更なるアクションが実施され得る。
様々な実施形態の1つ以上において、各候補データフィールドに関連付けられる1つ以上の値が、提供された検索式と一致し得るように、1つ以上の候補データフィールドが検索式又は1つ以上のデータモデルに基づいて決定され得る。また、いくつかの実施形態において、1つ以上の候補データフィールドが、モデルパネルに表示され得る。
様々な実施形態の1つ以上において、1つ以上の候補データフィールドの一部がワーキングデータモデルに含まれ得るように、1つ以上の候補データフィールドの一部に基づいて、ワーキングデータモデルが生成され得る。
様々な実施形態の1つ以上において、1つ以上のビジュアライゼーションの一部が、ワーキングデータモデルと1つ以上のビジュアライゼーションとに含まれ得る1つ以上の共有データフィールドに基づいて決定され得るように、1つ以上の推奨モデルとワーキングデータモデルとに基づいて、1つ以上のビジュアライゼーションが決定され得る。また、いくつかの実施形態において、1つ以上のビジュアライゼーションが、ディスプレイパネル内にリストされ得る。
様々な実施形態の1つ以上において、ワーキングデータモデルに含まれる1つ以上のデータフィールドが、ワーキングビジュアライゼーションに関連付けられ得るように、ディスプレイパネル内にリストされたビジュアライゼーションと、ワーキングデータモデルとに基づいて、ワーキングビジュアライゼーションが生成され得る。
様々な実施形態の1つ以上において、1つ以上の他の候補データフィールドを含むようにワーキングデータモデルを更新することに応答して、更新されたワーキングデータモデルに基づいて、1つ以上の候補データフィールド、1つ以上の推奨されるビジュアライゼーション又はワーキングビジュアライゼーションが更新され得る。
様々な実施形態の1つ以上において、1つ以上の推奨されるビジュアライゼーションが、ディスプレイパネル内にリストされ得るように、ワーキングモデル内の1つ以上のデータフィールド及び1つ以上の他のビジュアライゼーションに含まれ得る別のデータフィールドとの関連付けに基づいて、1つ以上の推奨されるビジュアライゼーションを決定し得る。また、いくつかの実施形態において、1つの推奨されるビジュアライゼーションの選択に応答して、他のデータフィールドを含むように、更新されたワーキングモデルが更新され得る。
様々な実施形態の1つ以上において、1つ以上の特性が、1つ以上の候補データフィールドを参照するビジュアライゼーションの数のカウント、1つ以上の候補データフィールドに関連付けられるデータソース情報又は1つ以上の候補データフィールドの値のサンプル等、のうちの1つ以上を含むように、1つ以上の候補データフィールドに関連付けられる1つ以上の特性が決定され得る。また、いくつかの実施形態において、各選択された1つ以上の候補データフィールドについて1つ以上の特性の1つ以上の部分がフィールド情報パネルに表示され得る。
様々な実施形態の1つ以上において、1つ以上の候補データフィールドから別の候補データフィールドが決定され得る。いくつかの実施形態において、他の候補データフィールドを含むようにワーキングビジュアライゼーションが更新され得る。また、いくつかの実施形態において、他の候補データフィールドを含むようにワーキングデータモデルが更新され得る。
様々な実施形態の1つ以上において、1つ以上のポピュラーデータフィールド(popular data fields)が、該1つ以上のポピュラーデータフィールドに関連付けられる1つ以上のメトリクスに基づいて決定され得、1つ以上のポピュラーフィールドがタブパネルに表示され得るように、1つ以上のデータモデルに基づいて1つ以上のポピュラーデータフィールドが決定され得る。いくつかの実施形態において、1つ以上のポピュラービジュアライゼーション(popular visualization)が、ディスプレイパネルに表示され得るように、ステップと1つ以上のポピュラーデータフィールドに基づいて1つ以上のポピュラービジュアライゼーションのコレクションが決定され得る。いくつかの実施形態において、1つ以上のポピュラーデータフィールドの一部が、ユーザによって選択され得るように、1つ以上のポピュラーデータフィールドの一部が決定され得る。また、いくつかの実施形態において、1つ以上のポピュラーデータフィールドの一部に関連付けられる各ポピュラービジュアライゼーションが、コレクションに含まれ得、1つ以上のポピュラーフィールドの一部に関連付けられない各ポピュラービジュアライゼーションが、コレクションから除外され得るように、1つ以上のポピュラーフィールドの一部に基づいて、1つ以上のポピュラービジュアライゼーションのコレクションが修正され得る。
例示される動作環境
図1は、本発明の実施形態が実施され得る環境の一実施形態の構成要素を示す。本発明を実施するために必ずしもすべての構成要素が必要とされるわけではなく、本発明の精神又は範囲から逸脱することなく、構成要素の配置及びタイプにおける変形が行われてもよい。示されるように、図1のシステム100は、ローカルエリアネットワーク(LAN)/ワイドエリアネットワーク(WAN)-(ネットワーク)110、無線ネットワーク108、クライアントコンピュータ102~105、ビジュアライゼーションサーバコンピュータ116等を含む。
図1は、本発明の実施形態が実施され得る環境の一実施形態の構成要素を示す。本発明を実施するために必ずしもすべての構成要素が必要とされるわけではなく、本発明の精神又は範囲から逸脱することなく、構成要素の配置及びタイプにおける変形が行われてもよい。示されるように、図1のシステム100は、ローカルエリアネットワーク(LAN)/ワイドエリアネットワーク(WAN)-(ネットワーク)110、無線ネットワーク108、クライアントコンピュータ102~105、ビジュアライゼーションサーバコンピュータ116等を含む。
クライアントコンピュータ102~105の少なくとも1つの実施形態は、図2と併せて以下により詳細に説明される。一実施形態において、クライアントコンピュータ102~105の少なくとも一部は、ネットワーク108又は110のような1つ以上の有線又は無線ネットワークを介して動作し得る。一般に、クライアントコンピュータ102~105は、情報を送受信し、様々なオンラインアクティビティやオフラインアクション等を実行するために、ネットワークを介して通信することができる事実上任意のコンピュータを含み得る。一実施形態において、クライアントコンピュータ102~105のうちの1つ以上は、ビジネス又は他のエンティティ内で動作し、該ビジネス又は他のエンティティのための様々なサービスを実行するよう構成され得る。例えばクライアントコンピュータ102~105は、ウェブサーバ、ファイアウォール、クライアントアプリケーション、メディアプレーヤ、携帯電話、ゲームコンソール、デスクトップコンピュータ等として動作するように構成され得る。しかしながら、クライアントコンピュータ102~105は、これらのサービスに制約されず、例えば他の実施形態におけるエンドユーザコンピューティングのために用いられてもよい。(図1に示されるように)より多くの又はより少ないクライアントコンピュータが、本明細書で説明されるようなシステム内に含まれてもよく、したがって、実施形態は、採用されるクライアントコンピュータの数又はタイプに制約されないことを認識されたい。
クライアントコンピュータ102として動作し得るコンピュータは、典型的に、パーソナルコンピュータ、マルチプロセッサシステム、マイクロプロセッサベース又はプログラム可能な電子デバイス、ネットワークPC等のような有線又は無線通信媒体を使用して接続するコンピュータを含み得る。いくつかの実施形態において、クライアントコンピュータ102~105は、ラップトップコンピュータ103、モバイルコンピュータ104、タブレットコンピュータ105等のように、別のコンピュータに接続して情報を受信することが可能な実質的に任意のポータブルコンピュータを含み得る。しかしながら、ポータブルコンピュータはそのように限定されず、携帯電話、ディスプレイページャ、無線周波数(RF)デバイス、赤外線(IR)デバイス、パーソナルデジタルアシスタント(PDA)、ハンドヘルドコンピュータ、ウェアラブルコンピュータ、先のコンピュータのうちの1つ以上を組み合わせた統合デバイス等のような他のポータブルコンピュータも含み得る。したがって、クライアントコンピュータ102~105は典型的に、能力及び機能の点で広範囲に及ぶ。さらに、クライアントコンピュータ102~105は、ブラウザを含む様々なコンピューティングアプリケーション又は他のウェブベースのアプリケーションにアクセスし得る。
ウェブ対応のクライアントコンピュータは、ウェブ上で要求を送信して応答を受信するよう構成されるブラウザアプリケーションを含み得る。ブラウザアプリケーションは、グラフィクス、テキスト、マルチメディア等を受信して表示するよう構成されてよく、事実上任意のウェブベース言語を採用することができる。一実施形態において、ブラウザアプリケーションは、メッセージを表示して送信するために、JavaScript、ハイパーテキストマークアップ言語(HTML)、eXtensibleマークアップ言語(XML)、JavaScript Object Notation(JSON)、カスケーディングスタイルシート(CSS)等又はそれらの組合せを用いることが可能である。一実施形態において、クライアントコンピュータのユーザは、ブラウザアプリケーションを用いて、ネットワークを介して(オンラインで)様々なアクティビティを実行し得る。しかしながら、別のアプリケーションを使用して、様々なオンラインアクティビティを実行してもよい。
クライアントコンピュータ102~105はまた、別のコンピュータとの間でコンテンツを送受信するよう構成される、少なくとも1つの他のクライアントアプリケーションも含み得る。クライアントアプリケーションは、コンテンツを送受信する能力等を含み得る。クライアントアプリケーションは、タイプ、能力、名前等を含む、自身を識別する情報を更に提供し得る。一実施形態において、クライアントコンピュータ102~105は、インターネットプロトコル(IP)アドレス、電話番号、モバイル識別番号(MIN)、電子シリアル番号(ESN)、クライアント証明書又は他のデバイス識別子を含む、様々なメカニズムのいずれかを通じて、それら自身を一意に識別し得る。このような情報は、他のクライアントコンピュータ、ビジュアライゼーションサーバコンピュータ116又は他のコンピュータとの間で送信される、1つ以上のネットワークパケット等において提供され得る。
クライアントコンピュータ102~105は、エンドユーザが、ビジュアライゼーションサーバコンピュータ116等のような別のコンピュータによって管理され得るエンドユーザアカウントにログインすることを可能にする、クライアントアプリケーションを含むように更に構成され得る。このようなエンドユーザアカウントは、非限定的な一例では、エンドユーザが、非限定的な一例においてプロジェクト管理、ソフトウェア開発、システム管理、構成管理、検索アクティビティ、ソーシャルネットワーキングアクティビティ、様々なウェブサイトのブラウズ、他のユーザとの通信等を含む、1つ以上のオンラインアクティビティを管理することを可能にするよう構成され得る。また、クライアントコンピュータは、ユーザが、レポート、対話型ユーザインタフェース又はビジュアライゼーションサーバコンピュータ116によって提供される結果等を表示することを可能にするよう配置され得る。
無線ネットワーク108は、クライアントコンピュータ103~105とその構成要素をネットワーク110に結合するよう構成される。無線ネットワーク108は、クライアントコンピュータ103~105のためにインフラ指向の接続(infrastructure-oriented connection)を提供するために、スタンドアロンのアドホックネットワーク等を更にオーバーレイし得る様々な無線サブネットワークのいずれかを含み得る。このようなサブネットワークは、メッシュネットワーク、無線LAN(WLAN)ネットワーク、セルラネットワーク等を含み得る。一実施形態では、システムは2つ以上の無線ネットワークを含み得る。
無線ネットワーク108は、無線通信(wireless radio)リンク等によって接続される端末、ゲートウェイ、ルータ等の自律システムを更に含み得る。これらのコネクタは、無線ネットワーク108のトポロジーが急速に変化する可能性があるように、自由かつランダムに移動し、任意に編成するように構成することができる。
無線ネットワーク108は、セルラシステム、WLAN、無線ルータ(WR)メッシュ等のための第2世代(2G)、第3世代(3G)、第4世代(4G)、第5世代(5G)無線アクセスを含む複数のアクセス技術を更に用いることがある。2G、3G、4G、5G及び将来のアクセスネットワークのようなアクセス技術は、様々なモビリティ程度を有するクライアントコンピュータ103~105のようなモバイルコンピュータの広域カバレッジを可能にし得る。非限定的な一例では、無線ネットワーク108は、GSM(登録商標)(Global System for Mobile communication)、汎用パケット無線サービス(GPRS)、EDGE(Enhanced Data GSM Environment)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、広帯域符号分割多元アクセス(WCDMA(登録商標))、高速ダウンリンクパケットアクセス(HSDPA)、長期進化(LTE)等のような無線ネットワークアクセスを介した無線接続を可能にし得る。本質的に、無線ネットワーク108は、情報が、クライアントコンピュータ103~105と、別のコンピュータ、ネットワーク、クラウドベースのネットワーク、クラウドインスタンス等との間を移動し得る、事実上任意の無線通信メカニズムを含み得る。
ネットワーク110は、ネットワークコンピュータを、無線ネットワーク108等を介して、ビジュアライゼーションサーバコンピュータ116、クライアントコンピュータ102及びクライアントコンピュータ103~105を含む他のコンピュータと結合するよう構成される。ネットワーク110は、ある電子デバイスから別の電子デバイスに情報を通信するために、任意の形態のコンピュータ読取可能媒体を用いることを可能にする。また、ネットワーク110は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、ユニバーサルシリアルバス(USB)ポート、イーサネット(登録商標)ポート、他の形態のコンピュータ読取可能媒体又はこれらの任意の組合せ等による直接接続に加えて、インターネットを含むことができる。異なるアーキテクチャ及びプロトコルに基づくLANを含む、相互接続されたLANのセットにおいて、ルータは、LAN間のリンクとして機能し、相互にメッセージを送信することを可能にする。加えて、LAN内の通信リンクは、典型的に、ツイストワイヤペア又は同軸ケーブルを含むが、ネットワーク間の通信リンクは、アナログ電話回線、T1、T2、T3及びT4を含む完全又は部分的な専用デジタル回線、あるいはEキャリア(E-carriers)、統合サービスデジタルネットワーク(ISDN)、デジタル加入者線(DSL)、衛星リンクを含む無線リンク又は当業者に公知の他の通信リンクを含む他のキャリアメカニズムを用いてもよい。さらに、通信リンクは、限定ではないが、例えばDS-0、DS-1、DS-2、DS-3、DS-4、OC-3、OC-12、OC-48等を含む、様々なデジタル信号技術のいずれかを更に用いてもよい。さらに、リモートコンピュータ及び他の関連する電子デバイスは、モデム及び一時的な電話リンクを介して、LAN又はWANのいずれかにリモート接続されることができる。一実施形態では、ネットワーク110は、インターネットプロトコル(IP)の情報を転送するよう構成され得る。
加えて、通信媒体は、典型的に、コンピュータ読取可能命令、データ構造、プログラムモジュール又は他の転送メカニズムを具現化し、任意の情報非一時的配信媒体又は一時的配信媒体を含む。例として、通信媒体は、ツイストペア、同軸ケーブル、光ファイバ、導波管及び他の有線媒体のような有線媒体と、音響、RF、赤外線及び他の無線媒体のような無線媒体を含む。
また、ビジュアライゼーションサーバコンピュータ116の一実施形態が、図3に関連して以下により詳細に説明される。図1は、ビジュアライゼーションサーバコンピュータ116等を単一のコンピュータとして図示しているが、本革新又は実施形態はそのように限定されない。例えばビジュアライゼーションサーバコンピュータ116等の1つ以上の機能が、1つ以上の別個のネットワークコンピュータに分散されてもよい。さらに、1つ以上の実施形態において、ビジュアライゼーションサーバコンピュータ116は、複数のネットワークコンピュータを使用して実装されてもよい。さらに、様々な実施形態の1つ以上において、ビジュアライゼーションサーバコンピュータ116等は、1つ以上のクラウドネットワーク内の1つ以上のクラウドインスタンスを使用して実装されてもよい。したがって、これらの革新及び実施形態は単一の環境に限定されるものとして解釈されるべきではなく、他の構成及び他のアーキテクチャも想定される。
例示的なクライアントコンピュータ
図2は、クライアントコンピュータ200の一実施形態を示しており、これは、図示されるものよりもより多くの又はより少ない構成要素を含んでもよい。クライアントコンピュータ200は、例えば図1に示されているモバイルコンピュータ又はクライアントコンピュータの1つ以上の実施形態を表し得る。
図2は、クライアントコンピュータ200の一実施形態を示しており、これは、図示されるものよりもより多くの又はより少ない構成要素を含んでもよい。クライアントコンピュータ200は、例えば図1に示されているモバイルコンピュータ又はクライアントコンピュータの1つ以上の実施形態を表し得る。
クライアントコンピュータ200は、バス228を介してメモリ204と通信するプロセッサ202を含み得る。クライアントコンピュータ200は、電源230、ネットワークインタフェース232、オーディオインタフェース256、ディスプレイ250、キーパッド252、イルミネータ254、ビデオインタフェース242、入出力インタフェース238、触覚インタフェース264、グローバルポジショニングシステム(GPS)レシーバ258、オープンエアジェスチャインタフェース260、温度インタフェース262、カメラ240、プロジェクタ246、ポインティングデバイスインタフェース266、プロセッサ読取可能な固定式ストレージデバイス234及びプロセッサ読取可能なリムーバブルストレージデバイス236も含み得る。クライアントコンピュータ200は、任意に、基地局(図示せず)と通信するか又は別のコンピュータと直接通信してもよい。また、一実施形態において、図示されていないが、クライアントコンピュータ200の方向を測定又は維持するために、ジャイロスコープがクライアントコンピュータ200内で用いられてもよい。
電源230は、クライアントコンピュータ200に電力を供給し得る。充電式又は非充電式のバッテリを使用して電力を供給し得る。電力は、ACアダプタや、バッテリを補うか又は充電するパワードドッキングクレードルのような外部電源によって供給されてもよい。
ネットワークインタフェース232は、クライアントコンピュータ200を1つ以上のネットワークに結合するための回路を含み、限定ではないが、モバイル通信(GSM)、CDMA、時分割多元接続(TDMA)、UDP、TCP/IP、SMS、MMS、GPRS、WAP、UWB、WiMax、SIP/RTP、GPRS、EDGE、WCDMA(登録商標)、LTE、UMTS、OFDM、CDMA2000、EV-DO、HSDPA又は様々な他の無線通信プロトコルのいずれかのために、OSIモデルの任意の部分を実装するプロトコル及び技術を含む、1つ以上の通信プロトコル及び技術で使用するために構築される。ネットワークインタフェース232は時には、トランシーバ、送受信(transceiving)デバイス又はネットワークインタフェースカード(NIC)と呼ばれる。
オーディオインタフェース256は、人間の声の音のようなオーディオ信号を生成して受信するように構成され得る。例えばオーディオインタフェース256をスピーカ及びマイク(図示せず)に結合して、他との遠距離通信を可能にするか又は何らかのアクションについてのオーディオ確認を生成し得る。オーディオインタフェース256内のマイクは、例えば音声認識を使用し、音に基づいてタッチを検出すること等、クライアントコンピュータ200への入力又はその制御に使用されることもできる。
ディスプレイ250は、液晶ディスプレイ(LCD)、ガスプラズマ、電子インク、発光ダイオード(LED)、有機LED(OLED)又はコンピュータとともに使用することができる任意の他のタイプの光反射又は光透過性ディスプレイであり得る。ディスプレイ250はまた、スタイラス又は人間の手の指のような物体からの入力を受け取るように配置されるタッチインタフェース244も含んでよく、抵抗性、容量性、弾性表面波(SAW)、赤外線、レーダ又は他の技術を使用して、タッチ又はジェスチャを感知し得る。
プロジェクタ246は、リモートの壁又はリモートスクリーンのような任意の他の反射物に画像を投影することが可能なリモートハンドヘルドプロジェクタ又は統合プロジェクタであり得る。
ビデオインタフェース242は、静止写真、ビデオセグメント、赤外線ビデオ等のようなビデオ画像をキャプチャするように配置され得る。例えばビデオインタフェース242は、デジタルビデオカメラ、ウェブカメラ等に結合され得る。ビデオインタフェース242は、レンズ、イメージセンサ及び他の電子機器を含み得る。画像センサは、相補型金属酸化膜半導体(CMOS)集積回路、電荷結合素子(CCD)又は光を感知するための任意の他の集積回路を含み得る。
キーパッド252は、ユーザからの入力を受け取るよう配置される任意の入力デバイスを含み得る。例えばキーパッド252は、プッシュボタンの数字ダイヤル又はキーボードを含み得る。キーパッド252は、画像を選択及び送信することに関連付けられるコマンドボタンも含み得る。
イルミネータ254は、ステータス指示を提供するか光を提供し得る。イルミネータ254は、特定の期間の間又はイベントメッセージに応答してアクティブなままになることがある。例えばイルミネータ254がアクティブであるとき、キーパッド252のボタンをバックライトし、クライアントコンピュータの電源が入っている間はオンのままであり得る。また、イルミネータ254は、別のクライアントコンピュータにダイヤルすることのような特定のアクションが実行されると、これらのボタンを様々なパターンでバックライトし得る。イルミネータ254は、クライアントコンピュータの透明又は半透明のケース内に配置された光源に、アクションに応答して照明させることもある。
さらに、クライアントコンピュータ200は、鍵、デジタル証明書、パスワード、パスフレーズ、二要素認証情報等のようなセキュリティ/暗号情報を生成、記憶又は使用するための追加の改ざん防止保護を提供するためのハードウェアセキュリティモジュール(HSM:hardware security module)268も含み得る。いくつかの実施形態では、ハードウェアセキュリティモジュールは、1つ以上の標準公開鍵基盤(PKI:public key infrastructure)をサポートするために用いられることがあり、鍵ペア等を生成、管理又は記憶するために用いられることがある。いくつかの実施形態では、HSM268はスタンドアロンのコンピュータであってもよく、他の場合には、HSM268は、クライアントコンピュータに追加され得るハードウェアカードとして配置されてよい。
クライアントコンピュータ200はまた、外部周辺デバイス又は他のクライアントコンピュータやネットワークコンピュータのような他のコンピュータと通信するために入出力インタフェース238も含み得る。周辺機器は、オーディオヘッドセット、仮想現実ヘッドセット、ディスプレイス画面グラス、リモートスピーカシステム、リモートスピーカ及びマイクロフォンシステム等を含み得る。入出力インタフェース238は、ユニバーサルシリアルバス(USB)、赤外線、WiFi、WiMax、Bluetooth(登録商標)等のような1つ以上の技術を利用することができる。
入出力インタフェース238はまた、ジオロケーション情報の決定(例えばGPS)、電力状態の監視(例えば電圧センサ、電流センサ、周波数センサ等)、気象の監視(例えばサーモスタット、気圧計、風速計、湿度検出器、降水量計等)等のための1つ以上のセンサも含み得る。センサは、クライアントコンピュータ200の外部にあるデータを収集又は測定する1つ以上のハードウェアセンサであり得る。
触覚インタフェース264は、クライアントコンピュータのユーザに触覚フィードバックを提供するように構成され得る。例えば触覚インタフェース264は、コンピュータの別のユーザが呼び出しているときに、特定の方法でクライアントコンピュータ200を振動させるために用いられ得る。温度インタフェース262は、温度測定入力又は温度変化出力をクライアントコンピュータ200のユーザに提供するために使用され得る。オープンエアジェスチャインタフェース260は、例えば単一又はステレオのビデオカメラ、レーダ、ユーザによって保持又は装着されるコンピュータ内部のジャイロセンサ等を使用することによって、クライアントコンピュータ200のユーザの物理的なジェスチャを感知し得る。カメラ240は、クライアントコンピュータ200のユーザの物理的な目の動きを追跡するために使用され得る。
GPSトランシーバ258は、地球の表面上のクライアントコンピュータ200の物理的な座標を決定することができ、これは典型的に、緯度と経度の値として位置を出力する。GPSトランシーバ258はまた、これらに限定されないが、三角測量、アシストGPS(AGPS)、拡張観測時差(E-OTD:Enhanced Observed Time Difference)、セル識別子(CI)、サービスエリア識別子(SAI)、拡張タイミングアドバンス(ETA:Enhanced Timing Advance)、基地局サブシステム(BSS)等を含む、他のジオポジショニングメカニズムを用いて、地球の表面上のクライアントコンピュータ200の物理的な位置を更に決定することができる。異なる条件下で、GPSトランシーバ258はクライアントコンピュータ200の物理的な位置を決定することができることが理解される。しかしながら、1つ以上の実施形態では、クライアントコンピュータ200は、他の構成要素を通して、例えばメディアアクセス制御(MAC)アドレス、IPアドレス等を含む、クライアントコンピュータの物理的な位置を決定するために用いられ得る他の情報を提供し得る。
様々な実施形態の少なくとも1つにおいて、オペレーティングシステム206、ビジュアライゼーションクライアント222、他のクライアントアプリ(apps)224、ウェブブラウザ226等のようなアプリケーションは、ジオロケーション情報を用いて、タイムゾーン、言語、通貨、カレンダーフォーマット等のような1つ以上のローカリゼーション機能を選択するよう配置され得る。ローカリゼーション機能は、ディスプレイオブジェクト、データモデル、データオブジェクト、ユーザインタフェース、レポート並びに内部プロセス又はデータベースにおいて使用され得る。様々な実施形態の少なくとも1つにおいて、ローカリゼーション情報を選択するために使用されるジオロケーション情報は、GPS258によって提供され得る。また、いくつかの実施形態では、ジオロケーション情報は、無線ネットワーク108又はネットワーク111のようなネットワークを介して1つ以上のジオロケーションプロトコルを使用して提供される情報を含み得る。
ヒューマンインタフェース構成要素は、クライアントコンピュータ200と物理的に分離した周辺機器とすることができ、クライアントコンピュータ200へのリモート入力又は出力を可能にする。例えばここで説明されるように、ディスプレイ250又はキーボード252のようなヒューマンインタフェース構成要素を介してルーティングされる情報は、代わりにネットワークインタフェース232を介して、リモートに配置された適切なヒューマンインタフェース構成要素にルーティングされることができる。リモートにすることができるヒューマンインタフェース周辺構成要素の例は、オーディオデバイス、ポインティングデバイス、キーパッド、ディスプレイ、カメラ、プロジェクタ等を含むが、これらに限定されない。これらの周辺構成要素は、Bluetooth(登録商標)、Zigbee(登録商標)等のようなピコネットワークを介して通信し得る。このような周辺ヒューマンインタフェース構成要素を有するクライアントコンピュータの非限定的な一例は、ウェアラブルコンピュータであり、これは、別個に配置されたクライアントコンピュータとリモートに通信して、ピコプロジェクタによって壁やユーザの手のような反射面上へ投影された画像の一部に向けられたユーザのジェスチャを感知する、1つ以上のカメラとともに、リモートピコプロジェクタを含む可能性がある。
クライアントコンピュータは、ウェブページ、ウェブベースのメッセージ、グラフィクス、テキスト、マルチメディア等を受信及び送信するよう構成されるウェブブラウザアプリケーション226を含み得る。クライアントコンピュータのブラウザアプリケーションは、無線アプリケーションプロトコルメッセージ(WAP)等を含む、事実上任意のプログラミング言語を用いてよい。1つ以上の実施形態では、ブラウザアプリケーションは、ハンドヘルドデバイスマークアップ言語(HDML)、無線マークアップ言語(WML)、WMLスクリプト、JavaScript、標準汎用マークアップ言語(SGML)、ハイパーテキストマークアップ言語(HTML)、拡張可能マークアップ言語(XML)、HTML5等を用いることが可能である。
メモリ204は、RAM、ROM又は他のタイプのメモリを含み得る。メモリ204は、コンピュータ読取可能命令、データ構造、プログラムモジュール又は他のデータのような情報の記憶のためのコンピュータ読取可能記憶媒体(デバイス)の例を示す。メモリ204は、クライアントコンピュータ200の低レベル動作を制御するためのBIOS208を記憶し得る。メモリはまた、クライアントコンピュータ200の動作を制御するためのオペレーティングシステム206も記憶し得る。この構成要素は、あるバージョンのUNIX(登録商標)又はLinux(登録商標)のような汎用オペレーティングシステム又はWindows Phone(登録商標)又はSymbian(登録商標)のような特殊クライアントコンピュータ通信オペレーティングシステムを含み得ることが理解されよう。オペレーティングシステムは、Javaアプリケーションプログラムを介してハードウェア構成要素又はオペレーティングシステム動作の制御を可能にするJava仮想マシンモジュールを含むか又はこれとインタフェースし得る。
メモリ204は、1つ以上のデータストレージ210を更に含んでよく、このデータストレージ210を、クライアントコンピュータ200によって、他の中でも特にアプリケーション220又は他のデータを記憶するために用いることができる。例えばデータストレージ210はまた、クライアントコンピュータ200の様々な能力を記述する情報を記憶するために用いられてもよい。その後、その情報は、通信中にヘッダの一部として送信されること、要求に応じて送信されること等を含む様々な方法のいずれかに基づいて、別のデバイス又はコンピュータに提供され得る。データストレージ210はまた、アドレス帳、バディリスト、エイリアス、ユーザプロファイル情報等を含む、ソーシャルネットワーキング情報を記憶するためにも用いられてよい。データストレージ210は、アクションを実行及び実施するためにプロセッサ202のようなプロセッサによる使用のための、プログラムコード、データ、アルゴリズム等を更に含み得る。一実施形態では、データストレージ210の少なくとも一部は、非一時的なプロセッサ読取可能なリムーバブルストレージデバイス236、プロセッサ読取可能な固定式ストレージデバイス234又はクライアントコンピュータに対する外付けのものも含む、クライアントコンピュータ200の別の構成要素にも記憶される可能性もある。
アプリケーション220は、クライアントコンピュータ200によって実行されると、命令及びデータを送信、受信又は他の方法で処理するコンピュータ実行可能命令を含み得る。アプリケーション220は、例えばビジュアライゼーションクライアント222、他のクライアントアプリケーション224、ウェブブラウザ226等を含み得る。クライアントコンピュータは、1つ以上のサーバと通信を交換するように配置され得る。
アプリケーションプログラムの他の例は、カレンダー、検索プログラム、電子メールクライアントアプリケーション、IMアプリケーション、SMSアプリケーション、ボイスオーバーインターネットプロトコル(VOIP)アプリケーション、連絡先マネージャ、タスクマネージャ、トランスコーダ、データベースプログラム、ワードプロセッシングプログラム、セキュリティアプリケーション、表計算プログラム、ゲーム、検索プログラム、ビジュアライゼーションアプリケーション等を含む。
加えて、1つ以上の実施形態(図示せず)において、クライアントコンピュータ200は、CPUの代わりに、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルアレイロジック(PAL)等又はそれらの組合せのような組み込みロジックハードウェアデバイスを含み得る。組み込みロジックハードウェアデバイスは、その組み込みロジックを直接実行してアクションを実施し得る。また、1つ以上の実施形態(図示せず)において、クライアントコンピュータ200は、CPUの代わりに1つ以上のハードウェアマイクロコントローラを含み得る。1つ以上の実施形態では、1つ以上のマイクロコントローラは、システムオンチップ(SOC)等のように、それら自身の組み込みロジックを直接実行してアクションを実施し、それ自身の内部メモリ及びそれ自身の外部入出力インタフェース(例えばハードウェアピン又は無線トランシーバ)にアクセスしてアクションを実施し得る。
例示的なネットワークコンピュータ
図3は、様々な実施形態の1つ以上を実装するシステム内に含まれ得る、ネットワークコンピュータ300の一実施形態を示している。ネットワークコンピュータ300は、図3に示されている構成要素よりも多くの又は少ない構成要素を含み得る。しかしながら、示されている構成要素は、これらの革新を実施するための例示的な実施形態を開示するのに十分である。ネットワークコンピュータ300は、例えば図1のビジュアライゼーションサーバコンピュータ116等の少なくとも1つの実施形態を表してよい。
図3は、様々な実施形態の1つ以上を実装するシステム内に含まれ得る、ネットワークコンピュータ300の一実施形態を示している。ネットワークコンピュータ300は、図3に示されている構成要素よりも多くの又は少ない構成要素を含み得る。しかしながら、示されている構成要素は、これらの革新を実施するための例示的な実施形態を開示するのに十分である。ネットワークコンピュータ300は、例えば図1のビジュアライゼーションサーバコンピュータ116等の少なくとも1つの実施形態を表してよい。
ネットワークコンピュータ300のようなネットワークコンピュータは、バス328を介してメモリ304と通信し得るプロセッサ302を含み得る。いくつかの実施形態では、プロセッサ302は、1つ以上のハードウェアプロセッサ又は1つ以上のプロセッサコアで構成されてもよい。場合によっては、1つ以上のプロセッサのうちの1つ以上が、本明細書で説明されるアクションのような、1つ以上の特殊なアクションを実行するように設計された特殊なプロセッサであり得る。ネットワークコンピュータ300は、電源330、ネットワークインタフェース332、オーディオインタフェース356、ディスプレイ350、キーボード352、入出力インタフェース338、プロセッサ読取可能な固定式ストレージデバイス334及びプロセッサ読取可能なリムーバブルストレージデバイス336も含む。電源330は、ネットワークコンピュータ300に電力を提供する。
ネットワークインタフェース332は、ネットワークコンピュータ300を1つ以上のネットワークに結合するための回路を含み、オープンシステム相互接続モデル(OSI(Open Systems Interconnection)モデル)、GSM(global system for mobile communication)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、ユーザデータグラムプロトコル(UDP)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)、ショートメッセージサービス(SMS)、マルチメディアメッセージングサービス(MMS)、汎用パケット無線サービス(GPRS)、WAP、超広帯域無線(UWB)、IEEE 802.16 WiMax(Worldwide Interoperability for Microwave Access)、セッション開始プロトコル/リアルタイム伝送プロトコル(SIP/RTP)又は任意の様々な他の有線及び無線通信プロトコルを実装するプロトコル及び技術を含むが、これらに限定されない、1つ以上の通信プロトコル及び技術で使用するために構築される。ネットワークインタフェース332は、トランシーバ、トランシーバデバイス又はネットワークインタフェースカード(NIC)としても知られる。ネットワークコンピュータ300は、任意に、基地局(図示せず)と通信するか又は別のコンピュータと直接通信し得る。
オーディオインタフェース356は、人間の声の音のようなオーディオ信号を生成して受信するよう配置され得る。例えばオーディオインタフェース256をスピーカ及びマイクロフォン(図示せず)に結合して、他との遠距離通信を可能にするか又は何らかのアクションについてのオーディオ確認を生成し得る。オーディオインタフェース356内のマイクロフォンは、例えば音声認識を使用して、ネットワークコンピュータ300への入力又はその制御に使用されることもできる。
ディスプレイ350は、液晶ディスプレイ(LCD)、ガスプラズマ、電子インク、発光ダイオード(LED)、有機LED(OLED)又はコンピュータとともに使用することができる任意の他のタイプの光反射又は光透過性ディスプレイであり得る。ディスプレイ350はまた、壁又は他の物体に画像を投影することが可能なハンドヘルドプロジェクタ又はピコプロジェクタであり得る。
ネットワークコンピュータ300は、図3に示されていない外部デバイス又はコンピュータと通信するための入出力インタフェース338も含み得る。入出力インタフェース338は、USB(登録商標)、Firewire(登録商標)、WiFi、WiMax、Thunderbolt(登録商標)、Infrared、Bluetooth(登録商標)、Zigbee(登録商標)、シリアルポート、パラレルポート等のような、1つ以上の有線又は無線通信技術を利用することができる。
また、入出力インタフェース338は、ジオロケーション情報の決定(例えばGPS)、電力状態の監視(例えば電圧センサ、電流センサ、周波数センサ等)、気象の監視(例えばサーモスタット、気圧計、風速計、湿度検出器、降水量計等)等のための1つ以上のセンサも含み得る。センサは、ネットワークコンピュータ300の外部にあるデータを収集又は測定する1つ以上のハードウェアセンサであり得る。ヒューマンインタフェース構成要素は、ネットワークコンピュータ300から物理的に分離することができ、ネットワークコンピュータ300へのリモート入力又は出力を可能にする。例えば本明細書で説明されるように、ディスプレイ350又はキーボード352のようなヒューマンインタフェース構成要素を通してルーティングされる情報を、代わりにネットワークインタフェース332を通して、ネットワーク上の別の場所に配置される適切なヒューマンインタフェース構成要素にルーティングすることができる。ヒューマンインタフェース構成要素は、コンピュータがコンピュータの人間のユーザから入力を取得したり、出力を送信したりすることを可能にする任意の構成要素を含む。したがって、マウス、スタイラス、トラックボール等のようなポインティングデバイスは、ポインティングデバイスインタフェース358を介して通信し、ユーザの入力を受け取り得る。
GPSトランシーバ340は、地球の表面上のネットワークコンピュータ300の物理的な座標を決定することができ、典型的には、位置を緯度と経度の値として出力する。GPSトランシーバ340はまた、これらに限定されないが、三角測量、アシストGPS(AGPS)、拡張観測時差(E-OTD)、セル識別子(CI)、サービスエリア識別子(SAI)、拡張タイミングアドバンス(ETA)、基地局サブシステム(BSS)等を含む、他のジオポジショニングメカニズムを用いて、地球の表面上のネットワークコンピュータ300の物理的な位置を更に決定することができる。異なる条件下で、GPSトランシーバ340は、ネットワークコンピュータ300の物理的な位置を決定することができることが理解される。しかしながら、1つ以上の実施形態では、ネットワークコンピュータ300は、他の構成要素を通して、例えばメディアアクセス制御(MAC)アドレス、IPアドレス等を含む、クライアントコンピュータの物理的な位置を決定するために用いられ得る他の情報を提供し得る。
様々な実施形態の少なくとも1つにおいて、オペレーティングシステム306、モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329等のようなアプリケーションは、ジオロケーション情報を用いて、タイムゾーン、言語、通貨、通貨フォーマット、カレンダーフォーマット等のような1つ以上のローカリゼーション機能を選択するよう配置され得る。ローカリゼーション機能は、ユーザインタフェース、ダッシュボード、ビジュアライゼーション、レポート並びに内部プロセス又はデータベースにおいても使用され得る。様々な実施形態の少なくとも1つにおいて、ローカリゼーション情報を選択するために使用されるジオロケーション情報は、GPS340によって提供され得る。また、いくつかの実施形態では、ジオロケーション情報は、無線ネットワーク108又はネットワーク111のようなネットワークを介して1つ以上のジオロケーションプロトコルを使用して提供される情報を含み得る。
メモリ304は、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)又は他のタイプのメモリを含み得る。メモリ304は、コンピュータ読取可能命令、データ構造、プログラムモジュール又は他のデータのような情報の記憶のための、コンピュータ読取可能記憶媒体(デバイス)の例を示す。メモリ304は、ネットワークコンピュータ300の低レベル動作を制御するための基本入出力システム(BIOS)308を記憶する。メモリはまた、ネットワークコンピュータ300の動作を制御するためのオペレーティングシステム306も記憶する。この構成要素には、あるバージョンのUNIX(登録商標)又はLinux(登録商標)のような汎用オペレーティングシステム又はMicrosoft社のWindows(登録商標)オペレーティングシステム又はApple社のmacOS(登録商標)オペレーティングシステムのような特殊オペレーティングシステムを含み得ることが理解されよう。オペレーティングシステムは、Javaアプリケーションプログラムを介してハードウェア構成要素又はオペレーティングシステム動作の制御を可能にするJava仮想マシンモジュールのような、1つ以上の仮想マシンモジュールを含むか又はこれらとインタフェースし得る。同様に、他のランタイム環境が含まれてもよい。
メモリ304は、1つ以上のデータストレージ310を更に含んでよく、データストレージ310を、ネットワークコンピュータ300によって、他の中でも特にアプリケーション320又は他のデータを記憶するために利用することができる。例えばデータストレージ310はまた、ネットワークコンピュータ300の様々な能力を記述する情報を記憶するために用いられてもよい。その後、その情報は、通信中にヘッダの一部として送信されること、要求に応じて送信されること等を含む、様々な方法のいずれかに基づいて、別のデバイス又はコンピュータに提供され得る。データストレージ310は、アドレス帳、バディリスト、エイリアス、ユーザプロファイル情報等を含む、ソーシャルネットワーキング情報を記憶するために用いられてもよい。データストレージ310は、以下で説明されるアクションのようなアクションを実行及び実施するために、プロセッサ302のようなプロセッサによる使用のための、プログラムコード、データ、アルゴリズム等を更に含み得る。一実施形態では、データストレージ310の少なくとも一部は、これらに限定されないが、非一時的な媒体内部のプロセッサ読取可能なリムーバブルストレージデバイス336、プロセッサ読取可能な固定式ストレージデバイス334又はネットワークコンピュータ300内の任意の他のコンピュータ読取可能ストレージデバイス又はネットワークコンピュータ300に対する外付けのものも含む、ネットワークコンピュータ300の別の構成要素にも記憶される可能性がある。データストレージ310は、例えばデータソース314、データモデル316、ビジュアライゼーション318等を含み得る。
アプリケーション320は、ネットワークコンピュータ300によって実行されると、メッセージ(例えばSMS、マルチメディアメッセージングサービス(MMS)、インスタントメッセージ(IM)、電子メール又は他のメッセージ)、オーディオ、ビデオを送信、受信又は他の方法で処理し、別のモバイルコンピュータの別のユーザとの遠距離通信を可能にするコンピュータ実行可能命令を含み得る。アプリケーションプログラムの他の例は、カレンダー、検索プログラム、電子メールクライアントアプリケーション、IMアプリケーション、SMSアプリケーション、ボイスオーバーインターネットプロトコル(VOIP)アプリケーション、連絡先マネージャ、タスクマネージャ、トランスコーダ、データベースプログラム、ワードプロセッシングプログラム、セキュリティアプリケーション、表計算プログラム、ゲーム、検索プログラム等を含む。アプリケーション320は、以下で説明される実施形態のためのアクションを実施するよう配置され得る。モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329等を含み得る。様々な実施形態の1つ以上において、アプリケーションの1つ以上は、別のアプリケーションのモジュール又は構成要素として実装され得る。さらに、様々な実施形態の1つ以上において、アプリケーションは、オペレーティングシステムの拡張、モジュール、プラグイン等として実装され得る。
さらに、様々な実施形態の1つ以上において、モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329等は、クラウドベースのコンピューティング環境で動作し得る。様々な実施形態の1つ以上において、管理プラットフォームを含むこれらのアプリケーション及び他のものは、クラウドベースのコンピューティング環境で管理され得る仮想マシン又は仮想サーバ内で実行している可能性がある。様々な実施形態の1つ以上において、この文脈では、アプリケーションは、クラウドコンピューティング環境によって自動的に管理される性能とスケーリングの考慮事項に応じて、クラウドベース環境内の1つの物理ネットワークコンピュータから別の物理ネットワークコンピュータに流れる(flow)ことがある。同様に、様々な実施形態の1つ以上において、モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329等に専用の仮想マシン又は仮想サーバは、自動的にプロビジョニングされて閉じられる(de-commissioned)ことがある。
また、様々な実施形態の1つ以上において、モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329等は、1つ以上の固有の物理ネットワークコンピュータに結び付けられるのではなく、クラウドベースのコンピューティング環境で実行されている仮想サーバに配置され得る。
さらに、ネットワークコンピュータ300は、鍵、デジタル証明書、パスワード、パスフレーズ、二要素認証情報等のようなセキュリティ/暗号情報を生成、記憶又は使用するための追加の改ざん防止保護を提供するためのハードウェアセキュリティモジュール(HSM)360も含み得る。いくつかの実施形態では、ハードウェアセキュリティモジュールは、1つ以上の標準公開鍵基盤(PKI)をサポートするために用いられることがあり、鍵ペア等を生成、管理又は記憶するために用いられることがある。いくつかの実施形態では、HSM360は、スタンドアロンのネットワークコンピュータであってもよく、他の場合には、HSM360は、ネットワークコンピュータに設置されるハードウェアカードとして配置されてよい。
加えて、1つ以上の実施形態(図示せず)において、ネットワークコンピュータ300は、CPUの代わりに、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルアレイロジック(PAL)等又はそれらの組合せのような組み込みロジックハードウェアデバイスを含み得る。組み込みロジックハードウェアデバイスは、その組み込みロジックを直接実行してアクションを実施し得る。また、1つ以上の実施形態(図示せず)において、ネットワークコンピュータ300は、CPUの代わりに1つ以上のハードウェアマイクロコントローラを含み得る。1つ以上の実施形態では、1つ以上のマイクロコントローラは、システムオンチップ(SOC)等のように、それら自身の組み込みロジックを直接実行してアクションを実施し、それら自身の内部メモリ及びそれら自身の外部入出力インタフェース(例えばハードウェアピン又は無線トランシーバ)にアクセスしてアクションを実施し得る。
例示的な論理システムアーキテクチャ
図4は、様々な実施形態の1つ以上による、自動データモデル生成のためのシステム400の論理アーキテクチャを示す。様々な実施形態の1つ以上において、システム400は、モデリングエンジン402、ビジュアライゼーションエンジン404、ビジュアライゼーション406、ビジュアライゼーションモデル408、データモデル410、データソース412等を含む、様々な構成要素を含むように構成されるデータモデリングプラットフォームであり得る。
図4は、様々な実施形態の1つ以上による、自動データモデル生成のためのシステム400の論理アーキテクチャを示す。様々な実施形態の1つ以上において、システム400は、モデリングエンジン402、ビジュアライゼーションエンジン404、ビジュアライゼーション406、ビジュアライゼーションモデル408、データモデル410、データソース412等を含む、様々な構成要素を含むように構成されるデータモデリングプラットフォームであり得る。
様々な実施形態の1つ以上において、データソース412は、ユーザがデータモデル410のようなデータモデルを生成又は修正することを可能にするためにモデリングエンジン402が用いることができる、生データ、レコード、データアイテム等のソースを表す。
様々な実施形態の1つ以上において、データモデル410のようなデータモデルは、データソース412のような1つ以上のデータソースに記憶される情報の1つ以上の論理表現を提供するデータ構造等であり得る。いくつかの実施形態において、データモデルは、データソース内のテーブル、ビュー又はファイルの1つ以上の部分に対応するデータオブジェクトを含み得る。例えばいくつかの実施形態において、データソース412がCSVファイル又はデータベースである場合、データモデル410のようなデータモデルは、データソース412内のレコードフィールドに対応し得る1つ以上のデータオブジェクトで構成され得る。
様々な実施形態の1つ以上において、データモデルは、基礎となるデータソースと異なる可能性があるデータソースの論理表現を提供するように構成され得る。いくつかの実施形態において、これは、データモデルから、データソースの1つ以上のフィールドを除外することを含み得る。
いくつかの実施形態において、モデリングエンジン402のようなモデリングエンジンを用いて、データソース412の一部又はすべてをデータモデル410に変換し得る。いくつかの実施形態において、モデリングエンジンは、データソース内の値をデータモデルに変換するためのステップの一部又はすべてを決定するために、構成情報によって提供されるコンピュータ読取可能命令を採用又は実行するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、データソース内の基礎データに基づき得る、1つ以上のデータモデルを作成するユーザを支援するように構成され得る。
したがって、いくつかの実施形態において、モデリングエンジンは、ワーキングデータモデル又は1つ以上の候補データフィールドに基づいて、1つ以上のビジュアライゼーション(又はビジュアライゼーションモデル)を推奨するように構成され得る。
様々な実施形態の1つ以上において、ビジュアライゼーションエンジン404のようなビジュアライゼーションエンジンは、ビジュアライゼーションモデル408のようなビジュアライゼーションモデルを用いて、ユーザに表示され得るビジュアライゼーション406のようなビジュアライゼーションのレイアウト、スタイル、対話性等を決定するように配置され得る。また、いくつかの実施形態では、ビジュアライゼーションエンジンは、データモデルに基づいて値をビジュアライゼーションに投入(populate)するために、データソースを介して提供されるデータアイテム値を用いるように配置され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、自動データモデル生成に用いることができる1つ以上の検索式を受け取るように構成され得る。いくつかの実施形態では、ユーザには、1つ以上のキーワード又は1つ以上の式(expression)を含み得る検索式を提供するためのユーザインタフェースが提供され得る。提供された検索式に応答して、モデリングエンジンは、既存のデータモデル又はデータソースを検索して、提供された検索式に一致する可能性がある1つ以上のデータフィールドを識別するように構成され得る。いくつかの実施形態では、モデリングエンジンは、様々な基準を用いて、一致するデータフィールドを決定するように構成され得る。例えばいくつかの実施形態では、モデリングエンジンは、検索式を複数のデータモデル内の異なるデータフィールドの値と比較して、検索式に一致する値を含む可能性のある1つ以上のデータフィールドを決定するように構成され得る。また、例えば一致するデータフィールド名又はラベル、他のデータモデル内の一致するデータオブジェクト名又はラベル等のような、他の検索又は一致戦略が適用されてもよい。
様々な実施形態の1つ以上において、モデリングエンジンは、検索式に一致するデータフィールドに関連付けられる1つ以上のメトリクスを決定するように構成され得る。いくつかの実施形態では、各一致に関連付けられるコンテキスト情報を提供し得る。また、いくつかの実施形態では、検索結果をユーザに表示する前に、これらのメトリクスの1つ以上を使用して、1つ以上のデータフィールドをソート、ランク付け又はフィルタリングし得る。
様々な実施形態の1つ以上において、モデリングエンジンは、正規表現、文字列照合、SQL類似式、論理演算子(例えばAND、OR等)等のような、様々な異なるクエリスタイル又はクエリ言語を用いる可能性がある検索式をサポートするように構成され得る。いくつかの実施形態では、モデリングエンジンは、ローカル環境(local circumstances)又はローカル要件(local requirements)を考慮して構成情報を介して提供される文法、パーサ、ルール等を使用して、検索式を解釈するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、ユーザが1つ以上の候補データフィールドを選択してデータモデルを自動的に生成することを可能にするように構成され得る。いくつかの実施形態では、データフィールドが提供される場合、モデリングエンジンは、1つ以上の選択された候補データフィールド又はワーキングデータモデルに基づいて、1つ以上の推奨されるビジュアライゼーション、1つ以上の他の推奨されるデータフィールド、1つ以上の候補データフィールドを共有するデータモデルに関して尋ねられた1つ以上のクエリ又は質問等を決定するように構成され得る。この情報は、候補データフィールドをワーキングデータモデルに含めるべきかどうかを決定する際にユーザを支援するために提供され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、提供されたデータフィールドの分析に適している可能性がある1つ以上のビジュアライゼーションタイプを決定するように構成され得る。いくつかの実施形態では、特定のビジュアライゼーションは、提供されるデータフィールド又は類似のデータフィールドが他のユーザによってどのように用いられ得るかに基づいて決定され得る。様々な実施形態の1つ以上において、モデリングエンジンは、データフィールドに関連付けられるデータ型に基づいて、推奨されるビジュアライゼーションの一部又はすべてを決定するように構成され得る。例えばデータフィールドが日付情報を記憶するために使用される場合、モデリングエンジンは、カレンダースタイルのビジュアライゼーションを推奨するように構成され得る。同様に、例えばデータフィールドが住所やGPS座標、州の名前等のような地理的な値を記憶するために使用される場合、モデリングエンジンは、地図又は地図に似た特徴を含むビジュアライゼーションを推奨するように構成され得る。
様々な実施形態のうちの1つ以上において、モデリングエンジンは、ユーザのワーキングデータモデル又は選択されたデータフィールドを評価して、他のビジュアライゼーションにおいて選択されたデータフィールドとともに使用されていた他の1つ以上のデータフィールドを決定するように構成され得る。したがって、様々な実施形態の1つ以上において、モデリングエンジンは、ワーキングデータモデルを含めるために追加のデータフィールドを選択するための1つ以上の推奨(recommendation)を、他のビジュアライゼーション又はデータモデルにおけるそれらのデータフィールドの使用に基づいて提供し得る。例えばデータフィールドStateが選択されている場合、Profit、Population、Sell Counts等のような他のデータフィールドは、モデリングエンジンにより、他のビジュアライゼーションがこれらのフィールドをStateデータフィールドと組み合わせて使用していると判断された場合に推奨されることがある。
様々な実施形態の1つ以上において、最初にユーザは「空の」ワーキングデータモデルが提供されることがある。あるいは、いくつかの実施形態では、ユーザは、1つ以上のデータオブジェクト又はデータフィールドを含むワーキングデータモデルが提供されることもある。これは、いくつかのデータオブジェクト又はデータフィールドがワーキングデータモデルに既に追加されているためであり得る。あるいは、様々な実施形態の1つ以上において、モデリングエンジンは、ユーザが、データオブジェクトを既に含んでいるデータモデルに基づくワーキングデータモデルから開始することを可能にするように構成され得る。
したがって、様々な実施形態の1つ以上において、データフィールドとビジュアライゼーションが選択され得ると、ビジュアライゼーションに含まれ得るデータフィールドがワーキングデータモデルに自動的に追加され得る。したがって、いくつかの実施形態では、ユーザは、推奨されるビジュアライゼーション、推奨されるフィールド等のような様々なアイテムを検査して、ワーキングデータモデルに追加され得る候補データフィールドを決定することができる。
様々な実施形態の1つ以上において、データフィールドはデータオブジェクトの一部であり得る。したがって、いくつかの実施形態では、モデリングエンジンは、選択されたデータフィールドを含むデータオブジェクトをユーザのワーキングデータモデルに追加するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、ユーザのワーキングデータモデルに含まれるデータオブジェクト又はデータフィールドの組合せに基づいて、ビジュアライゼーション又はデータフィールドを推奨するように構成され得る。様々な実施形態の1つ以上において、データフィールド又はデータオブジェクトがワーキングデータモデルに追加されると、モデリングエンジンは、ワーキングデータモデルに含まれていたデータオブジェクト又はデータフィールドの一部又はすべてに基づいて、その推奨を動的に適応させるように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、様々なエバリュエータ(evaluator)又は推奨モデルを用いて、推奨すべき1つ以上のデータフィールドを決定するように構成され得る。いくつかの実施形態では、エバリュエータ又は推奨モデルは、データフィールド又はデータオブジェクトを評価してそれらをユーザに推奨すべきかどうかを判断するためにモデリングエンジンが実行し得る命令、ルール、条件、機械学習分類子等のうちの1つ以上を収集するか又は含む、データ構造であり得る。様々な実施形態の1つ以上において、特定のエバリュエータ又は推奨モデル、並びにそれらのアクションのうちの1つ以上は、ローカル要件又はローカル環境を考慮して構成情報から決定され得る。
また、様々な実施形態の1つ以上において、モデリングエンジンは、ポピュラーデータフィールドと、ユーザに表示される可能性がある関連するビジュアライゼーションのコレクションを決定するように構成され得る。いくつかの実施形態では、ポピュラーデータフィールドは、ユーザインタフェースのタブパネルに表示されてよく、関連するビジュアライゼーションのサムネイルは、ディスプレイパネルに表示されてよい。したがって、自由形式の検索式を提供するのではなく、ユーザは、1つ以上のポピュラーデータフィールドをユーザインタフェース内のタブパネルから直接選択することが可能になり得る。いくつかの実施形態では、ポピュラーデータフィールドは、データモデル又は他のコンテキストなしで表示されてもよい。いくつかの実施形態では、これは、ユーザが、ポピュラーデータフィールドを含むデータモデルの構造又は設計に気をとられることなく、ポピュラーデータフィールドに集中することを可能にし得る。
したがって、様々な実施形態の1つ以上において、ユーザがポピュラーデータフィールドをタブパネルから選択すると、モデリングエンジンは、選択されたデータフィールドを用いて、推奨のために1つ以上のビジュアライゼーションを識別するために用いられ得る検索式を自動的に生成するように構成され得る。また、いくつかの実施形態では、モデリングエンジンは、タブパネルにおいて複数のポピュラーデータフィールドを選択することを可能にするように構成され得る。したがって、いくつかの実施形態では、ポピュラーデータフィールドのコレクションを組み合わせて使用して、1つ以上の推奨されるビジュアライゼーションを決定し得る。
図5Aは、様々な実施形態の1つ以上による、自動データモデル生成のためのユーザインタフェース500の一部の論理表現を図示している。いくつかの実施形態において、ユーザインタフェース500は、モデルパネル502及びディスプレイパネル504等のような、1つ以上のパネルを含むように構成され得る。
様々な実施形態のうちの1つ以上において、ユーザインタフェース500は、クライアントコンピュータディスプレイ、モバイルデバイスディスプレイ等のような1つ以上のハードウェアディスプレイに表示され得る。いくつかの実施形態では、ユーザインタフェース500は、ネイティブアプリケーションを介して、あるいはウェブブラウザ又は他の同様のアプリケーションでホストされるウェブアプリケーションとして提供され得る。当業者には、少なくとも明確性又は簡潔性のために、商用/生産ユーザインタフェースに共通する多くの詳細がユーザインタフェース500から省略されていることが理解されよう。同様に、いくつかの実施形態では、ユーザインタフェースは、ディスプレイタイプ、ディスプレイ解像度、ユーザの好み等のようなローカル環境又はローカル要件に応じて、示されているものとは異なるように構成されてもよい。しかしながら、当業者には、ユーザインタフェース500の開示/説明は、少なくとも本明細書に含まれる革新を開示するのに十分であることが理解されよう。
いくつかの実施形態では、モデルパネル502のようなモデルパネルは、推奨されるデータフィールド、検索式等に関連付けられる情報を表示するために用いられ得る。また、いくつかの実施形態では、モデルパネル502は、ワーキングデータモデルを表示するように構成され得る。この例では、モデルパネル502は、検索式を提供することを可能にする検索コントロール506のようなユーザインタフェースコントロールを除いて、空(empty)である。この例では、モデルパネル502は、ユーザがデータモデリングセッションを開始したが、いずれの検索式も入力していないことを表すように、空として示されている。
様々な実施形態の1つ以上において、ディスプレイパネル504は、ビジュアライゼーション又は推奨されるビジュアライゼーションを表示するように構成され得る。したがって、いくつかの実施形態では、ユーザが異なるデータフィールドを評価すると、推奨されるビジュアライゼーション、推奨されるデータフィールド等に関連付けられるサムネイルが、ディスプレイパネル504に表示され得る。同様に、いくつかの実施形態では、ユーザが、利用可能な推奨されるビジュアライゼーションからあるビジュアライゼーションを選択した場合、そのビジュアライゼーションは、ディスプレイパネル504に表示され得るワーキングビジュアライゼーションの基礎として用いられ得る。
様々な実施形態の1つ以上において、ビジュアライゼーションにおける値を表すために使用されるマークを修正するためのパネル等を含め、追加のパネルがユーザインタフェース500に含まれてよい。例えばいくつかの実施形態では、ユーザが地図上の位置(ポイント)を示すビジュアライゼーションを生成するデータモデルを設計している場合、サイズ、収益(revenue)、利益(profit)等の追加フィールドを、地図内のポイントに適用され得る色又はサイズの値として追加することができる。例えばより多くの利益に関連付けられる地図上の位置のマークは、より少ない利益に関連付けられる位置よりも比例的により大きなマークを使用して表示され得る。
図5Bは、様々な実施形態の1つ以上による、自動データモデル生成のためのユーザインタフェース500の一部の論理表現を図示している。簡潔性及び明確性のために、図5Aについて上述したユーザインタフェース500の要素又は挙動は、ここでは繰り返さない。
この例では、検索コントロール506は、結果512を生成した検索式を含む。したがって、いくつかの実施形態では、結果512に示されるフィールドは、検索式「Washington」に一致する値を有する、様々なデータモデルからのデータフィールドを表す。この例で示されるように、検索式に一致する値を各々含むフィールドが4つ存在する。
様々な実施形態の1つ以上において、ユーザは、検索式に関連付けられる可能性がある候補データフィールドをすぐに見ることが可能にされ得る。場合によっては、候補データフィールドの1つ以上がユーザに知られていないことがある。同様に、候補データフィールドの1つ以上が、ユーザによって無関係であると見なされることがある。
いくつかの実施形態では、モデリングエンジンは、結果512における候補データフィールドとのユーザ対話に応答して、フィールドパネル508のようなフィールドパネルを生成又は表示するように構成され得る。この例では、ポインタ510の位置は、候補データフィールドラベルの上のユーザ「ホバリング」を表す。したがって、いくつかの実施形態では、モデリングエンジンは、フィールドパネル508のようなフィールドパネルを生成し、選択された候補データフィールドに関する情報をこれらに投入するように構成され得る。この例では、選択された候補データフィールドは「Product Name」であり、フィールドパネル508に表示される情報は、データ型(String)、データソース情報(列、テーブル、データベース)、選択されたデータフィールドによって保持される他の値等のような、そのフィールドに関する情報を示す。また、いくつかの実施形態では、フィールドパネル508は、データモデル内のデータフィールドを含むビジュアライゼーションの数のカウント、データフィールドを使用するビジュアライゼーションのサムネイル等のような、選択された候補データフィールドに関連付けられるメトリクス又は使用データを含み得る。
この例では、フィールド情報514は、データ型、データソース情報等のような情報を含む。また、この例では、ドメイン情報516は、データフィールドの他の値を示す。いくつかの実施形態では、モデリングエンジンは、ユーザがワーキングデータモデルに含めることを望む可能性があるオブジェクトのタイプをこのデータフィールドが表すかどうかを判断することを助けるために、ユーザがドメイン情報をブラウズして1つ以上の値を表示することを可能にするように構成され得る。
図5Cは、様々な実施形態の1つ以上による、自動データモデル生成のためのユーザインタフェース500の一部の論理表現を図示している。簡潔性と明確性のため、図5A又は図5Bについて上述したユーザインタフェース500の要素又は挙動はここでは繰り返さない。
上述のように、いくつかの実施形態では、モデリングエンジンは、ユーザが、ポインタ510を用いて結果512から候補データフィールドを選択することを可能にするように構成され得る。この例では、ポインタ510は、結果512のStateデータフィールドの上をホバリングしていると見なされてよい。したがって、いくつかの実施形態では、モデリングエンジンは、フィールドパネル508を表示し、Stateデータフィールドに基づいて、それに値を投入するように構成され得る。したがって、この例では、フィールド情報520は、Stateデータフィールドが、Customersという名前のデータベース内の「Location」という名前のテーブルから、地理的な状態を表すString値を含むことを示し得る。また、この例では、ドメイン情報522は、Stateデータフィールドに関連付けられる値が、アメリカ合衆国の州名を含むことを示す。また、この例では、使用情報524は、Stateデータフィールドを含むデータモデルを使用するビジュアライゼーションの数、並びにStateデータフィールドを使用するビジュアライゼーションのサムネイル等のような情報を含み得る。
したがって、様々な実施形態の1つ以上において、モデリングエンジンは、検索式に一致した候補データフィールドの1つ以上が、それらのデータモデルに含めるために適切であり得るかどうかを、ユーザが迅速に評価することを可能にする。
図5Dは、様々な実施形態の1つ以上による、自動データモデル生成のためのユーザインタフェース500の一部の論理表現を図示している。簡潔性と明確性の理由から、図5A、図5B又は図5Cについて上述したユーザインタフェース500の要素又は挙動は、ここでは繰り返さない。
様々な実施形態の1つ以上において、モデリングエンジンは、ユーザが、結果512、ポピュラーフィールド532又はデータモデル530のような、フィールドの様々なコレクションからデータフィールドを選択することを可能にするように構成され得る。
いくつかの実施形態において、モデリングエンジンは、結果512、ポピュラーフィールド532等から、ワーキングデータモデルにフィールドを自動的に追加するように構成され得る。この例では、ワーキングデータモデル530がモデルパネル502に表示され得る。いくつかの実施形態では、モデリングエンジンは、候補データフィールドがユーザによって選択されると、これらの候補データフィールドをワーキングデータモデルに追加するように構成され得る。また、様々な実施形態の1つ以上において、モデリングエンジンは、ユーザがデータフィールドを選択解除(deselect)又は他の方法で削除すると、ワーキングデータモデルからデータフィールドを削除するように構成され得る。
例えばこの例では、ユーザは、ポインタ510によって表されるように、Stateデータフィールドを選択している。様々な実施形態の1つ以上において、ユーザが結果512(図5Cを参照されたい)からStateデータフィールドを選択した場合、モデリングエンジンは、ここに示されるように、結果512からStateデータフィールドを削除し、それをワーキングデータモデル530に追加するように構成され得る。いくつかの実施形態では、ユーザがStateデータフィールドを解放又は他の方法で選択解除した場合、モデリングエンジンは、ワーキングデータモデル530からそれを削除し、それを結果512に戻すように構成され得る。いくつかの実施形態では、Stateデータフィールドが別のフィールド(図示されず)又はビジュアライゼーションに関連付けられる場合、モデリングエンジンは、Stateデータフィールドに結果512に戻すのではなく、データモデル530に残すように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、1つ以上のビジュアライゼーション、ビジュアライゼーションタイプ、他のデータフィールド等を決定して、ユーザに推奨するように構成され得る。いくつかの実施形態では、推奨は、選択されたデータフィールド、ワーキングデータモデル、他のデータモデル、他のビジュアライゼーション又はデータフィールドに関連付けられる使用メトリクス/履歴等の1つ以上の特性に基づいてよい。
様々な実施形態の1つ以上において、モデリングエンジンは、推奨モデルを用いて、ユーザに推奨されるべきビジュアライゼーション、ビジュアライゼーションタイプ、他のデータフィールド等を決定するために構成され得る。様々な実施形態の1つ以上において、推奨モデルは、どのビジュアライゼーション、ビジュアライゼーションタイプ、他のデータフィールド等をユーザに推奨するかを決定するためにモデリングエンジンが用いることができる、データ構造、ルール、命令等を表し得る。
様々な実施形態の1つ以上において、推奨の異なるカテゴリーは、異なる推奨モデルに関連付けられてよい。したがって、いくつかの実施形態では、推奨モデルは、それらが向けられる可能性のある推奨のカテゴリーに基づいて調整され得る。また、いくつかの実施形態では、推奨モデルは、組織のローカル要件を満たすように調整又は他の方法で適応され得る。例えばいくつかの実施形態では、組織は、1つ以上のビジュアライゼーション、ビジュアライゼーションタイプ、他のデータフィールド等を1人以上のユーザに推奨されるものから意図的に除外し得る。例えばいくつかの実施形態では、1つ以上のビジュアライゼーション又はデータモデルは、指定されたユーザのみがアクセスすることができる機密情報又は制限された情報を含むか又は表し得る。したがって、いくつかの実施形態では、推奨モデルは、様々な理由で推奨を含むか又は除外するように構成され得る。また、いくつかの実施形態では、異なる又は新しいビジュアライゼーション、データモデル、データソース等が導入され得ると、新しい又は追加の推奨モデルが提供され得る。したがって、様々な実施形態の1つ以上において、モデリングエンジンは、ローカル要件又はローカル環境を考慮して構成情報を介して提供され得る推奨モデル、推奨ルール等を用いるように構成され得る。
この例では、モデリングエンジンは、選択されたデータフィールド(例えばState)、ワーキングデータモデル、ワーキングビジュアライゼーション、他のデータモデル、他のビジュアライゼーション等の1つ以上の特性を評価する1つ以上の推奨モデルに基づいて、ビジュアライゼーションタイプ526及び推奨フィールド528を決定するように構成され得る。
この例では、ビジュアライゼーションタイプ526は、Stateデータフィールドを視覚化するために推奨され得る異なるビジュアライゼーションタイプのサムネイルビューを含み得る。例えば様々な実施形態の1つ以上において、ビジュアライゼーションタイプ526は、(色で)塗りつぶされるマップ、他のマップ、リスト/テーブル等のような様々なビジュアライゼーションのサムネイルビューを含み得る。
同様に、この例では、推奨フィールド528は、Stateデータフィールドを含むデータモデル又はビジュアライゼーションに含めることが推奨され得るデータフィールドに関連付けられ得る、ビジュアライゼーションのサムネイルビューを含み得る。例えば様々な実施形態の1つ以上において、推奨フィールド528は、Profit、Profit Ratio、Order Count、Items Sold等のような対応する推奨されるデータフィールドを含む、様々なビジュアライゼーションの1つ以上のサムネイルビューを含み得る。様々な実施形態の1つ以上において、推奨されるデータフィールドの1つ以上は、異なるデータモデル又は異なるデータソースからのものであり得る。
いくつかの実施形態において、推奨は、推奨をサポートするテキストベースの説明又は注釈を含み得る。いくつかの実施形態において、推奨モデルは、テキスト、画像、メトリクス等を含み得る推奨情報を提供するように構成され得る。したがって、モデリングエンジンは、推奨情報の一部又はすべてをディスプレイパネルに表示するよう構成され得る。さらに、いくつかの実施形態では、モデリングエンジンは、ディスプレイ外観をローカル環境又はローカル要件に適応させることを可能にするために、構成情報を介して提供されるユーザインタフェースレイアウト、スタイリング、ユーザインタフェース挙動等を用いるように構成され得る。例えばビジュアライゼーションタイプ526又は推奨されるフィールド528等は、構成情報に基づいて決定される対話型コントロール(例えばスクロールバー等)、フォント、色等を用いて表示され得る。
図5Eは、様々な実施形態の1つ以上による、自動データモデル生成のためのユーザインタフェース500の一部の論理表現を図示している。簡潔性と明確性の理由から、図5A、図5B、図5C又は図5Dについて上述したユーザインタフェース500の要素又は挙動は、ここでは繰り返さない。
この例では、図5Dから引き継いで、Stateデータフィールドは、推奨ビジュアライゼーションタイプの1つに「ドロップ」されている。したがって、様々な実施形態の1つ以上において、Stateデータフィールドは、ワーキングデータモデル530に追加されており、ワーキングビジュアライゼーション534は、マップビジュアライゼーションタイプ(選択されたビジュアライゼーションタイプを表す)を使用して生成された。この例では、ワーキングビジュアライゼーション534の最初のインスタンスは、その州を示す米国のマップを表示する。ここで、この例では、モデリングエンジンは、地理的領域を表すデータフィールドで初期化されていることへのデフォルトの応答として、地理的領域(例えば州、地方、郡、国等)のマップを表示するように構成され得る。いくつかの実施形態では、ビジュアライゼーションのデフォルト又は初期の外観は、データモデル又はワーキングデータモデルに依存し得る。したがって、様々な実施形態の1つ以上において、ビジュアライゼーションを初期化するために用いられる特定のデフォルトルール又は仮定は、構成情報を介して提供されるルール、命令等を介して決定され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、ユーザが、より多くのデータフィールドをそれらのワーキングデータモデルに追加することを可能にするように構成され得る。いくつかの実施形態において、モデリングエンジンは、ユーザがデータフィールドを含めるか又は除去すると、ワーキングデータモデルを継続的に更新するように構成され得る。さらに、いくつかの実施形態において、ユーザは、ビジュアライゼーションタイプ等を継続的に変更することも可能にされ得る。したがって、いくつかの実施形態において、モデリングエンジンは、ユーザ対話又はユーザ入力に基づいて、ワーキングデータモデル、ワーキングビジュアライゼーション、推奨情報等を更新するように構成され得る。
この例では、Profitデータフィールドがポピュラーフィールド532から選択されており、ワーキングデータモデル530に追加されている。したがって、様々な実施形態の1つ以上において、モデリングエンジンは、追加されたフィールドの特性又は修正されたワーキングデータモデルの特性に基づいて、ワーキングビジュアライゼーション534、推奨情報等を自動的に更新するように構成され得る。この例では、いくつかの実施形態について、ワーキングデータモデル530にProfitデータフィールドを追加することは、各米国州に関連付けられ得る利益額(amount profit)を示すようにワーキングビジュアライゼーション534を更新するようモデリングエンジンをトリガしている。なお、利用可能であるデータモデル又はデータソースからモデリングエンジンが識別することができるProfitとStatesとの間に関係が存在するので、このデフォルトの挙動が可能であり得ることに留意されたい。
様々な実施形態の1つ以上において、データフィールドがワーキングデータモデルに追加され得る場合、それを含んでいるデータオブジェクトは、個々のデータフィールドだけではなく、ワーキングデータモデルに追加され得る。いくつかの実施形態において、ワーキングデータモデルに追加されるデータオブジェクト内の追加データフィールドの一部又はすべてが、モデルパネルに表示され得る。いくつかの実施形態では、ユーザが、モデルパネルに表示されるデータオブジェクト内のデータフィールドの一部又はすべてを表示又は非表示にすることができるように、1つ以上のユーザインタフェースコントロール(図示せず)が提供され得る。この例では、モデリングエンジンは、ワーキングビジュアライゼーションに明示的に表示されないデータフィールドを非表示にするように構成され得る。
図6は、様々な実施形態の1つ以上による、自動データモデル生成のためのユーザインタフェース600の一部の論理表現を図示している。簡潔性と明確性の理由から、図5A等について上述したユーザインタフェース500の要素又は挙動は、ここでは繰り返さない。
いくつかの実施形態では、ユーザインタフェース600のようなユーザインタフェースは、タブパネル602、ディスプレイパネル604等のようなタブパネルを含むように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、1つ以上のポピュラー又は推奨されるデータフィールドを表す対話型ラベル又はボタンを含むことができる、タブパネル602のようなタブパネルを提供するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、1つ以上の推奨モデルを用いて、タブパネル内に表わされ得るデータフィールドを選択するように構成され得る。上述のように、推奨モデル(図示せず)は、タブパネル602のようなタブパネルに含めるべき1つ以上のデータフィールド(ポピュラーデータフィールド)を決定するためにモデリングエンジンによって用いられる可能性があるデータ構造、コード、命令、分類子、エバリュエータ等を表す。
また、様々な実施形態の1つ以上において、モデリングエンジンは、タブパネルに含まれるポピュラーデータフィールドに関連付けられる可能性がある、ビジュアライゼーション606のような1つ以上のビジュアライゼーションを決定するために構成され得る。いくつかの実施形態において、決定されたビジュアライゼーションは、推奨されているビジュアライゼーション又はビジュアライゼーションタイプのサムネイル表現を使用して表示され得る。
いくつかの実施形態では、ユーザは、タブパネルからポピュラーデータフィールドを対話的に選択するか又はディスプレイパネルからビジュアライゼーションを選択することを可能にされ得る。いくつかの実施形態では、データフィールドが選択されると、モデリングエンジンは、選択されたデータフィールドをフィルタとして用いて、ビジュアライゼーション606からビジュアライゼーションを含めるか又は除外するように構成され得る。例えばユーザが最初にタブパネル602内でStateデータフィールドを選択した場合、モデリングエンジンは、Stateデータフィールドに関連付けられていないビジュアライゼーションをビジュアライゼーション606から除外するように構成され得る。同様に、この例では、ユーザが追加のフィールドを選択した場合、モデリングエンジンは、選択されたデータフィールドのコレクション全体をフィルタとして用いて、ビジュアライゼーション606に示されるビジュアライゼーションを除外するか又は含めるように構成され得る。なお、ここには示されていないが、タブパネル602のようなタブパネルは、フィルタの効果を元に戻すことができる追加/代替のユーザインタフェースコントロール(例えばトグルボタン等)を含み得ることに留意されたい。また、いくつかの実施形態では、追加のフィルタ情報が、検索コントロール608等を介して検索式として提供されてもよい。
さらに、様々な実施形態の1つ以上において、モデリングエンジンは、ユーザがビジュアライゼーション606から1つ以上のビジュアライゼーションを選択することを可能にするように構成され得る。したがって、いくつかの実施形態では、選択されたビジュアライゼーションは、タブパネルに表示されるデータフィールドに適用されるフィルタとして用いられてよい。例えばユーザがビジュアライゼーション606からビジュアライゼーションを選択した場合、モデリングエンジンは、データフィールドが、選択されたビジュアライゼーションに関連付けられるデータモデルに含まれていない限り、タブパネルからデータフィールドを削除するように構成され得る。いくつかの実施形態では、追加のビジュアライゼーションが選択されると、それらの選択されたビジュアライゼーションに関連付けられるデータフィールドが、タブパネルに追加され得る。
したがって、いくつかの実施形態では、ユーザは、基礎となるデータソース、データモデル等について深い知識又は理解を有することなく、データモデル、データフィールド、ビジュアライゼーション等を迅速かつ直感的に探索することが可能となり得る。
いくつかの実施形態では、モデリングエンジンは、図5A~図5E等で説明されるように、ビジュアライゼーション606から選択されたビジュアライゼーションを自動データモデル生成のために選択又はアクティブ化することが可能になるように構成され得る。
一般化された動作
図7~図10は、様々な実施形態の1つ以上による、自動データモデル生成のための一般化された動作を表す。様々な実施形態の1つ以上において、図7~図10と関連して説明されるプロセス700、800、900及び1000は、図3のネットワークコンピュータ300のような単一のネットワークコンピュータ上の1つ以上のプロセッサによって実装又は実行され得る。他の実施形態において、これらのプロセス又はその一部は、図3のネットワークコンピュータ300のような複数のネットワークコンピュータによって実装又は実行され得る。更に他の実施形態において、これらのプロセス又はその一部は、クラウドベース環境のような1つ以上の仮想化コンピュータによって実装又は実行され得る。しかしながら、実施形態はそのように限定されず、ネットワークコンピュータ、クライアントコンピュータ等の様々な組合せが利用されてもよい。さらに、様々な実施形態の1つ以上において、図7~図10と組み合わせて説明されるプロセスは、図4~図6と組み合わせて説明されるような様々な実施形態又はアーキテクチャの少なくとも1つによる自動データモデル生成に使用されてもよい。さらに、様々な実施形態の1つ以上において、プロセス700、800、900及び1000によって実行されるアクションの一部又はすべては、1つ以上のネットワークコンピュータの1つ以上のプロセッサ上で動作するモデリングエンジン322、ビジュアライゼーションエンジン324等によって部分的に実行されてもよい。
図7~図10は、様々な実施形態の1つ以上による、自動データモデル生成のための一般化された動作を表す。様々な実施形態の1つ以上において、図7~図10と関連して説明されるプロセス700、800、900及び1000は、図3のネットワークコンピュータ300のような単一のネットワークコンピュータ上の1つ以上のプロセッサによって実装又は実行され得る。他の実施形態において、これらのプロセス又はその一部は、図3のネットワークコンピュータ300のような複数のネットワークコンピュータによって実装又は実行され得る。更に他の実施形態において、これらのプロセス又はその一部は、クラウドベース環境のような1つ以上の仮想化コンピュータによって実装又は実行され得る。しかしながら、実施形態はそのように限定されず、ネットワークコンピュータ、クライアントコンピュータ等の様々な組合せが利用されてもよい。さらに、様々な実施形態の1つ以上において、図7~図10と組み合わせて説明されるプロセスは、図4~図6と組み合わせて説明されるような様々な実施形態又はアーキテクチャの少なくとも1つによる自動データモデル生成に使用されてもよい。さらに、様々な実施形態の1つ以上において、プロセス700、800、900及び1000によって実行されるアクションの一部又はすべては、1つ以上のネットワークコンピュータの1つ以上のプロセッサ上で動作するモデリングエンジン322、ビジュアライゼーションエンジン324等によって部分的に実行されてもよい。
図7は、様々な実施形態の1つ以上による、自動データモデル生成のためのプロセス700の概要フローチャートを示す。開始ブロックの後、開始ブロック702において、様々な実施形態の1つ以上では、データソース又は1つ以上のデータモデルが、モデリングエンジンに提供され得る。様々な実施形態の1つ以上では、組織は、ビジュアライゼーションに使用されていた様々なデータソースに基づいて、多くのデータモデルを有することがある。様々な実施形態の1つ以上では、これらのデータモデル又はデータソースは、異なる部門(departments)又は作成者によって提供され得る。場合によっては、これらのデータモデルの一部又は多くは、他のユーザには知られていないことがある。したがって、いくつかの実施形態では、組織から他のデータモデルへのアクセスを提供することにより、モデリングエンジンが、それらのデータモデルに含めるべきデータフィールド又はデータオブジェクトに関する推奨を生成することを可能にし得る。
様々な実施形態の1つ以上において、モデリングエンジンは、1つ以上のデータソース又はデータモデルを特定のユーザ又はユーザグループに制限するように構成され得る。例えば一部のデータモデル又はデータソースは、特定の部門又は特定の役割に属する従業員に制限されることがある。したがって、いくつかの実施形態では、モデリングエンジンは、構成情報を介して提供されるルール、命令、アクセスリスト等を用いて、どのユーザが、所与のデータモデル又はデータソースにアクセスすることを許可され得るかを決定するように構成され得る。
ブロック704において、様々な実施形態の1つ以上では、モデリングエンジンは、1つ以上のモデルパネル、1つ以上のディスプレイパネル等を含み得るユーザインタフェースを生成するように構成され得る。
様々な実施形態の1つ以上において、ユーザインタフェースは、候補データフィールド、検索結果、ワーキングデータモデル等のような情報を表示するためのモデルパネルを含む、様々な異なるパネルを含み得る。
様々な実施形態の1つ以上において、ディスプレイパネルは、推奨されるビジュアライゼーション又はビジュアライゼーションタイプ、追加フィールド等に関連付けられるサムネイルを表示するために用いられてよい。また、いくつかの実施形態において、モデリングエンジンは、ワーキングビジュアライゼーション又はワーキングデータモデルが設計されている間、ディスプレイパネルを用いてワーキングビジュアライゼーションを表示するように構成され得る。
様々な実施形態の1つ以上において、ユーザインタフェース又はユーザインタフェース内のパネルの特定のレイアウトは、ローカルプリファレンスに応じて異なってよい。したがって、いくつかの実施形態において、モデリングエンジンは、構成情報を介して提供されるテンプレート、ルール、レイアウト情報、スタイリング等を用いて、ユーザインタフェースのレイアウト、外観又はスタイリングを決定するように構成され得る。
ブロック706において、様々な実施形態の1つ以上では、モデリングエンジンは、ユーザインタフェースのモデルパネルに表示され得る1つ以上の検索式に基づいて、1つ以上のデータフィールドを決定するように構成され得る。上述のように、モデリングエンジンは、様々なエバリュエータ又は推奨モデルを用いて、検索式に基づいて1つ以上の候補データフィールドを決定するように構成され得る。
ブロック708において、様々な実施形態の1つ以上では、モデリングエンジンは、モデルパネルによって提供される1つ以上のデータフィールドを含むワーキングデータモデルを生成するように構成され得る。候補データフィールドが選択され得ると、モデリングエンジンは、選択された候補データフィールドとそれらに関連するデータオブジェクトをワーキングデータモデルに追加し得る。このコンテキストでは、ワーキングデータモデルは、ユーザがアクティブにモデリングしているデータモデルである。
ブロック710において、様々な実施形態の1つ以上では、モデリングエンジンは、ワーキングデータモデルに基づいて、1つ以上の推奨されるビジュアライゼーション、ビジュアライゼーションタイプ、他のデータフィールド等を決定するように構成され得る。ワーキングデータモデルが開発されると、モデリングエンジンは、他のデータモデル、他のビジュアライゼーション、他のクエリ等を自動的に評価し、ワーキングデータモデルに含めるための1つ以上の推奨を提供するように構成され得る。様々な実施形態の1つ以上において、モデリングエンジンは、ワーキングデータモデルと、以前に作成されたビジュアライゼーション又はデータモデルとに基づいて、ビジュアライゼーションタイプ、ビジュアライゼーション、含めるべき追加フィールド、追加クエリ等のうちの1つ以上を推奨し得る。
ブロック712において、様々な実施形態の1つ以上では、モデリングエンジンは、ワーキングデータモデルに基づいてワーキングビジュアライゼーションを生成するように構成され得る。様々な実施形態の1つ以上において、ユーザは、ワーキングデータモデルと対話するとき、1つ以上のワーキングビジュアライゼーションを選択又はアクティブ化し得る。いくつかの実施形態において、ユーザは、モデリングエンジンによって推奨されるビジュアライゼーション又はビジュアライゼーションタイプのうちの1つ以上から又はそれらに基づいてワーキングビジュアライゼーションを選択し得る。あるいは、いくつかの実施形態において、ユーザは、別の検索ツール又は検索カタログを介してワーキングビジュアライゼーション又はビジュアライゼーションタイプを選択し得る。
次に、様々な実施形態の1つ以上において、制御を呼び出しプロセスに戻すことができる。
図8は、様々な実施形態の1つ以上による、自動データモデル生成のためのプロセス800のフローチャートを示している。開始ブロックの後、開始ブロック802において、様々な実施形態の1つ以上では、データソース、1つ以上のデータモデル、モデルパネル、ディスプレイパネル等が、ユーザインタフェースに提供又は表示され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、ユーザが、他のデータモデルの一部であり得る候補データフィールドを識別するために用いられ得る1つ以上の検索式を提供することを可能にする、1つ以上の検索コントロールを提供するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、外部サービス又はアプリケーションが、検索式を提示するか又は検索結果情報を受信することを可能にする、1つ以上のAPIを提供するように構成され得る。
決定ブロック804において、様々な実施形態の1つ以上では、検索式が提供され得る場合、制御はブロック806に流れてよく、そうでない場合、制御は決定ブロック804にループバックしてよい。様々な実施形態の1つ以上において、モデリングエンジンは、様々なクエリタイプ又はクエリ言語をサポートするように構成され得る。いくつかの実施形態において、モデリングエンジンは、2つ以上の他の検索式から構成され得る複合検索式をサポートするように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、様々なクエリ言語、形式文法等に基づく可能性がある、検索式をサポートするように構成され得る。例えばいくつかの実施形態において、モデリングエンジンは、SQL類似の検索式、正規表現、ブール式、カスタムクエリ言語等をサポートするように構成され得る。したがって、様々な実施形態の1つ以上において、モデリングエンジンは、ローカル環境又はローカル要件を考慮して構成情報を介して提供されるルール、文法、パーサ等を用いるように構成され得る。
ブロック806において、様々な実施形態の1つ以上では、モデリングエンジンは、検索式に一致する1つ以上の候補データフィールドを決定するように構成され得る。様々な実施形態の1つ以上において、モデリングエンジンは、1つ以上のデータフィールドを決定するために実行され得る1つ以上のクエリアクションへと検索式を解析又は解釈するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、データフィールド及び検索式に関連付けられる値の一致に基づいて、他のデータモデル内の1つ以上のデータフィールドを決定するように構成され得る。例えばいくつかの実施形態では、検索式が「Washington」という語である場合、モデリングエンジンは、「Washington」という語を含む値を有するデータフィールドのセットを決定し得る。同様に、例えば「Washington OR Oregon」を含む検索式を用いて、ワシントン又はオレゴンに一致し得る値を有するデータフィールドを識別し得る。また、例えばいくつかの実施形態では、「^Washing.*」等のような正規表現に基づく検索式は、「Washington」の値を有するデータフィールド及び「Washing Machine」の値を有するデータフィールドのような、「Washing」で始まる値を有するデータフィールドを識別するために用いられ得る。また、様々な実施形態の1つ以上において、モデリングエンジンは、カスタム検索語又は文法をサポートするように構成され得る。
ブロック808において、様々な実施形態の1つ以上では、モデリングエンジンは、1つ以上の候補データフィールドに関連付けられる1つ以上のメトリクスを生成するように構成され得る。様々な実施形態の1つ以上において、モデリングエンジンは、ユーザが、候補データフィールドをワーキングデータモデルに追加すべきかどうかを判断することを可能にするコンテキストを提供し得る、1つ以上のメトリクスを決定又は生成するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、データフィールド、データソース情報(例えば列名、テーブル名、データベース名等)等を含むか又は参照するビジュアライゼーションの数のようなメトリクスを提供するように構成され得る。いくつかの実施形態では、他のメトリクスは、最後に使用又は表示されてからの日付、データフィールドを含むか又は参照するデータモデルの数等を含み得る。
ブロック810において、様々な実施形態の1つ以上では、モデリングエンジンは、1つ以上のメトリクスに基づいて候補データフィールドをランク付けする(rank order)ように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、ランキング値又はランキングスコアを提供するために実行され得る1つ以上のエバリュエータ又は推奨モデルを含むように構成され得る。様々な実施形態の1つ以上において、ランキングスコアは、暗黙的であり得るか又は先週のビューの数等のような他のメトリクスに基づいてよい。したがって、いくつかの実施形態において、ランキングスコアが候補データフィールドに関連付けられる場合、そのスコアを用いて、候補データフィールドを他の候補データフィールドに対してランク付けすることができる。あるいは、様々な実施形態の1つ以上において、モデリングエンジンは、候補データフィールドを、それらの関連するメトリクス又は関連する候補データフィールドの他の特性に基づいて、直接的にランク付け及びソートするように構成され得る。
ブロック812において、様々な実施形態の1つ以上では、モデリングエンジンは、モデルパネル内に1つ以上の候補フィールドを表示するように構成され得る。様々な実施形態の1つ以上において、モデリングエンジンは、決定された候補データフィールドの一部又はすべてをユーザインタフェースに表示し得る。いくつかの実施形態では、候補データフィールドがモデルパネルに表示されてよい。
様々な実施形態の1つ以上において、モデリングエンジンは、一部又はすべての候補データフィールドが閾値ランク値未満にランク付けされている場合、これらの候補データフィールドを表示から除外するように構成され得る。また、様々な実施形態の1つ以上において、ランキングとは別の追加基準を用いて、どの候補データフィールドを表示することができるか又はどの候補データフィールドを表示から除外することができるかを決定することができる。例えばモデリングエンジンは、120日以上使用されていないままの候補データフィールド等を除外するよう構成され得る。
次に、様々な実施形態の1つ以上において、制御を呼び出しプロセスに戻すことができる。
図9は、様々な実施形態の1つ以上による、自動データモデル生成のためのプロセス900のフローチャートを示している。開始ブロックの後、開始ブロック902において、様々な実施形態の1つ以上では、候補データフィールドが提供され得る。上述のように、モデリングエンジンは、ワーキングデータモデルに含めるために、モデルパネルに表示される1つ以上のデータフィールドを評価することを可能にするように構成され得る。
ブロック904において、様々な実施形態の1つ以上では、モデリングエンジンは、選択されたデータフィールドに基づいて1つ以上の推奨されるビジュアライゼーションを決定するように構成され得る。上述のように、モデリングエンジンは、1つ以上のアクションを実施して、推奨すべき1つ以上のビジュアライゼーション又はビジュアライゼーションタイプを決定するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、1つ以上の推奨モデルを用いて、推奨されるビジュアライゼーションのセットを決定するように構成され得る。
様々な実施形態の1つ以上において、選択されたデータフィールドのデータ型は、静的ルール又はデフォルトに基づいて特定のビジュアライゼーションタイプに関連付けられ得る。また、様々な実施形態の1つ以上において、ビジュアライゼーションタイプの1つ以上は、選択されたデータフィールド又は存在する場合にワーキングデータモデル内に存在し得る他のデータフィールドに基づいて決定され得る。
ブロック906において、様々な実施形態の1つ以上において、モデリングエンジンは、ワーキングデータモデルに含めることが推奨され得る1つ以上の一般的な(common)又はポピュラー(popular)データフィールドを決定するように構成され得る。上述のように、モデリングエンジンは、1つ以上のアクションを実施して、推奨すべき1つ以上のデータフィールドを決定するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、1つ以上の推奨モデルを用いて、推奨されるデータフィールドのセットを決定するように構成され得る。
様々な実施形態の1つ以上において、推奨されるデータフィールドの1つ以上は、選択されたデータフィールド又は存在する場合にワーキングデータモデル内に存在し得る他のデータフィールドに基づいて決定され得る。
ブロック908において、様々な実施形態の1つ以上では、モデリングエンジンは、提供されたデータフィールド又はワーキングデータモデルに基づいて、1つ以上の一般的な質問又は一般的なクエリを決定するように構成され得る。推奨されるビジュアライゼーション又は推奨されるデータフィールドを決定することと同様に、モデリングエンジンは、1つ以上の推奨モデルを用いて、ユーザの関心を引く可能性がある1つ以上の質問又はクエリを決定するように構成され得る。
ブロック910において、様々な実施形態の1つ以上では、モデリングエンジンは、推奨されるビジュアライゼーション、ビジュアライゼーションタイプ、推奨されるポピュラーデータフィールド、推奨される質問又はクエリ等について、1つ以上のサムネイルを表示するように構成され得る。
決定ブロック912において、様々な実施形態の1つ以上では、サムネイルが選択され得る場合、制御はブロック914に流れてよく、そうでない場合、制御はブロック910にループバックしてよい。様々な実施形態の1つ以上において、ユーザは、サムネイルの1つ以上を選択することを可能にされ得る。場合によっては、当該選択は、モデルパネルからデータフィールドを選択し、それをサムネイルのうちの1つに関連付けることによって行われてよい。例えばユーザインタフェースは、ユーザが、ワーキングデータモデルから推奨サムネイルのうちの1つ以上にデータフィールドをドラッグアンドドロップすることを可能にし得る。
ブロック914において、様々な実施形態の1つ以上では、モデリングエンジンは、選択されたサムネイル及びワーキングデータモデルに基づいて、ワーキングビジュアライゼーションを生成して表示するように構成され得る。様々な実施形態の1つ以上において、モデリングエンジンが、ワーキングビジュアライゼーションを生成するのに十分な情報を提供している場合、そのようにすることができる。いくつかの実施形態では、ワーキングデータモデルを提供し、データフィールドを推奨サムネイルに関連付けることは、ワーキングビジュアライゼーションを生成して表示するために十分な情報を提供し得る。
図10は、様々な実施形態の1つ以上による、自動データモデル生成のためのプロセス1000のフローチャートを示している。開始ブロックの後、開始ブロック1002において、様々な実施形態の1つ以上では、モデリングエンジンは、1つ以上の一般的な/ポピュラーデータフィールド(以下、ポピュラーデータフィールドと呼ぶ)を、ユーザインタフェース上のタブパネル内に表示するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、1つ以上のエバリュエータ又は推奨モデルを用いて、タブパネル内に表示され得る1つ以上のポピュラーフィールドを識別するように構成され得る。いくつかの実施形態では、「ポピュラリティ(popularity)」は、データフィールドを含むか又は参照し得るデータモデル、ビジュアライゼーション等の数のような1つ以上のメトリクス又は特性に基づいて決定され得る。同様に、いくつかの実施形態では、ポピュラリティは、所与のデータフィールドを含むか又は参照するビジュアライゼーションをユーザが採用するか又は表示する回数に部分的に基づいて決定され得る。
いくつかの実施形態では、ワーキングデータモデルが利用可能であるか又は参照され得る場合、モデリングエンジンは、ワーキングデータモデルの1つ以上の特性を用いてポピュラーデータフィールドを決定するように構成され得る。
様々な実施形態の1つ以上において、ポピュラーデータフィールドは、ユーザがタブパネルからポピュラーデータフィールドの1つ以上を選択することを可能にする対話型ユーザインタフェースコントロールを使用して、タブパネルに表示され得る。いくつかの実施形態において、そのようなユーザインタフェースコントロールは、ボタン、リストボックス等を含み得る。
様々な実施形態の1つ以上において、モデリングエンジンは、構成情報を介して提供されるルール又は命令を用いて、ポピュラーデータフィールドを識別するために使用されるエバリュエータ又は推奨モデルを決定するように構成され得る。同様に、いくつかの実施形態では、モデリングエンジンは、ローカル環境又はローカル要件を考慮して構成情報に基づいて、ソート順、ポピュラリティ閾値、タブパネルレイアウト等を決定するように構成され得る。
ブロック1004において、様々な実施形態の1つ以上では、モデリングエンジンは、ディスプレイパネル内の1つ以上のポピュラーデータフィールドに関連付けられるビジュアライゼーションの1つ以上のサムネイルを表示するように構成され得る。様々な実施形態の1つ以上において、モデリングエンジンは、ポピュラーフィールドの1つ以上を含むか又は参照するデータモデルを用いる、1つ以上のビジュアライゼーションを決定するように構成され得る。また、様々な実施形態の1つ以上において、多くの関連するビジュアライゼーションが存在し得る場合、モデリングエンジンは、様々な基準に基づいてビジュアライゼーションをランク付けするように構成され得る。したがって、様々な実施形態の1つ以上において、所与のランク未満であり得るビジュアライゼーションは、表示から除外され得る。例えばいくつかの実施形態では、2つ以上のデータフィールドを含むか又は参照するビジュアライゼーションは、ポピュラーデータフィールドのうちの1つだけを含むか参照するビジュアライゼーションよりも、表示のために考慮され得る。
したがって、様々な実施形態の1つ以上において、モデリングエンジンは、1つ以上の推奨モデルを用いて、どのビジュアライゼーションを、表示されたビジュアライゼーションサムネイルのセットに含めるべきかを決定するように構成され得る。
様々な実施形態の1つ以上において、モデリングエンジンは、ローカル要件又はローカル環境を考慮して構成情報を介して提供されるルール又は指示に基づいて、どのビジュアライゼーションを含めるべきかを決定するように構成され得る。
決定ブロック1006において、様々な実施形態の1つ以上では、1つ以上のデータフィールドがタブパネルから選択され得る場合、制御はブロック1008に流れてよく、そうでない場合、制御はブロック1004にループバックしてよい。いくつかの実施形態では、ポピュラーデータフィールドが選択され得るとき、モデリングエンジンは、ポピュラーデータフィールド、タブパネル等の外観又はスタイリングを変更して、選択されていないデータフィールドよりも選択されたポピュラーデータフィールドを強調するように構成され得る。例えば選択されたデータフィールドをタブパネルの片側に移動させてよく、あるいはそれらの外観を変更して、それらのデータフィールドが選択されていることを示してもよい。
ブロック1008において、様々な実施形態の1つ以上では、モデリングエンジンは、提供されたデータフィールドに関連付けられる1つ以上のビジュアライゼーションを決定するように構成され得る。ブロック1004で説明されたアクションと同様に、モデリングエンジンは、現在選択されているポピュラーデータフィールドに基づいて、1つ以上のビジュアライゼーションを選択するように構成され得る。様々な実施形態の1つ以上において、選択されたポピュラーデータフィールドをフィルタとして適用して、表示すべき1つ以上のビジュアライゼーションを決定することができる。また、いくつかの実施形態では、選択されたポピュラーデータフィールドをフィルタとして使用して、1つ以上のビジュアライゼーションを除外してもよい。
様々な実施形態の1つ以上では、モデリングエンジンは、選択されたポピュラーデータフィールドを含むか又は参照する1つ以上のビジュアライゼーションを決定するように構成され得る。
ブロック1010において、様々な実施形態の1つ以上では、モデリングエンジンは、ディスプレイパネルに表示され得るビジュアライゼーションを更新するように構成され得る。様々な実施形態の1つ以上において、モデリングエンジンは、フィルタ内の1つ以上のポピュラーデータフィールドに関連付けられ得る1つ以上のビジュアライゼーションを含むように、推奨されるビジュアライゼーションを自動的に更新するように構成され得る。同様に、いくつかの実施形態では、フィルタ内の1つ以上のポピュラーデータフィールドに関連付けられ得ない1つ以上のビジュアライゼーションが、表示から除外され得る。
決定ブロック1012において、様々な実施形態の1つ以上では、ビジュアライゼーションが選択され得る場合、制御はブロック1014に流れてよく、そうでない場合、制御は1002にループバックしてよい。様々な実施形態のうちの1つ以上において、ユーザは、表示されたビジュアライゼーションサムネイルからビジュアライゼーションを選択することを可能にされ得る。
ブロック1014において、様々な実施形態の1つ以上では、モデリングエンジンは、1つ以上の選択されたビジュアライゼーションに基づいて、タブパネルに表示すべき1つ以上のデータフィールドを決定するように構成され得る。
様々な実施形態の1つ以上において、ビジュアライゼーションが選択され得るとき、モデリングエンジンは、選択されたビジュアライゼーションに関連付けられるデータモデルによって含まれ得るか又は参照され得る1つ以上のデータフィールドを決定し得る。
様々な実施形態の1つ以上において、モデリングエンジンは、ユーザインタフェース機能又はスタイリングを用いて、タブパネル内のデータフィールドが、選択されたビジュアライゼーションの1つ以上に関連付けられ得るかどうかを示すように構成され得る。
次に、様々な実施形態の1つ以上において、制御を呼び出しプロセスに戻すことができる。
各フローチャート図の各ブロック及び各フローチャート図のブロックの組合せを、コンピュータプログラム命令によって実装することができることが理解されよう。これらのプログラム命令は、プロセッサで実行される命令が、各フローチャートブロック又は複数のブロックで指定されたアクションを実装するための手段を作成するように機械を生成するためにプロセッサに提供され得る。コンピュータプログラム命令は、プロセッサによって実行されて、プロセッサ上で実行される一連の動作ステップに、各フローチャートブロック又は複数のブロックで指定されたアクションを実装するためのステップを提供するようにコンピュータ実装プロセスを生成させることができる。コンピュータプログラム命令はまた、各フローチャートのブロックに示される動作ステップの少なくとも一部を並行して実行させることもできる。さらに、ステップの一部は、マルチプロセッサのコンピュータシステムにおいて起こり得るように、複数のプロセッサにわたって実行されることもある。加えて、各フローチャート図の1つ以上のブロック又はブロックの組合せはまた、本発明の範囲又は精神から逸脱することなく、他のブロック又はブロックの組合せと同時に、あるいは図示される順序とは異なる順序でも実行されることがある。
したがって、各フローチャート図の各ブロックは、指定されたアクションを実行するための手段の組合せ、指定されたアクションを実行するためのステップの組合せ及び指定されたアクションを実行するためのプログラム指示手段をサポートする。また、各フローチャート図の各ブロック及び各フローチャート図のブロックの組合せを、指定されたアクション又はステップを実行する特別な目的のハードウェアベースのシステム又は特別な目的のハードウェアとコンピュータ命令の組合せによって実装することができることも理解されよう。上記の例は、限定的又は網羅的と解釈されるべきではなく、むしろ、本発明の様々な実施形態の少なくとも1つの実装を示す例示的な使用ケースである。
さらに、1つ以上の実施形態(図示せず)において、例示的なフローチャートのロジックは、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルアレイロジック(PAL)等又はそれらの組合せのようなCPUの代わりに、組み込みロジックハードウェアデバイスを使用して実行され得る。組み込みロジックハードウェアデバイスは、その組み込みロジックを直接実行してアクションを実施することができる。1つ以上の実施形態では、マイクロコントローラは、それ自体の組み込みロジックを直接実行してアクションを実施し、システムオンチップ(SOC)のようにそれ自体の内部メモリ及びそれ自体の外部入出力インタフェース(例えばハードウェアピン又は無線トランシーバ)にアクセスして、アクションを実施するよう構成され得る。
Claims (20)
- 命令を実行してアクションを実施する1つ以上のプロセッサを使用して、データのビジュアライゼーションを管理するための方法であって、
データソース、モデルパネル及びディスプレイパネルを提供するステップであって、前記データソースは、各々が複数のデータフィールドを含む1つ以上のデータモデルに関連付けられる、ステップと、
提供された検索式に応答して、更なるアクションを実施するステップであって、
前記検索式と前記1つ以上のデータモデルとに基づいて、1つ以上の候補データフィールドを決定するステップであって、各候補データフィールドに関連付けられる1つ以上の値は、前記提供された検索式と一致し、前記1つ以上の候補データフィールドが前記モデルパネルに表示される、ステップと;
前記1つ以上の候補データフィールドの一部に基づいてワーキングデータモデルを生成するステップであって、前記1つ以上の候補データフィールドの前記一部は、前記ワーキングデータモデルに含まれる、ステップと、
1つ以上の推奨モデルと前記ワーキングデータモデルとに基づいて、1つ以上のビジュアライゼーションを決定するステップであって、前記1つ以上のビジュアライゼーションの一部は、前記ワーキングデータモデル及び前記1つ以上のビジュアライゼーションに含まれる1つ以上の共有データフィールドに基づいて決定され、前記1つ以上のビジュアライゼーションが前記ディスプレイパネル内にリストされる、ステップと、
前記ディスプレイパネル内にリストされたビジュアライゼーションと前記ワーキングデータモデルとに基づいて、ワーキングビジュアライゼーションを生成するステップであって、前記ワーキングデータモデルに含まれる1つ以上のデータフィールドは、前記ワーキングビジュアライゼーションに関連付けられる、ステップと、
を含む、更なるアクションを実施するステップと、
1つ以上の他の候補データフィールドを含むように前記ワーキングデータモデルを更新することに応答して、前記更新されたワーキングデータモデルに基づいて、前記1つ以上の候補データフィールド、1つ以上の推奨されるビジュアライゼーション又は前記ワーキングビジュアライゼーションを更新するステップと、
を含む、方法。 - 前記ワーキングモデル内の1つ以上のデータフィールド及び1つ以上の他のビジュアライゼーションに含まれる別のデータフィールドとの関連付けに基づいて、1つ以上の推奨されるビジュアライゼーションを決定するステップであって、前記1つ以上の推奨されるビジュアライゼーションは、前記ディスプレイパネル内にリストされる、ステップと、
1つの推奨されるビジュアライゼーションの選択に応答して、他のデータフィールドを含むように前記更新されたワーキングモデルを更新するステップと、
を更に含む、請求項1に記載の方法。 - 前記1つ以上の候補データフィールドに関連付けられる1つ以上の特性を決定するステップであって、前記1つ以上の特性は、前記1つ以上の候補データフィールドを参照するビジュアライゼーションの数のカウント、前記1つ以上の候補データフィールドに関連付けられるデータソース情報又は前記1つ以上の候補データフィールドの値のサンプル、のうちの1つ以上を含む、ステップと、
各選択された1つ以上の候補データフィールドについて前記1つ以上の特性の1つ以上の部分をフィールド情報パネルに表示するステップと、
を更に含む、請求項1に記載の方法。 - 前記1つ以上の候補データフィールドから別の候補データフィールドを決定するステップと、
前記別の候補データフィールドを含むように前記ワーキングビジュアライゼーションを更新するステップと、
前記別の候補データフィールドを含むように前記ワーキングデータモデルを更新するステップと、
を更に含む、請求項1に記載の方法。 - 前記1つ以上のデータモデルに基づいて1つ以上のポピュラーデータフィールドを決定するステップであって、前記1つ以上のポピュラーデータフィールドは、該1つ以上のポピュラーデータフィールドに関連付けられる1つ以上のメトリクスに基づいて決定され、前記1つ以上のポピュラーフィールドがタブパネルに表示される、ステップと、
前記1つ以上のポピュラーデータフィールドに基づいて1つ以上のポピュラービジュアライゼーションのコレクションを決定するステップであって、前記1つ以上のポピュラービジュアライゼーションは、前記ディスプレイパネルに表示される、ステップと、
前記1つ以上のポピュラーデータフィールドの一部を決定するステップであって、前記1つ以上のポピュラーデータフィールドの前記一部は、ユーザによって選択される、ステップと、
前記1つ以上のポピュラーフィールドの前記一部に基づいて、前記1つ以上のポピュラービジュアライゼーションのコレクションを修正するステップであって、前記1つ以上のポピュラーデータフィールドの前記一部に関連付けられる各ポピュラービジュアライゼーションは、前記コレクションに含まれ、前記1つ以上のポピュラーフィールドの前記一部に関連付けられない各ポピュラービジュアライゼーションは前記コレクションから除外される、ステップと、
を更に含む、請求項1に記載の方法。 - データのビジュアライゼーションを管理するための命令を含むプロセッサ読取可能な非一時的な記憶媒体であって、1つ以上のプロセッサによる前記命令の実行は、
データソース、モデルパネル及びディスプレイパネルを提供するステップであって、前記データソースは、各々が複数のデータフィールドを含む1つ以上のデータモデルに関連付けられる、ステップと、
提供された検索式に応答して、更なるアクションを実施するステップであって、
前記検索式と前記1つ以上のデータモデルとに基づいて、1つ以上の候補データフィールドを決定するステップであって、各候補データフィールドに関連付けられる1つ以上の値は、前記提供された検索式と一致し、前記1つ以上の候補データフィールドが前記モデルパネルに表示される、ステップと;
前記1つ以上の候補データフィールドの一部に基づいてワーキングデータモデルを生成するステップであって、前記1つ以上の候補データフィールドの前記一部は、前記ワーキングデータモデルに含まれる、ステップと、
1つ以上の推奨モデルと前記ワーキングデータモデルとに基づいて、1つ以上のビジュアライゼーションを決定するステップであって、前記1つ以上のビジュアライゼーションの一部は、前記ワーキングデータモデル及び前記1つ以上のビジュアライゼーションに含まれる1つ以上の共有データフィールドに基づいて決定され、前記1つ以上のビジュアライゼーションが前記ディスプレイパネル内にリストされる、ステップと、
前記ディスプレイパネル内にリストされたビジュアライゼーションと前記ワーキングデータモデルとに基づいて、ワーキングビジュアライゼーションを生成するステップであって、前記ワーキングデータモデルに含まれる1つ以上のデータフィールドは、前記ワーキングビジュアライゼーションに関連付けられる、ステップと、
を含む、更なるアクションを実施するステップと、
1つ以上の他の候補データフィールドを含むように前記ワーキングデータモデルを更新することに応答して、前記更新されたワーキングデータモデルに基づいて、前記1つ以上の候補データフィールド、1つ以上の推奨されるビジュアライゼーション又は前記ワーキングビジュアライゼーションを更新するステップと、
を含むアクションを実施する、プロセッサ読取可能な非一時的な記憶媒体。 - 前記ワーキングモデル内の1つ以上のデータフィールド及び1つ以上の他のビジュアライゼーションに含まれる別のデータフィールドとの関連付けに基づいて、1つ以上の推奨されるビジュアライゼーションを決定するステップであって、前記1つ以上の推奨されるビジュアライゼーションは、前記ディスプレイパネル内にリストされる、ステップと、
1つの推奨されるビジュアライゼーションの選択に応答して、他のデータフィールドを含むように前記更新されたワーキングモデルを更新するステップと、
を更に含む、請求項6に記載の媒体。 - 前記1つ以上の候補データフィールドに関連付けられる1つ以上の特性を決定するステップであって、前記1つ以上の特性は、前記1つ以上の候補データフィールドを参照するビジュアライゼーションの数のカウント、前記1つ以上の候補データフィールドに関連付けられるデータソース情報又は前記1つ以上の候補データフィールドの値のサンプル、のうちの1つ以上を含む、ステップと、
各選択された1つ以上の候補データフィールドについて前記1つ以上の特性の1つ以上の部分をフィールド情報パネルに表示するステップと、
を更に含む、請求項6に記載の媒体。 - 前記1つ以上の候補データフィールドから別の候補データフィールドを決定するステップと、
前記別の候補データフィールドを含むように前記ワーキングビジュアライゼーションを更新するステップと、
前記別の候補データフィールドを含むように前記ワーキングデータモデルを更新するステップと、
を更に含む、請求項6に記載の媒体。 - 前記1つ以上のデータモデルに基づいて1つ以上のポピュラーデータフィールドを決定するステップであって、前記1つ以上のポピュラーデータフィールドは、該1つ以上のポピュラーデータフィールドに関連付けられる1つ以上のメトリクスに基づいて決定され、前記1つ以上のポピュラーフィールドがタブパネルに表示される、ステップと、
前記1つ以上のポピュラーデータフィールドに基づいて1つ以上のポピュラービジュアライゼーションのコレクションを決定するステップであって、前記1つ以上のポピュラービジュアライゼーションは、前記ディスプレイパネルに表示される、ステップと、
前記1つ以上のポピュラーデータフィールドの一部を決定するステップであって、前記1つ以上のポピュラーデータフィールドの前記一部は、ユーザによって選択される、ステップと、
前記1つ以上のポピュラーフィールドの前記一部に基づいて、前記1つ以上のポピュラービジュアライゼーションのコレクションを修正するステップであって、前記1つ以上のポピュラーデータフィールドの前記一部に関連付けられる各ポピュラービジュアライゼーションは、前記コレクションに含まれ、前記1つ以上のポピュラーフィールドの前記一部に関連付けられない各ポピュラービジュアライゼーションは前記コレクションから除外される、ステップと、
を更に含む、請求項6に記載の媒体。 - データのビジュアライゼーションを管理するためのシステムにおいて、
ネットワークコンピュータであって:
少なくとも命令を記憶するメモリと;
データソース、モデルパネル及びディスプレイパネルを提供するステップであって、前記データソースは、各々が複数のデータフィールドを含む1つ以上のデータモデルに関連付けられる、ステップと、
提供された検索式に応答して、更なるアクションを実施するステップであって、
前記検索式と前記1つ以上のデータモデルとに基づいて、1つ以上の候補データフィールドを決定するステップであって、各候補データフィールドに関連付けられる1つ以上の値は、前記提供された検索式と一致し、前記1つ以上の候補データフィールドが前記モデルパネルに表示される、ステップと;
前記1つ以上の候補データフィールドの一部に基づいてワーキングデータモデルを生成するステップであって、前記1つ以上の候補データフィールドの前記一部は、前記ワーキングデータモデルに含まれる、ステップと、
1つ以上の推奨モデルと前記ワーキングデータモデルとに基づいて、1つ以上のビジュアライゼーションを決定するステップであって、前記1つ以上のビジュアライゼーションの一部は、前記ワーキングデータモデル及び前記1つ以上のビジュアライゼーションに含まれる1つ以上の共有データフィールドに基づいて決定され、前記1つ以上のビジュアライゼーションが前記ディスプレイパネル内にリストされる、ステップと、
前記ディスプレイパネル内にリストされたビジュアライゼーションと前記ワーキングデータモデルとに基づいて、ワーキングビジュアライゼーションを生成するステップであって、前記ワーキングデータモデルに含まれる1つ以上のデータフィールドは、前記ワーキングビジュアライゼーションに関連付けられる、ステップと、
を含む、更なるアクションを実施するステップと、
1つ以上の他の候補データフィールドを含むように前記ワーキングデータモデルを更新することに応答して、前記更新されたワーキングデータモデルに基づいて、前記1つ以上の候補データフィールド、1つ以上の推奨されるビジュアライゼーション又は前記ワーキングビジュアライゼーションを更新するステップと、
を含むアクションを実施する命令を実行する、1つ以上のプロセッサと;
を含むネットワークコンピュータ;及び
クライアントコンピュータであって:
少なくとも命令を記憶するメモリと;
前記検索式を提供するステップと、
前記モデルパネルをハードウェアディスプレイに表示するステップと、
前記ディスプレイパネルを前記ハードウェアディスプレイに表示するステップと、
を含むアクションを実行する命令を実行する1つ以上のプロセッサと;
を含むクライアントコンピュータ;
を備える、システム。 - 前記ネットワークコンピュータの前記1つ以上のプロセッサは、
前記ワーキングモデル内の1つ以上のデータフィールド及び1つ以上の他のビジュアライゼーションに含まれる別のデータフィールドとの関連付けに基づいて、1つ以上の推奨されるビジュアライゼーションを決定するステップであって、前記1つ以上の推奨されるビジュアライゼーションは、前記ディスプレイパネル内にリストされる、ステップと、
1つの推奨されるビジュアライゼーションの選択に応答して、他のデータフィールドを含むように前記更新されたワーキングモデルを更新するステップと、
を更に含むアクションを実施する命令を実行する、請求項11に記載のシステム。 - 前記ネットワークコンピュータの前記1つ以上のプロセッサは、
前記1つ以上の候補データフィールドに関連付けられる1つ以上の特性を決定するステップであって、前記1つ以上の特性は、前記1つ以上の候補データフィールドを参照するビジュアライゼーションの数のカウント、前記1つ以上の候補データフィールドに関連付けられるデータソース情報又は前記1つ以上の候補データフィールドの値のサンプル、のうちの1つ以上を含む、ステップと、
各選択された1つ以上の候補データフィールドについて前記1つ以上の特性の1つ以上の部分をフィールド情報パネルに表示するステップと、
を更に含むアクションを実施する命令を実行する、請求項11に記載のシステム。 - 前記ネットワークコンピュータの前記1つ以上のプロセッサは、
前記1つ以上の候補データフィールドから別の候補データフィールドを決定するステップと、
前記別の候補データフィールドを含むように前記ワーキングビジュアライゼーションを更新するステップと、
前記別の候補データフィールドを含むように前記ワーキングデータモデルを更新するステップと、
を更に含むアクションを実施する命令を実行する、請求項11に記載のシステム。 - 前記ネットワークコンピュータの前記1つ以上のプロセッサは、
前記1つ以上のデータモデルに基づいて1つ以上のポピュラーデータフィールドを決定するステップであって、前記1つ以上のポピュラーデータフィールドは、該1つ以上のポピュラーデータフィールドに関連付けられる1つ以上のメトリクスに基づいて決定され、前記1つ以上のポピュラーフィールドがタブパネルに表示される、ステップと、
前記1つ以上のポピュラーデータフィールドに基づいて1つ以上のポピュラービジュアライゼーションのコレクションを決定するステップであって、前記1つ以上のポピュラービジュアライゼーションは、前記ディスプレイパネルに表示される、ステップと、
前記1つ以上のポピュラーデータフィールドの一部を決定するステップであって、前記1つ以上のポピュラーデータフィールドの前記一部は、ユーザによって選択される、ステップと、
前記1つ以上のポピュラーフィールドの前記一部に基づいて、前記1つ以上のポピュラービジュアライゼーションのコレクションを修正するステップであって、前記1つ以上のポピュラーデータフィールドの前記一部に関連付けられる各ポピュラービジュアライゼーションは、前記コレクションに含まれ、前記1つ以上のポピュラーフィールドの前記一部に関連付けられない各ポピュラービジュアライゼーションは前記コレクションから除外される、ステップと、
を更に含むアクションを実施する命令を実行する、請求項11に記載のシステム。 - データのビジュアライゼーションを管理するためのネットワークコンピュータであって、
少なくとも命令を記憶するメモリと;
データソース、モデルパネル及びディスプレイパネルを提供するステップであって、前記データソースは、各々が複数のデータフィールドを含む1つ以上のデータモデルに関連付けられる、ステップと、
提供された検索式に応答して、更なるアクションを実施するステップであって、
前記検索式と前記1つ以上のデータモデルとに基づいて、1つ以上の候補データフィールドを決定するステップであって、各候補データフィールドに関連付けられる1つ以上の値は、前記提供された検索式と一致し、前記1つ以上の候補データフィールドが前記モデルパネルに表示される、ステップと;
前記1つ以上の候補データフィールドの一部に基づいてワーキングデータモデルを生成するステップであって、前記1つ以上の候補データフィールドの前記一部は、前記ワーキングデータモデルに含まれる、ステップと、
1つ以上の推奨モデルと前記ワーキングデータモデルとに基づいて、1つ以上のビジュアライゼーションを決定するステップであって、前記1つ以上のビジュアライゼーションの一部は、前記ワーキングデータモデル及び前記1つ以上のビジュアライゼーションに含まれる1つ以上の共有データフィールドに基づいて決定され、前記1つ以上のビジュアライゼーションが前記ディスプレイパネル内にリストされる、ステップと、
前記ディスプレイパネル内にリストされたビジュアライゼーションと前記ワーキングデータモデルとに基づいて、ワーキングビジュアライゼーションを生成するステップであって、前記ワーキングデータモデルに含まれる1つ以上のデータフィールドは、前記ワーキングビジュアライゼーションに関連付けられる、ステップと、
を含む、更なるアクションを実施するステップと、
1つ以上の他の候補データフィールドを含むように前記ワーキングデータモデルを更新することに応答して、前記更新されたワーキングデータモデルに基づいて、前記1つ以上の候補データフィールド、1つ以上の推奨されるビジュアライゼーション又は前記ワーキングビジュアライゼーションを更新するステップと、
を含むアクションを実施する命令を実行する、1つ以上のプロセッサと;
を含む、ネットワークコンピュータ。 - 前記1つ以上のプロセッサは、
前記ワーキングモデル内の1つ以上のデータフィールド及び1つ以上の他のビジュアライゼーションに含まれる別のデータフィールドとの関連付けに基づいて、1つ以上の推奨されるビジュアライゼーションを決定するステップであって、前記1つ以上の推奨されるビジュアライゼーションは、前記ディスプレイパネル内にリストされる、ステップと、
1つの推奨されるビジュアライゼーションの選択に応答して、他のデータフィールドを含むように前記更新されたワーキングモデルを更新するステップと、
を更に含むアクションを実施する命令を実行する、請求項16に記載のネットワークコンピュータ。 - 前記1つ以上のプロセッサは、
前記1つ以上の候補データフィールドに関連付けられる1つ以上の特性を決定するステップであって、前記1つ以上の特性は、前記1つ以上の候補データフィールドを参照するビジュアライゼーションの数のカウント、前記1つ以上の候補データフィールドに関連付けられるデータソース情報又は前記1つ以上の候補データフィールドの値のサンプル、のうちの1つ以上を含む、ステップと、
各選択された1つ以上の候補データフィールドについて前記1つ以上の特性の1つ以上の部分をフィールド情報パネルに表示するステップと、
を更に含むアクションを実施する命令を実行する、請求項16に記載のネットワークコンピュータ。 - 前記1つ以上のプロセッサは、
前記1つ以上の候補データフィールドから別の候補データフィールドを決定するステップと、
前記別の候補データフィールドを含むように前記ワーキングビジュアライゼーションを更新するステップと、
前記別の候補データフィールドを含むように前記ワーキングデータモデルを更新するステップと、
を更に含むアクションを実施する命令を実行する、請求項16に記載のネットワークコンピュータ。 - 前記1つ以上のプロセッサは、
前記1つ以上のデータモデルに基づいて1つ以上のポピュラーデータフィールドを決定するステップであって、前記1つ以上のポピュラーデータフィールドは、該1つ以上のポピュラーデータフィールドに関連付けられる1つ以上のメトリクスに基づいて決定され、前記1つ以上のポピュラーフィールドがタブパネルに表示される、ステップと、
前記1つ以上のポピュラーデータフィールドに基づいて1つ以上のポピュラービジュアライゼーションのコレクションを決定するステップであって、前記1つ以上のポピュラービジュアライゼーションは、前記ディスプレイパネルに表示される、ステップと、
前記1つ以上のポピュラーデータフィールドの一部を決定するステップであって、前記1つ以上のポピュラーデータフィールドの前記一部は、ユーザによって選択される、ステップと、
前記1つ以上のポピュラーフィールドの前記一部に基づいて、前記1つ以上のポピュラービジュアライゼーションのコレクションを修正するステップであって、前記1つ以上のポピュラーデータフィールドの前記一部に関連付けられる各ポピュラービジュアライゼーションは、前記コレクションに含まれ、前記1つ以上のポピュラーフィールドの前記一部に関連付けられない各ポピュラービジュアライゼーションは前記コレクションから除外される、ステップと、
を更に含むアクションを実施する命令を実行する、請求項16に記載のネットワークコンピュータ。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/014,882 | 2020-09-08 | ||
US17/014,882 US11579760B2 (en) | 2020-09-08 | 2020-09-08 | Automatic data model generation |
PCT/US2021/049229 WO2022055846A1 (en) | 2020-09-08 | 2021-09-07 | Automatic data model generation |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023541584A true JP2023541584A (ja) | 2023-10-03 |
Family
ID=80469745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023515380A Pending JP2023541584A (ja) | 2020-09-08 | 2021-09-07 | 自動データモデル生成 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11579760B2 (ja) |
EP (1) | EP4211568A1 (ja) |
JP (1) | JP2023541584A (ja) |
CN (1) | CN116034353A (ja) |
WO (1) | WO2022055846A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11579760B2 (en) * | 2020-09-08 | 2023-02-14 | Tableau Software, LLC | Automatic data model generation |
US11823078B2 (en) * | 2020-09-25 | 2023-11-21 | International Business Machines Corporation | Connected insights in a business intelligence application |
Family Cites Families (118)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7068267B2 (en) * | 2003-04-14 | 2006-06-27 | Sas Institute Inc. | Computer-implemented system and method for handling linked data views |
US7010364B1 (en) | 2003-09-22 | 2006-03-07 | The Mathworks, Inc. | System and method for performing process visualization |
US7215337B2 (en) | 2003-12-18 | 2007-05-08 | Palo Alto Research Center Incorporated | Systems and methods for the estimation of user interest in graph theoretic structures |
US7814155B2 (en) | 2004-03-31 | 2010-10-12 | Google Inc. | Email conversation management system |
US8099674B2 (en) * | 2005-09-09 | 2012-01-17 | Tableau Software Llc | Computer systems and methods for automatically viewing multidimensional databases |
JP4937608B2 (ja) | 2006-03-14 | 2012-05-23 | 株式会社エヌ・ティ・ティ・データ | 指標推計装置、指標推計方法、及び指標推計プログラム |
US7999809B2 (en) | 2006-04-19 | 2011-08-16 | Tableau Software, Inc. | Computer systems and methods for automatic generation of models for a dataset |
US9015301B2 (en) | 2007-01-05 | 2015-04-21 | Digital Doors, Inc. | Information infrastructure management tools with extractor, secure storage, content analysis and classification and method therefor |
JP4286296B2 (ja) | 2007-03-05 | 2009-06-24 | 富士通株式会社 | 要件確認支援プログラム、要件確認支援方法、及び要件確認支援装置 |
US8589811B2 (en) | 2007-07-20 | 2013-11-19 | International Business Machines Corporation | Techniques for organizing information accessed through a web browser |
US9436688B2 (en) | 2008-05-28 | 2016-09-06 | Adobe Systems Incorporated | Durational referencing cue points for linking multimedia files |
US20110078160A1 (en) * | 2009-09-25 | 2011-03-31 | International Business Machines Corporation | Recommending one or more concepts related to a current analytic activity of a user |
US20110078101A1 (en) * | 2009-09-25 | 2011-03-31 | International Business Machines Corporation | Recommending one or more existing notes related to a current analytic activity of a user |
US8301585B2 (en) | 2009-12-07 | 2012-10-30 | Business Objects Software Limited | Visualization recommendations based on measure metadata |
US8375313B2 (en) | 2010-06-01 | 2013-02-12 | Oracle International Corporation | User interface generation with scoring |
CA2783451C (en) | 2010-06-03 | 2018-01-16 | International Business Machines Corporation | Method and system of adapting a data model to a user interface component |
US8743122B2 (en) | 2011-03-07 | 2014-06-03 | Microsoft Corporation | Interactive visualization for exploring multi-modal, multi-relational, and multivariate graph data |
US9361320B1 (en) | 2011-09-30 | 2016-06-07 | Emc Corporation | Modeling big data |
US9996241B2 (en) * | 2011-10-11 | 2018-06-12 | Microsoft Technology Licensing, Llc | Interactive visualization of multiple software functionality content items |
US9058409B2 (en) * | 2011-10-25 | 2015-06-16 | International Business Machines Corporation | Contextual data visualization |
AU2013214801B2 (en) * | 2012-02-02 | 2018-06-21 | Visa International Service Association | Multi-source, multi-dimensional, cross-entity, multimedia database platform apparatuses, methods and systems |
US20140019443A1 (en) | 2012-07-10 | 2014-01-16 | Venor, Inc. | Systems and methods for discovering content of predicted interest to a user |
WO2014010071A1 (ja) | 2012-07-13 | 2014-01-16 | 株式会社日立製作所 | データ分析支援方法及びシステム |
WO2014031618A2 (en) | 2012-08-22 | 2014-02-27 | Bitvore Corp. | Data relationships storage platform |
US8788525B2 (en) * | 2012-09-07 | 2014-07-22 | Splunk Inc. | Data model for machine data for semantic search |
US9824469B2 (en) * | 2012-09-11 | 2017-11-21 | International Business Machines Corporation | Determining alternative visualizations for data based on an initial data visualization |
US9904579B2 (en) | 2013-03-15 | 2018-02-27 | Advanced Elemental Technologies, Inc. | Methods and systems for purposeful computing |
US20140344008A1 (en) | 2013-05-20 | 2014-11-20 | Vmware, Inc. | Strategic planning process for end user computing |
EP3040876A4 (en) | 2013-08-29 | 2017-04-12 | Cognitee Inc. | Information processing device, information processing method and program |
US11386085B2 (en) * | 2014-01-27 | 2022-07-12 | Microstrategy Incorporated | Deriving metrics from queries |
US9424318B2 (en) * | 2014-04-01 | 2016-08-23 | Tableau Software, Inc. | Systems and methods for ranking data visualizations |
US20150278214A1 (en) * | 2014-04-01 | 2015-10-01 | Tableau Software, Inc. | Systems and Methods for Ranking Data Visualizations Using Different Data Fields |
US11514494B2 (en) | 2014-06-02 | 2022-11-29 | DGIT Consultants Pty Ltd. | Telecommunications product defining and provisioning |
US9779147B1 (en) * | 2014-08-15 | 2017-10-03 | Tableau Software, Inc. | Systems and methods to query and visualize data and relationships |
US10572925B1 (en) | 2014-08-15 | 2020-02-25 | Groupon, Inc. | Universal relevance service framework |
US9613086B1 (en) * | 2014-08-15 | 2017-04-04 | Tableau Software, Inc. | Graphical user interface for generating and displaying data visualizations that use relationships |
US10380770B2 (en) * | 2014-09-08 | 2019-08-13 | Tableau Software, Inc. | Interactive data visualization user interface with multiple interaction profiles |
US10332284B2 (en) * | 2014-09-08 | 2019-06-25 | Tableau Software, Inc. | Systems and methods for providing drag and drop analytics in a dynamic data visualization interface |
US9971742B2 (en) * | 2014-09-26 | 2018-05-15 | Oracle International Corporation | Semantic distance-based assignment of data elements to visualization edges |
US11275775B2 (en) | 2014-10-09 | 2022-03-15 | Splunk Inc. | Performing search queries for key performance indicators using an optimized common information model |
US10007708B2 (en) * | 2014-10-31 | 2018-06-26 | Business Objects Software Ltd. | System and method of providing visualization suggestions |
US20180039399A1 (en) * | 2014-12-29 | 2018-02-08 | Palantir Technologies Inc. | Interactive user interface for dynamically updating data and data analysis and query processing |
US9335911B1 (en) * | 2014-12-29 | 2016-05-10 | Palantir Technologies Inc. | Interactive user interface for dynamic data analysis exploration and query processing |
US20160196534A1 (en) | 2015-01-06 | 2016-07-07 | Koru Careers, Inc. | Training, tracking, and placement system |
US10552513B1 (en) * | 2015-01-08 | 2020-02-04 | Vmware, Inc. | Computer system entity rendering system |
US20160307211A1 (en) | 2015-04-15 | 2016-10-20 | Linkedln Corporation | Inferring contributions of content to marketing events |
US10121157B2 (en) * | 2015-04-17 | 2018-11-06 | GoodData Corporation | Recommending user actions based on collective intelligence for a multi-tenant data analysis system |
US20160328406A1 (en) * | 2015-05-08 | 2016-11-10 | Informatica Llc | Interactive recommendation of data sets for data analysis |
US10354419B2 (en) | 2015-05-25 | 2019-07-16 | Colin Frederick Ritchie | Methods and systems for dynamic graph generating |
US20160364772A1 (en) | 2015-05-29 | 2016-12-15 | Nanigans, Inc. | Graphical user interface for high volume data analytics |
US9747383B2 (en) | 2015-06-08 | 2017-08-29 | Blue Goji Llc | Multi-factor prioritization and visualization tool |
WO2017024236A1 (en) | 2015-08-05 | 2017-02-09 | Equifax Inc. | Building and managing data-processing attributes for modeled data sources |
US10387444B2 (en) * | 2015-08-10 | 2019-08-20 | Successfactors, Inc. | Tools for auto-visualizations of data |
US10565750B2 (en) * | 2015-08-31 | 2020-02-18 | Accenture Global Solutions Limited | Intelligent visualization munging |
US10607139B2 (en) * | 2015-09-23 | 2020-03-31 | International Business Machines Corporation | Candidate visualization techniques for use with genetic algorithms |
IL242550B (en) | 2015-11-11 | 2021-06-30 | Simgi Ronen | Testing and classification system |
US20170140118A1 (en) * | 2015-11-18 | 2017-05-18 | Ucb Biopharma Sprl | Method and system for generating and visually displaying inter-relativity between topics of a healthcare treatment taxonomy |
US10515093B2 (en) * | 2015-11-30 | 2019-12-24 | Tableau Software, Inc. | Systems and methods for interactive visual analysis using a specialized virtual machine |
US10380140B2 (en) * | 2015-11-30 | 2019-08-13 | Tableau Software, Inc. | Systems and methods for implementing a virtual machine for interactive visual analysis |
US10572544B1 (en) | 2015-12-14 | 2020-02-25 | Open Text Corporation | Method and system for document similarity analysis |
KR20180118611A (ko) | 2015-12-23 | 2018-10-31 | 파이메트릭스, 인크. | 인재의 데이터 기반 식별을 위한 시스템 및 방법 |
US10997190B2 (en) | 2016-02-01 | 2021-05-04 | Splunk Inc. | Context-adaptive selection options in a modular visualization framework |
JP6498625B2 (ja) | 2016-03-24 | 2019-04-10 | 株式会社日立製作所 | 意思決定支援システム及び方法 |
US20170308913A1 (en) | 2016-04-21 | 2017-10-26 | Linkedin Corporation | Drill-down approach to providing data about entities in a social graph |
US10133452B2 (en) * | 2016-06-30 | 2018-11-20 | Adobe Systems Incorporated | Facilitating data science operations |
US10776569B2 (en) * | 2016-07-29 | 2020-09-15 | International Business Machines Corporation | Generation of annotated computerized visualizations with explanations for areas of interest |
US10776350B1 (en) * | 2016-09-26 | 2020-09-15 | Splunk Inc. | Field analyzer for event search screen |
WO2018077655A1 (en) | 2016-10-24 | 2018-05-03 | Koninklijke Philips N.V. | Multi domain real-time question answering system |
US10585560B2 (en) * | 2016-10-31 | 2020-03-10 | Splunk Inc. | Display management for data visualizations of analytics data |
US11853529B2 (en) | 2016-11-07 | 2023-12-26 | Tableau Software, Inc. | User interface to prepare and curate data for subsequent analysis |
US10346762B2 (en) * | 2016-12-21 | 2019-07-09 | Ca, Inc. | Collaborative data analytics application |
US10409367B2 (en) * | 2016-12-21 | 2019-09-10 | Ca, Inc. | Predictive graph selection |
US11669220B2 (en) | 2017-03-20 | 2023-06-06 | Autodesk, Inc. | Example-based ranking techniques for exploring design spaces |
US10057373B1 (en) * | 2017-05-15 | 2018-08-21 | Palantir Technologies Inc. | Adaptive computation and faster computer operation |
US20180357595A1 (en) * | 2017-06-08 | 2018-12-13 | Sap Se | Data collection and correlation |
US10929421B2 (en) * | 2017-06-08 | 2021-02-23 | Sap Se | Suggestion of views based on correlation of data |
JP6944285B2 (ja) | 2017-06-29 | 2021-10-06 | 川崎重工業株式会社 | 回転部材を有する装置の異常原因特定システム |
JP2019016209A (ja) | 2017-07-07 | 2019-01-31 | 株式会社東芝 | 診断装置、診断方法およびコンピュータプログラム |
US10990568B2 (en) * | 2017-07-17 | 2021-04-27 | Microsoft Technology Licensing, Llc | Machine learning for automated model generation with constraints |
US20190043487A1 (en) | 2017-08-02 | 2019-02-07 | Veritone, Inc. | Methods and systems for optimizing engine selection using machine learning modeling |
US10672015B2 (en) | 2017-09-13 | 2020-06-02 | Bby Solutions, Inc. | Streaming events modeling for information ranking to address new information scenarios |
US11216451B2 (en) | 2017-09-29 | 2022-01-04 | Oracle International Corporation | Dynamic dashboard with guided discovery |
US11620315B2 (en) * | 2017-10-09 | 2023-04-04 | Tableau Software, Inc. | Using an object model of heterogeneous data to facilitate building data visualizations |
US20190130512A1 (en) | 2017-10-27 | 2019-05-02 | Larry Kuhn | System and method for pre- and post-hiring leadership development |
US10803104B2 (en) | 2017-11-01 | 2020-10-13 | Pearson Education, Inc. | Digital credential field mapping |
US10552129B2 (en) | 2017-12-12 | 2020-02-04 | Sap Se | Agglomerative algorithm for graph clustering |
US11074301B2 (en) * | 2017-12-14 | 2021-07-27 | Facebook, Inc. | Systems and methods for automated data visualization recommendations |
US11334543B1 (en) * | 2018-04-30 | 2022-05-17 | Splunk Inc. | Scalable bucket merging for a data intake and query system |
US11170881B2 (en) | 2018-05-18 | 2021-11-09 | General Electric Company | Devices and method for a healthcare collaboration space |
US20200012939A1 (en) * | 2018-07-07 | 2020-01-09 | Massachusetts Institute Of Technology | Methods and Apparatus for Visualization Recommender |
US20200372472A1 (en) | 2018-07-31 | 2020-11-26 | Microsoft Technology Licensing, Llc | Multi-level ranking for mitigating machine learning model bias |
US20200066397A1 (en) | 2018-08-23 | 2020-02-27 | General Electric Company | Multifactorical, machine-learning based prioritization framework for optimizing patient placement |
US10656779B1 (en) | 2018-09-10 | 2020-05-19 | Tableau Software, Inc. | Filtering popup secondary data visualizations according to selected data from primary data visualizations |
US10572804B1 (en) | 2018-09-13 | 2020-02-25 | Omniphysical LLC | Platform evaluation and automatic transfer of a descriptive information infrastructure |
US11106681B2 (en) * | 2018-09-28 | 2021-08-31 | Splunk Inc. | Conditional processing based on inferred sourcetypes |
US10775976B1 (en) * | 2018-10-01 | 2020-09-15 | Splunk Inc. | Visual previews for programming an iterative publish-subscribe message processing system |
US10929415B1 (en) * | 2018-10-01 | 2021-02-23 | Splunk Inc. | Isolated execution environment system monitoring |
US11055489B2 (en) * | 2018-10-08 | 2021-07-06 | Tableau Software, Inc. | Determining levels of detail for data visualizations using natural language constructs |
US10572859B1 (en) | 2019-01-15 | 2020-02-25 | Fuze, Inc. | Systems and methods for intelligently joining a meeting/conference |
US10963347B1 (en) * | 2019-01-31 | 2021-03-30 | Splunk Inc. | Data snapshots for configurable screen on a wearable device |
US10592525B1 (en) * | 2019-01-31 | 2020-03-17 | Splunk Inc. | Conversion of cloud computing platform data for ingestion by data intake and query system |
US11354587B2 (en) | 2019-02-01 | 2022-06-07 | System Inc. | Systems and methods for organizing and finding data |
US10642723B1 (en) | 2019-02-05 | 2020-05-05 | Bank Of America Corporation | System for metamorphic relationship based code testing using mutant generators |
US10922356B2 (en) | 2019-03-27 | 2021-02-16 | Slack Technologies, Inc. | Expandable data object management and indexing architecture for intersystem data exchange compatibility |
US20200320462A1 (en) | 2019-04-03 | 2020-10-08 | International Business Machines Corporation | Calculating online social network distance between entities of an organization |
US10719332B1 (en) * | 2019-04-29 | 2020-07-21 | Splunk Inc. | Provisioning a client device with a multi-component application |
US11425059B2 (en) | 2019-06-18 | 2022-08-23 | Accenture Global Solutions Limited | Chatbot support platform |
US10937213B2 (en) | 2019-06-27 | 2021-03-02 | Fuji Xerox Co., Ltd. | Systems and methods for summarizing and steering multi-user collaborative data analyses |
US11232506B1 (en) | 2019-07-03 | 2022-01-25 | Stitch Fix, Inc. | Contextual set selection |
US11093568B2 (en) | 2019-07-11 | 2021-08-17 | Accenture Global Solutions Limited | Systems and methods for content management |
US11138241B2 (en) | 2019-07-19 | 2021-10-05 | Walmart Apollo, Llc | Metric definition and visualization |
US11561960B2 (en) | 2019-08-13 | 2023-01-24 | T-Mobile Usa, Inc. | Key performance indicator-based anomaly detection |
US20220327140A1 (en) * | 2019-09-16 | 2022-10-13 | Texas Tech University System | Data visualization device and method |
US11544604B2 (en) * | 2019-10-09 | 2023-01-03 | Adobe Inc. | Adaptive model insights visualization engine for complex machine learning models |
US11425012B2 (en) | 2019-12-20 | 2022-08-23 | Citrix Systems, Inc. | Dynamically generating visualizations of data based on correlation measures and search history |
US11847170B2 (en) * | 2020-01-17 | 2023-12-19 | Target Brands, Inc. | Data visualization tool with guided visualization creation and secure publication features, and graphical user interface thereof |
US11921991B2 (en) * | 2020-01-17 | 2024-03-05 | Target Brands, Inc. | Data visualization tool with guided visualization creation and secure publication features, and graphical user interface thereof |
US11579760B2 (en) * | 2020-09-08 | 2023-02-14 | Tableau Software, LLC | Automatic data model generation |
-
2020
- 2020-09-08 US US17/014,882 patent/US11579760B2/en active Active
-
2021
- 2021-09-07 WO PCT/US2021/049229 patent/WO2022055846A1/en unknown
- 2021-09-07 JP JP2023515380A patent/JP2023541584A/ja active Pending
- 2021-09-07 EP EP21867421.6A patent/EP4211568A1/en active Pending
- 2021-09-07 CN CN202180054964.2A patent/CN116034353A/zh active Pending
-
2023
- 2023-02-13 US US18/109,140 patent/US20230273715A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022055846A1 (en) | 2022-03-17 |
EP4211568A1 (en) | 2023-07-19 |
CN116034353A (zh) | 2023-04-28 |
US11579760B2 (en) | 2023-02-14 |
US20220075512A1 (en) | 2022-03-10 |
US20230273715A1 (en) | 2023-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11687571B2 (en) | Interactive lineage analyzer for data assets | |
US11893039B2 (en) | Interactive interface for data analysis and report generation | |
US20230273715A1 (en) | Automatic data model generation | |
US20240095285A1 (en) | Dynamic graph generation for interactive data analysis | |
US11423217B2 (en) | Flexible table based visualizations | |
US10268980B1 (en) | Report generation based on user responsibility | |
US11651003B2 (en) | Interactive data visualization interface for data and graph models | |
CN117999549A (zh) | 生成相关数据类型之间的捷径路径 | |
JP7313553B2 (ja) | パーソナライズされた推奨に基づいたデータ可視化の提供 | |
US11188558B2 (en) | Parenting computed fields with data objects | |
US11422985B2 (en) | Interactive data modeling | |
US20230008999A1 (en) | Data processing for visualizing hierarchical data | |
CN117716352A (zh) | 数据资产的元数据继承 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230310 |