(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-10-19
(54)【発明の名称】分析アプリケーション環境におけるフラグメント化されたクエリモデルの使用のためのシステムおよび方法
(51)【国際特許分類】
G06F 16/23 20190101AFI20231012BHJP
【FI】
G06F16/23
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023519020
(86)(22)【出願日】2021-09-22
(85)【翻訳文提出日】2023-05-23
(86)【国際出願番号】 US2021051588
(87)【国際公開番号】W WO2022066795
(87)【国際公開日】2022-03-31
(32)【優先日】2020-09-25
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-07-15
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-07-15
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-07-15
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】502303739
【氏名又は名称】オラクル・インターナショナル・コーポレイション
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】クッチカット,ジョセフ
(72)【発明者】
【氏名】ベンカタ,アナンス
(72)【発明者】
【氏名】アナンタムルティ,パバン
(72)【発明者】
【氏名】クリシュナン,バラジ
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175CA09
5B175KA11
(57)【要約】
ある実施形態に従うと、ここに記載されるのは、セマンティックデータモデル(セマンティックモデル)を拡張するようカスタムセマンティック拡張の使用を可能にするセマンティック層を含む、分析アプリケーション環境において拡張性を提供するためのシステムおよび方法である。ある実施形態に従うと、本システムは、フラグメント化されたクエリモデルの使用を可能にし、セマンティックモデルに対してカスタマイズが行われると、本システムは、クエリがランタイムで生成されると、さまざまなデルタからの変更を動的にマージして、拡張されたセマンティックモデルに基づいて適切なデータを動的に表面化し得る。
【特許請求の範囲】
【請求項1】
フラグメント化されたクエリモデルに対するサポートを含む、分析アプリケーション環境において拡張性を提供するためのシステムであって、
分析アプリケーション環境による、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する、1つ以上のプロセッサを含むコンピュータを備え、
前記システムは、要求に応答して前記データベースまたはデータウェアハウスからデータを取り出し、1つ以上のセマンティック拡張によって拡張されたセマンティックモデルに従って前記データを処理し、
前記セマンティックモデルの表現、および1つ以上のセマンティック拡張によって定義される前記セマンティックモデルに対する変更は、キー値ペアのマップに対する変更として保存され、その表現はメモリにおいてデータ構造としてキャッシュされ、
ランタイムで生成されたクエリに応答して、前記システムは、前記1つ以上のセマンティック拡張によって定義された前記変更を、ベースセマンティックモデルと動的にマージして、前記拡張されたセマンティックモデルに基づいてデータを表面化する、フラグメント化されたクエリモデルに対するサポートを含む、分析アプリケーション環境において拡張性を提供するためのシステム。
【請求項2】
メモリにデータ構造としてキャッシュされる、前記セマンティックモデル、および前記1つ以上のセマンティック拡張によって定義される、前記セマンティックモデルに対する変更、の前記表現は、データウェアハウスへのアクセスを提供するデータプレーンと組み合わせて使用される、請求項1に記載のシステム。
【請求項3】
前記セマンティックモデルに対する変更は、階層化された名前空間に記録され、前記セマンティックモデルに対する変更として処理され、各変更は前記セマンティックモデルに対する増分的変更を提供することを含む、請求項1に記載のシステム。
【請求項4】
前記システムは、データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行する、請求項1に記載のシステム。
【請求項5】
前記分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、請求項1に記載のシステム。
【請求項6】
フラグメント化されたクエリモデルに対するサポートを含む、分析アプリケーション環境において拡張性を提供するための方法であって、
1つ以上のプロセッサを含むコンピュータにおいて、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する分析アプリケーション環境を提供することと、
セマンティック拡張を提供して、データとともに使用するためにセマンティックモデルを拡張することとを含み、前記セマンティックモデルは、前記セマンティック拡張による前記セマンティックモデルに対する変更を定義する複数の階層的拡張層を含み、前記方法はさらに、
前記セマンティックモデル、および前記1つ以上のセマンティック拡張によって定義される、前記セマンティックモデルに対する変更、の表現を、キー値ペアのマップに対する変更として保存することを含み、その表現は、メモリにおいてデータ構造としてキャッシュされ、前記方法はさらに、
ランタイムで生成されたクエリに応答して、前記データベースまたはデータウェアハウスからデータを取り出すことを含み、前記1つ以上のセマンティック拡張によって定義される前記変更を、ベースセマンティックモデルと動的にマージして、前記拡張されたセマンティックモデルに基づいて、データを表面化することを含む、フラグメント化されたクエリモデルに対するサポートを含む、分析アプリケーション環境において拡張性を提供するための方法。
【請求項7】
メモリにデータ構造としてキャッシュされる、前記セマンティックモデル、および前記1つ以上のセマンティック拡張によって定義される、前記セマンティックモデルに対する変更、の前記表現は、データウェアハウスへのアクセスを提供するデータプレーンと組み合わせて使用される、請求項6に記載の方法。
【請求項8】
前記セマンティックモデルに対する変更は、階層化された名前空間に記録され、前記セマンティックモデルに対する変更として処理され、各変更は前記セマンティックモデルに対する増分的変更を提供することを含む、請求項6に記載の方法。
【請求項9】
データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行することをさらに含む、請求項6に記載の方法。
【請求項10】
前記分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、請求項6に記載の方法。
【請求項11】
命令を有する非一時的なコンピュータ可読記憶媒体であって、命令は、1つ以上のプロセッサを含むコンピュータによって読み出され、実行されると、前記コンピュータに、方法を実行させ、前記方法は、
1つ以上のプロセッサを含むコンピュータにおいて、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する分析アプリケーション環境を提供することと、
セマンティック拡張を提供して、データとともに使用するためにセマンティックモデルを拡張することとを含み、前記セマンティックモデルは、前記セマンティック拡張による前記セマンティックモデルに対する変更を定義する複数の階層的拡張層を含み、前記方法はさらに、
前記セマンティックモデル、および前記1つ以上のセマンティック拡張によって定義される、前記セマンティックモデルに対する変更、の表現を、キー値ペアのマップに対する変更として保存することを含み、その表現は、メモリにおいてデータ構造としてキャッシュされ、前記方法はさらに、
ランタイムで生成されたクエリに応答して、前記データベースまたはデータウェアハウスからデータを取り出すことを含み、前記1つ以上のセマンティック拡張によって定義される前記変更を、ベースセマンティックモデルと動的にマージして、前記拡張されたセマンティックモデルに基づいて、データを表面化することを含む、非一時的なコンピュータ可読記憶媒体。
【請求項12】
メモリにデータ構造としてキャッシュされる、前記セマンティックモデル、および前記1つ以上のセマンティック拡張によって定義される、前記セマンティックモデルに対する変更、の前記表現は、データウェアハウスへのアクセスを提供するデータプレーンと組み合わせて使用される、請求項11に記載の非一時的なコンピュータ可読記憶媒体。
【請求項13】
前記セマンティックモデルに対する変更は、階層化された名前空間に記録され、前記セマンティックモデルに対する変更として処理され、各変更は前記セマンティックモデルに対する増分的変更を提供することを含む、請求項11に記載の非一時的なコンピュータ可読記憶媒体。
【請求項14】
前記システムは、データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行する、請求項11に記載の非一時的なコンピュータ可読記憶媒体。
【請求項15】
前記分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、請求項11に記載の非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
著作権表示
この特許文献の開示の一部は、著作権保護の対象となる題材を含んでいる。著作権保有者は、この特許文献または特許開示が特許商標庁の包袋または記録に掲載されているため、この特許文献または特許開示を誰でも複写複製できることに対して異議はないが、その他の点では全ての如何なる著作権をも保有する。
【0002】
優先権主張:
本出願は、2020年9月25日に提出された「SYSTEM AND METHOD FOR EXTENSIBILITY IN AN ANALYTIC APPLICATIONS ENVIRONMENT」と題される米国仮特許出願、出願番号63/083,319;2021年7月15日に提出された「SYSTEM AND METHOD FOR EXTENSIBILITY IN AN ANALYTIC APPLICATIONS ENVIRONMENT」と題される米国特許出願、出願番号17/376,890;2021年7月15日に提出された「SYSTEM AND METHOD FOR USE OF A FRAGMENTED QUERY MODEL IN AN ANALYTIC APPLICATIONS ENVIRONMENT」と題される米国特許出願、出願番号17/376,895;および2021年7月15日に提出された「SYSTEM AND METHOD FOR SEMANTIC MODEL ACTION SETS AND REPLAY IN AN ANALYTIC APPLICATIONS ENVIRONMENT」と題される米国特許出願、出願番号17/376,903の優先権を主張し;これらの出願の各々は、参照によりここに組み込まれる。
【0003】
技術分野:
ここで記載される実施形態は、概して、コンピュータデータアナリティクス、およびビジネスインテリジェンスデータを提供するコンピュータベースの方法に関し、特に、分析アプリケーション環境において拡張性を提供するためのシステムおよび方法に関する。
【0004】
背景:
概して、組織内において、データアナリティクスは、大量のデータから結論または他の情報を導き出すために、当該データのコンピュータベースの調査または分析を可能にし;ビジネスインテリジェンスツールは、組織のビジネスユーザに、彼らの企業データを記述する情報を、彼らが戦略的なビジネス決定を行うことを可能にするフォーマットで提供する。
【0005】
例えば、Oracle Fusion Applications環境または他のタイプの企業ソフトウェアアプリケーションもしくはデータ環境といった、組織の企業ソフトウェアアプリケーションもしくはデータ環境のコンテキスト内;または、例えば、Oracle Analytics CloudもしくはOracle Cloud Infrastructure環境もしくは他のタイプのクラウド環境などの、サービスとしてのソフトウェア(SaaS)もしくはクラウド環境の文脈内で、データアナリティクスの使用を活用するソフトウェアアプリケーションの開発にますます関心がある。
【0006】
しかしながら、データアナリティクス環境の、異なる顧客は、データアナリティクスもしくはビジネスインテリジェンスデータを提供する目的、またはソフトウェア分析アプリケーションを開発する目的で、どのように彼らのデータが分類、集約、または変換されるかに関して、異なる要件を有し得る。
【0007】
概要:
ある実施形態に従うと、分析アプリケーション環境において拡張性を提供するためのシステムおよび方法がここに記載される。データアナリティクスもしくはビジネスインテリジェンスデータを提供する目的で、またはソフトウェア分析アプリケーションを開発する目的で、顧客のデータがどのように分類、集約、または変換されるかに関する顧客の要件をサポートするために、本システムは、セマンティックデータモデル(セマンティックモデル)を拡張するようカスタムセマンティック拡張の使用を可能にするセマンティック層を含み得る。
【0008】
ある実施形態に従うと、事前設定なしで利用可能なセマンティックモデルに対するカスタマイズは、階層化された手法を用いて実行され、セマンティックモデルのファクトリコードは無傷のままであり、変更/デルタ(change/delta)は、顧客によって、編集可能であり、そのモデルの上に階層化され、そのような変更は、必要に応じて、パッチ/取り消され得る。
【0009】
ある実施形態に従うと、本システムは、フラグメント化されたクエリモデルの使用を可能にし、セマンティックモデルに対してカスタマイズが行われると、本システムは、クエリがランタイムで生成されると、さまざまなデルタからの変更を動的にマージして、拡張されたセマンティックモデルに基づいて適切なデータを動的に表面化し得る。
【0010】
ある実施形態に従うと、セマンティックモデルに対してカスタマイズが行われると、本システムは、セマンティックモデルに対する変更を、変更された状態としてではなく、アクションセットとして記憶する。これは、オペレーティングシステムの更新は基底の設定に影響を与えないが、本システムがファクトリモデル上で変更をリプレイし、所望の終了状態に戻ることを可能にする。
【図面の簡単な説明】
【0011】
【
図1】一実施形態に係る、分析アプリケーション環境を提供するためのシステムを示す図である。
【
図2】一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【
図3】一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【
図4】一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【
図5】一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【
図6】一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【
図7】一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【
図8】一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【
図9】一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【
図10】一実施形態に係る、分析アプリケーション環境を提供するための方法のフローチャートを示す図である。
【
図11】ある実施形態に係る、分析アプリケーション環境における拡張性およびカスタマイズをサポートするためのシステムを示す図である。
【
図12】一実施形態による、分析アプリケーション環境における拡張性およびカスタマイズをさらに示す図である。
【
図13】ある実施形態に係る、分析アプリケーション環境のカスタマイズまたは拡張における複数のユーザに対するサポートを示す図である。
【
図14】ある実施形態に係る、分析アプリケーション環境のカスタマイズまたは拡張における複数のユーザに対するサポートをさらに示す図である。
【
図15】ある実施形態に係る、分析アプリケーション環境のカスタマイズまたは拡張における複数のユーザに対するサポートをさらに示す図である。
【
図16】ある実施形態に係る、分析アプリケーション環境のカスタマイズまたは拡張における複数のユーザに対するサポートをさらに示す図である。
【
図17】ある実施形態に係る、セマンティックモデル構築に対する階層化された手法を示す図である。
【
図18】ある実施形態に係る、セマンティックモデル構築に対する階層化された手法をさらに示す図である。
【
図19】一実施形態による、分析アプリケーション環境における階層化された拡張の使用を示す図である。
【
図20】一実施形態による、分析アプリケーション環境における階層化された拡張の使用をさらに示す図である。
【
図21】分析アプリケーション環境における階層化された拡張の使用をさらに示す図である。
【
図22】ある実施形態に係る、分析アプリケーション環境における階層化された拡張の使用のためのプロセスを示す図である。
【
図23】ある実施形態に係る、フラグメント化されたクエリモデルの使用を示す図である。
【
図24】ある実施形態に係る、フラグメント化されたクエリモデルの使用をさらに示す図である。
【
図25】ある実施形態に係る、フラグメント化されたクエリモデルの使用をさらに示す図である。
【
図26】ある実施形態に係る、フラグメント化されたクエリモデルを使用するためのプロセスを示す図である。
【
図27】ある実施形態に係る、拡張性を提供するためのアクションリプレイセットの使用を示す図である。
【
図28】ある実施形態に係る、拡張性を提供するためのアクションリプレイセットの使用をさらに示す図である。
【
図29】ある実施形態に係る、拡張性を提供するためのアクションリプレイセットの使用をさらに示す図である。
【
図30】ある実施形態に係る、分析アプリケーション環境におけるセマンティックモデルアクションリプレイのプロセスを示す図である。
【発明を実施するための形態】
【0012】
詳細な説明:
上記のように、組織内で、データアナリティクスは、データから結論または他の情報を導き出すために大量のデータのコンピュータベースの調査または分析を可能にする一方、ビジネスインテリジェンスツールは、組織のビジネスユーザが戦略的なビジネス決定を行うことを可能にするフォーマットで企業データを記載している情報をそれらのビジネスユーザに提供する。
【0013】
組織の企業ソフトウェアアプリケーションもしくはデータ環境(たとえば、オラクルフュージョンアプリケーション環境もしくは他のタイプの企業ソフトウェアアプリケーションもしくはデータ環境など)の文脈において、またはソフトウェア・アズ・ア・サービス(SaaS)もしくはクラウド環境(たとえば、オラクルアナリティクスクラウドもしくはオラクルクラウドインフラストラクチャ環境もしくは他のタイプのクラウド環境など)の文脈においてデータアナリティクスの使用を活用するソフトウェアアプリケーションを開発することへの関心が高まっている。
【0014】
一実施形態に従って、分析アプリケーション環境は、組織の企業ソフトウェアアプリケーションもしくはデータ環境の文脈において、またはソフトウェア・アズ・ア・サービスもしくは他のタイプのクラウド環境の文脈においてデータアナリティクスを可能にし、コンピュータによって実行可能なソフトウェア分析アプリケーションの開発をサポートする。
【0015】
セマンティックモデル/層拡張性
ある実施形態に従うと、分析アプリケーション環境において拡張性を提供するためのシステムおよび方法がここに記載される。データアナリティクスもしくはビジネスインテリジェンスデータを提供する目的で、またはソフトウェア分析アプリケーションを開発する目的で、顧客のデータがどのように分類、集約、または変換されるかに関する顧客の要件をサポートするために、本システムは、セマンティックデータモデル(セマンティックモデル)を拡張するようカスタムセマンティック拡張の使用を可能にするセマンティック層を含み得る。
【0016】
様々な実施形態によれば、本システムは、階層化された名前空間、フラグメント化されたモデルクエリのランタイムマージ、発展中の基礎上の変更のリプレイ、または本番環境における予想されるフィックスのステージングなどの特徴に対するサポートを含み得る。
【0017】
ある実施形態に従うと、本システムは、セマンティックモデルに関してユーザが何をしたいかを一連のステップにおいてキャプチャし、次いで、セマンティックモデルを拡張するために使用される、ユーザに対するルールのセットを(たとえばRPDとして)作成する、ウィザードベースの手法を提供する。例えば、ウィザードは、セマンティックモデルによって指定されるある次元またはファクトの、事前設定なしで利用可能な特徴付けを提示し得、次いで、ユーザは、それらの特徴付けを修正し得る。
【0018】
別の実施形態によれば、セマンティックモデルに対して作業している複数のユーザが、異なる対象領域上で操作している場合がある。マルチユーザ開発環境は、複数のユーザが、セマンティックモデルの、異なる分岐または拡張を扱うことを可能にする。個々の分岐または拡張が完了すると、本システムは、モデル全体に対するすべての変更を比較し、何らかの競合があるかどうかを判断し、適切な場合には、ロックおよびキューを含めて、どの分岐または拡張を最終モデルに含めるべきかを評価する。
【0019】
別の実施形態に従うと、事前設定なしで利用可能なセマンティックモデルに対するカスタマイズは、階層化された手法を用いて実行され、セマンティックモデルのファクトリコードは無傷のままであり、変更/デルタは、顧客によって、編集可能であり、そのモデルの上に階層化され、そのような変更は、必要に応じて、パッチ/取り消され得る。
【0020】
別の実施形態に従うと、本システムは、フラグメント化されたクエリモデルの使用を可能にし、セマンティックモデルに対してカスタマイズが行われると、本システムは、クエリがランタイムで生成されると、さまざまなデルタからの変更を動的にマージして、拡張されたセマンティックモデルに基づいて適切なデータを動的に表面化し得る。
【0021】
別の実施形態によれば、セマンティックモデルに対してカスタマイズが行われると、本システムは、セマンティックモデルに対する変更を、変更された状態としてではなく、アクションセットとして記憶することを可能にする。これは、オペレーティングシステムの更新は基底の設定に影響を与えないが、本システムがファクトリモデル上で変更をリプレイし、所望の終了状態に戻ることを可能にする。
【0022】
別の実施形態によれば、テストインスタンスおよび本番インスタンスの使用をサポートするために、本システムは、テスト環境において、セマンティックモデルに行われた変更を追跡し、次いで、テスト後に、変更を本番環境に遠隔で通信し得る。本システムは、ロック、セキュリティ、およびロールマッピングを含み、変更をテスト環境から本番環境にどのように移し得るかを制御し得る。
【0023】
別の実施形態によれば、テストインスタンスが新たなバージョンに更新されると、セマンティックモデルに対して行われ、デルタとして記憶される変更は、上述のようにリプレイされるが、変更は、直ちに本番にプッシュされる代わりに、本番環境自体が新たなバージョンに更新される間に、ステージングされる。本番が(データウェアハウスまたはセマンティックモデルの)新たなバージョンに更新されると、カスタマイズされたモデルおよび拡張が同時に更新される。
【0024】
別の実施形態によれば、データアナリティクス環境におけるクエリは、多くの場合、BIサーバにプッシュされ、次いで、データソースに関数移送(function-ship)される。しかしながら、セマンティックモデルのカスタマイズ/拡張を操作する複数のユーザがいる場合、複数のユーザは共通のBIサーバを共有する必要があるだろう。セマンティックモデルの開発中に使用するためにデータのプレビューを提供するために、本システムは、BIサーバの(縮小/カットダウンされた)バージョンを一時的にスピンアップして、開発中に使用するためのデータプレビューを提供する。
【0025】
ある実施形態に従うと、たとえばOracle Analytics Cloud(OAC)環境のようなアナリティクスクラウド環境(アナリティクスクラウド)に関連して分析アプリケーション環境を提供し得る。そのような環境は、協調分析を探索および実行する能力を提供するスケーラブルかつセキュアなパブリッククラウドサービスを提供する。
【0026】
様々な実施形態によると、記載される手法の技術的利点は、定義された拡張またはカスタマイズが、基底のシステムに対するパッチ、更新、または他の変更に耐え得ることを含む。例えば、セマンティックモデルのイミュータブルな局面がパッチまたは更新される場合;セマンティック拡張として提供されたカスタマイズは保持される。パッチまたは更新に続いて、本システムは、拡張を自動的にリプレイし得る。拡張が、セマンティックモデルに対する基底の変更に起因して失敗する場合、管理者は、変更を評価し、可能なフィックスを一通り行い得る。潜在的な競合は、慎重に対処され得、すべての拡張を完全に適用することが不可能であり得る場合、管理者は、それに応じて通知され得る。
【0027】
分析アプリケーション環境
一実施形態に従って、たとえばオラクル自律型データウェアハウス(ADW)、オラクル自律型データウェアハウスクラウド(ADWC)などのデータウェアハウス環境もしくはコンポーネント、または、大量のデータを格納するように適合された他のタイプのデータウェアハウス環境もしくはコンポーネントは、1つまたは複数のビジネスアプリケーションによって収集されたデータの格納のために中央リポジトリを提供することができる。
【0028】
たとえば、一実施形態に従って、データウェアハウス環境またはコンポーネントは、オンライン分析処理(OLAP)または他の技術を利用して複数の異なるデータソースからビジネス関連データを生成する多次元データベースとして提供され得る。組織は、このようなビジネス関連データを1つまたは複数の垂直および/または水平ビジネスアプリケーションから抽出して、抽出されたデータを、当該組織に関連付けられたデータウェアハウスインスタンスに取り込むことができる。
【0029】
水平ビジネスアプリケーションの例としては、上記のERP、HCM、CX、SCMおよびEPMを挙げることができ、さまざまな企業組織にわたる広範囲の機能を提供することができる。
【0030】
垂直ビジネスアプリケーションは、一般に、水平ビジネスアプリケーションよりも範囲が狭いが、規定の範囲または業界内のデータのチェーンのさらに上または下のデータへのアクセスを提供する。垂直ビジネスアプリケーションの例としては、特定の組織内で使用するための医療用ソフトウェアまたは銀行ソフトウェアを挙げることができる。
【0031】
ソフトウェアベンダは、ますます、企業ソフトウェア製品またはコンポーネントをたとえばオラクルフュージョンアプリケーションなどのSaaSまたはクラウド指向商品として提供するようになっているが、たとえばオラクルADWCなどの他の企業ソフトウェア製品またはコンポーネントは、SaaS、プラットフォーム・アズ・ア・サービス(PaaS)またはハイブリッドサブスクリプションのうちの1つまたは複数として提供され得るため、従来のビジネスインテリジェンス(BI)アプリケーションおよびプロセスの企業ユーザは、総じて、水平および垂直ビジネスアプリケーションからデータを抽出して、抽出されたデータをデータウェアハウスに導入するというタスク、すなわち時間も資源も消費するであろうプロセスに直面することになる。
【0032】
一実施形態に従って、分析アプリケーション環境は、顧客(テナント)が、たとえばオラクルビジネスインテリジェンスアプリケーション(OBIA)環境などのBIコンポーネント、または、顧客(テナント)自体によってもしくは複数の第三者エンティティから供給される大量のデータを調べるように適合された他のタイプのBIコンポーネントとともに使用するための、コンピュータによって実行可能なソフトウェア分析アプリケーションを開発することを可能にする。
【0033】
たとえば、一実施形態に従って、分析アプリケーション環境は、データウェアハウスコンポーネントを含むSaaSビジネス生産性ソフトウェア製品スイートとともに使用されると、当該スイートのビジネス生産性ソフトウェアアプリケーションからのデータをデータウェアハウスコンポーネントに投入するのに使用することができる。予め規定されたデータ統合フローは、ビジネス生産性ソフトウェアアプリケーションとデータウェアハウスとの間のデータのETL処理を自動化することができ、この処理は、それらのサービスのユーザによって従来の方法でまたは手動で行われていたかもしれない。
【0034】
別の例として、一実施形態に従って、分析アプリケーション環境は、SaaS製品スイートのさまざまなビジネス生産性ソフトウェアアプリケーションにわたって供給される統合されたデータを格納するためのデータベーススキーマで予め構成され得る。このような予め構成されたデータベーススキーマを使用して、ユーザが提供されたデータウェアハウスを手動で設計、調整およびモデル化するプロセスをしないで済ますことを可能にしながら、SaaS製品スイートにおいて提供される生産性ソフトウェアアプリケーションおよび対応するトランザクションデータベースにわたって均一性を提供することができる。
【0035】
別の例として、一実施形態に従って、分析アプリケーション環境は、予め規定されたダッシュボード、重要業績指標(KPI)または他のタイプのレポートを含むように、たとえばさまざまなビジネス生産性ソフトウェアアプリケーションの文脈においてビジネス関連データオブジェクトを記載している関連するメタデータをデータウェアハウスインスタンスのレポートインターフェイスに予め投入するのに使用することができる。
【0036】
図1は、一実施形態に係る、分析アプリケーション環境を提供するためのシステムを示す図である。
【0037】
図1に示されるように、一実施形態に従って、分析アプリケーション環境またはアナリティクスクラウド(たとえばOAC)100は、コンピュータシステムによって提供されることができ、またはコンピュータシステムで動作することができ、このコンピュータシステムは、コンピュータハードウェア(たとえば、プロセッサ、メモリ)101を有し、コントロールプレーン102およびデータプレーン104として動作する1つまたは複数のソフトウェアコンポーネントを含み、データウェアハウスまたはデータウェアハウスインスタンス160へのアクセスを提供する。
【0038】
一実施形態に従って、
図1に示され、さまざまな他の実施形態に関して本明細書にさらに記載されるコンポーネントおよびプロセスは、コンピュータシステムまたは他のタイプの処理デバイスによって実行可能なソフトウェアまたはプログラムコードとして提供されることができる。
【0039】
たとえば、一実施形態に従って、本明細書に記載されているコンポーネントおよびプロセスは、クラウドコンピューティングシステムまたは他の好適にプログラムされたコンピュータシステムによって提供されることができる。
【0040】
一実施形態に従って、コントロールプレーンは、たとえばオラクルアナリティクスクラウドもしくはオラクルクラウドインフラストラクチャ環境などのSaaSもしくはクラウド環境、または他のタイプのクラウド環境の文脈において提供されるクラウドまたは他のソフトウェア製品に対する制御を提供するように動作する。
【0041】
たとえば、一実施形態に従って、コントロールプレーンは、コンソールインターフェイス110、および/または、プロビジョニングコンポーネント111を有するクラウド環境を含み得て、コンソールインターフェイス110は、顧客(テナント)20の制御下のデバイスハードウェア12、管理アプリケーション14およびユーザインターフェイス16を有するクライアントコンピュータデバイス10によるアクセスを可能にする。
【0042】
一実施形態に従って、コンソールインターフェイスは、グラフィカルユーザインターフェイス(GUI)および/またはコマンドラインインターフェイス(CLI)または他のインターフェイスを操作する顧客(テナント)によるアクセスを可能にすることができ、および/または、SaaSまたはクラウド環境のプロバイダおよびその顧客(テナント)によって使用するためのインターフェイスを含み得る。
【0043】
たとえば、一実施形態に従って、コンソールインターフェイスは、顧客がSaaS環境内で使用するためのサービスをプロビジョニングして、プロビジョニングされたそれらのサービスを構成することを可能にするインターフェイスを提供することができる。
【0044】
一実施形態に従って、プロビジョニングコンポーネントは、プロビジョニングコマンドによって指定されるサービスをプロビジョニングするためのさまざまな機能を含み得る。
【0045】
たとえば、一実施形態に従って、プロビジョニングコンポーネントは、ビジネス生産性ソフトウェアアプリケーションのスイートのうちの1つまたは複数を、それらのソフトウェアアプリケーションで使用するためのデータウェアハウスインスタンスとともに購入するために、コンソールインターフェイスを介して顧客(テナント)によってアクセスされて利用されることができる。
【0046】
一実施形態に従って、顧客(テナント)は、データウェアハウス内の顧客スキーマ164のプロビジョニングを要求することができる。また、顧客は、必須の属性(たとえば、ログイン認証情報)および任意の属性(たとえば、サイズまたは速度)を含む、データウェアハウスインスタンスに関連付けられたいくつかの属性をコンソールインターフェイスを介して供給することもできる。次いで、プロビジョニングコンポーネントは、データウェアハウスの顧客スキーマを含む要求されたデータウェアハウスインスタンスをプロビジョニングして、顧客によって供給された適切な情報をデータウェアハウスインスタンスに投入することができる。
【0047】
一実施形態に従って、プロビジョニングコンポーネントは、たとえば特定の顧客(テナント)について要求されたETLプロセス実行頻度を変更または更新することによってデータウェアハウスインスタンスおよび/またはデータプレーンで動作するETLプロセスを更新または編集するのにも使用することができる。
【0048】
一実施形態に従って、プロビジョニングコンポーネントは、プロビジョニングアプリケーションプログラミングインターフェイス(API)112、いくつかのワーカ115、計測マネージャ116およびデータプレーンAPI118も備え得て、これらについては以下でさらに説明する。コンソールインターフェイスは、たとえばコンソールインターフェイスにおいてコマンド、命令または他の入力が受信されるとAPI呼び出しを行うことによってプロビジョニングAPIと通信して、SaaS環境内のサービスをプロビジョニングする、またはプロビジョニングされたサービスに対して構成変更を行うことができる。
【0049】
一実施形態に従って、データプレーンAPIは、データプレーンと通信することができる。
【0050】
たとえば、一実施形態に従って、データプレーンによって提供されたサービスに向けられるプロビジョニングおよび構成変更は、データプレーンAPIを介してデータプレーンに伝達されることができる。
【0051】
一実施形態に従って、計測マネージャは、コントロールプレーンを介してプロビジョニングされたサービスおよびサービスの使用を計測するさまざまな機能を含み得る。
【0052】
たとえば、一実施形態に従って、計測マネージャは、課金の目的で、特定の顧客(テナント)について、コントロールプレーンを介してプロビジョニングされたプロセッサの経時的な使用を記録することができる。同様に、計測マネージャは、課金の目的で、SaaS環境の顧客によって使用するための区分されたデータウェアハウスの記憶スペースの量を記録することができる。
【0053】
一実施形態に従って、データプレーンは、データパイプラインまたはプロセス層120と、データ変換層134とを含み得て、これらの層はともに、顧客の(テナントの)SaaS環境においてプロビジョニングされた、たとえばビジネス生産性ソフトウェアアプリケーションなどの組織の企業ソフトウェアアプリケーションまたはデータ環境からのオペレーションデータまたはトランザクションデータを処理する。データパイプラインまたはプロセスは、SaaS環境においてプロビジョニングされたトランザクションデータをビジネスアプリケーションおよびデータベースから抽出し、次いで、変換されたデータをデータウェアハウスにロードするさまざまな機能を含み得る。
【0054】
一実施形態に従って、データ変換層は、SaaS環境においてプロビジョニングされたビジネスアプリケーションおよび対応するトランザクションデータベースから受信されたトランザクションデータを、分析アプリケーション環境によって理解されるモデルフォーマットに変換するのにシステムが使用する、たとえば知識モデル(KM)などのデータモデル、または他のタイプのデータモデルを含み得る。このモデルフォーマットは、データウェアハウスへの格納に適したいずれかのデータフォーマットで提供されることができる。
【0055】
一実施形態に従って、データプレーンによって提供されるデータパイプラインまたはプロセスは、モニタリングコンポーネント122と、データステージングコンポーネント124と、データ品質コンポーネント126と、データ投影コンポーネント128とを含み得て、これらについては以下でさらに説明する。
【0056】
一実施形態に従って、データ変換層は、次元生成コンポーネント136と、ファクト生成コンポーネント138と、集合体生成コンポーネント140とを含み得て、これらについては以下でさらに説明する。また、データプレーンは、データおよび構成ユーザインターフェイス130と、マッピングおよび構成データベース132とを含み得る。
【0057】
一実施形態に従って、データウェアハウスは、デフォルト分析アプリケーションスキーマ(本明細書では、いくつかの実施形態に従って、分析ウェアハウススキーマと称される)162を含み、システムの各顧客(テナント)について上記の顧客スキーマを含み得る。
【0058】
一実施形態に従って、データプレーンは、抽出・変換およびロード(ETL)動作を実行することを担当し、この抽出・変換およびロード(ETL)動作は、たとえばSaaS環境において提供されるビジネス生産性ソフトウェアアプリケーションおよび対応するトランザクションデータベースなどの組織の企業ソフトウェアアプリケーションまたはデータ環境からトランザクションデータを抽出し、抽出されたデータをモデルフォーマットに変換し、変換されたデータをデータウェアハウスの顧客スキーマにロードすることを含む。
【0059】
たとえば、一実施形態に従って、環境の各顧客(テナント)は、自身の顧客スキーマに関連付けられたデータウェアハウス内の自身の顧客テナンシに関連付けられることができ、さらに、データパイプラインまたはプロセス、たとえばETLプロセスによって定期的にまたは他のペースで更新され得る分析アプリケーションスキーマへの読取専用アクセスを備えることができる。
【0060】
一実施形態に従って、複数のテナントをサポートするために、システムは、複数のデータウェアハウスまたはデータウェアハウスインスタンスの使用を可能にすることができる。
【0061】
たとえば、一実施形態に従って、第1のテナントのための第1のウェアハウス顧客テナンシは、第1のデータベースインスタンスと、第1のステージング領域と、複数のデータウェアハウスまたはデータウェアハウスインスタンスの第1のデータウェアハウスインスタンスとを備え得る一方、第2のテナントのための第2の顧客テナンシは、第2のデータベースインスタンスと、第2のステージング領域と、複数のデータウェアハウスまたはデータウェアハウスインスタンスの第2のデータウェアハウスインスタンスとを備え得る。
【0062】
一実施形態に従って、データパイプラインまたはプロセスは、間隔をあけて(たとえば、1時間ごとに/1日ごとに/1週間ごとに)実行されて、たとえばSaaS環境においてプロビジョニングされたビジネス生産性ソフトウェアアプリケーションおよび対応するトランザクションデータベース106などの企業ソフトウェアアプリケーションまたはデータ環境からトランザクションデータを抽出するようにスケジューリングされることができる。
【0063】
一実施形態に従って、抽出プロセス108は、トランザクションデータを抽出することができ、抽出が行われると、データパイプラインまたはプロセスは、抽出されたデータを、抽出されたデータのための一時的なステージング領域として機能し得るデータステージング領域に挿入することができる。データ品質コンポーネントおよびデータ保護コンポーネントは、抽出されたデータの完全性を保証するのに使用することができる。
【0064】
たとえば、一実施形態に従って、データ品質コンポーネントは、データがデータステージング領域に一時的に保持されている間に、抽出されたデータに対して検証を行うことができる。
【0065】
一実施形態に従って、抽出プロセスがその抽出を完了すると、データ変換層を使用して変換プロセスを開始して、抽出されたデータをモデルフォーマットに変換して、データウェアハウスの顧客スキーマにロードすることができる。
【0066】
上記のように、一実施形態に従って、データパイプラインまたはプロセスは、データをモデルフォーマットに変換するためのデータ変換層と組み合わせて動作することができる。マッピングおよび構成データベースは、データ変換によって使用されるデータモデルを定義するメタデータおよびデータマッピングを格納することができる。データおよび構成ユーザインターフェイス(UI)は、マッピングおよび構成データベースへのアクセスおよび変更を容易にすることができる。
【0067】
一実施形態に従って、マッピングおよび構成データベースに定義されたデータモデルに基づいて、モニタリングコンポーネントは、変換対象のいくつかの異なるデータセットの従属性を判断することができる。判断された従属性に基づいて、モニタリングコンポーネントは、いくつかの異なるデータセットのうちのどれが最初にモデルフォーマットに変換されるべきであるかを判断することができる。
【0068】
たとえば、一実施形態に従って、第1のモデルデータセットがその他のモデルデータセットへの従属性を含まず、第2のモデルデータセットが第1のモデルデータセットへの従属性を含む場合、モニタリングコンポーネントは、第1のデータセットへの第2のデータセットの従属性を吸収するように第2のデータセットの前に第1のデータセットを変換すると判断することができる。
【0069】
一実施形態に従って、データ変換層は、たとえば上記のデータモデルに従って、抽出されたデータを、データウェアハウスの顧客スキーマへのロードに適したフォーマットに変換することができる。変換中、データ変換は、次元生成、ファクト生成および集合体生成を適宜実行することができる。次元生成は、データウェアハウスインスタンスにロードするための次元またはフィールドを生成することを含み得る。
【0070】
たとえば、一実施形態に従って、次元は、たとえば「名前」、「住所」または「年齢」などのデータのカテゴリを含み得る。ファクト生成は、データがとることができる値または「尺度」の生成を含む。ファクトは、データウェアハウスインスタンスにおける適切な次元に関連付けられる。集合体生成は、データウェアハウスインスタンスの顧客スキーマ164における既存のデータに対する変換されたデータの集合体を計算するデータマッピングの作成を含む。
【0071】
一実施形態に従って、いかなる変換も(データモデルによって定義されるように)実施されると、データパイプラインまたはプロセスは、ソースデータを読み取って、変換を適用して、次いでデータをデータウェアハウスインスタンスにプッシュすることができる。
【0072】
一実施形態に従って、データ変換は、規則で表すことができ、変換が行われると、値はステージング領域に中間保持されることができ、このステージング領域では、データがデータウェアハウスインスタンスにおける顧客スキーマにアップロードされる前に、データ品質コンポーネントおよびデータ投影コンポーネントが変換されたデータの完全性を検査して確認することができる。モニタリングは、たとえばいくつかのコンピュートインスタンスまたは仮想マシンにおける抽出・変換・ロードプロセス実行として提供され得る。抽出・変換・ロードプロセス中も従属性を維持することができ、データパイプラインまたはプロセスは、このような発注決定に対処することができる。
【0073】
一実施形態に従って、抽出されたデータの変換後、データパイプラインまたはプロセスは、ウェアハウスロード手順150を実行して、変換されたデータをデータウェアハウスインスタンスの顧客スキーマにロードすることができる。変換されたデータを顧客スキーマにロードした後、変換されたデータは、分析されてさまざまなさらなるビジネスインテリジェンスプロセスで使用することができる。
【0074】
水平および垂直に統合されたビジネスソフトウェアアプリケーションは、一般に、リアルタイムでのデータの取り込みに向けられる。これは、水平および垂直に統合されたビジネスソフトウェアアプリケーションが通常は日々のワークフローに使用されてデータをトランザクションデータベースに格納することによるものであり、通常は最新データのみがこのようなデータベースに格納されることを意味する。
【0075】
たとえば、従業員がオフィスを移る場合、当該従業員に関連付けられた記録をHCMアプリケーションが更新し得るが、このようなHCMアプリケーションは、一般に、従業員が会社での在職期間中に働いていた各オフィスの記録を維持しないであろう。したがって、会社内での従業員のモビリティを判断しようとするBI関連のクエリは、このようなクエリを完了するための十分な記録をトランザクションデータベース内に持たないであろう。
【0076】
一実施形態に従って、現在のデータに加えて、水平および垂直に統合されたビジネスソフトウェアアプリケーションによって生成された履歴データを、BIアプリケーションによって容易に理解可能な文脈において格納することによって、上記の技術を使用して投入されたデータウェアハウスインスタンスは、たとえばビジネス生産性およびアナリティクス製品スイートまたは顧客の選択したSQLツールによって提供されるインターフェイスを使用してBIアプリケーションがこのようなクエリを処理するためのリソースを提供する。
【0077】
図2は、一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【0078】
図2に示されるように、一実施形態に従って、データは、上記のデータパイプラインプロセスを使用して、たとえば顧客の(テナントの)企業ソフトウェアアプリケーションもしくはデータ環境(106)から、または1つもしくは複数の顧客に特有のアプリケーション107から供給されるカスタムデータ109として、供給され、データウェアハウスインスタンスにロードされることができ、データウェアハウスインスタンスは、いくつかの例では、データの格納のためのオブジェクトストレージ105の使用を含む。
【0079】
一実施形態に従って、データパイプラインまたはプロセスは、各顧客(テナント)について、分析アプリケーションスキーマをたとえばスタースキーマとして維持し、この分析アプリケーションスキーマは、特定のアナリティクスユースケース、たとえば人的資本管理(HCM)アナリティクスまたは企業資源計画(ERP)アナリティクスのためのベストプラクティスに従ってシステムによって定期的にまたは他のペースで更新される。
【0080】
一実施形態に従って、各顧客(テナント)について、システムは、システムによって維持されて更新される分析アプリケーションスキーマを分析アプリケーション環境(クラウド)テナンシ114内で使用して、当該顧客の企業アプリケーション環境内および顧客テナンシ117内でのデータの分析に基づいて、当該顧客についてデータウェアハウスインスタンスに予め投入する。したがって、システムによって維持される分析アプリケーションスキーマは、データがデータパイプラインまたはプロセスによって顧客の環境から検索されて、「ライブ」の態様で顧客のデータウェアハウスインスタンスにロードすることを可能にする。
【0081】
一実施形態に従って、分析アプリケーション環境は、環境の各顧客について、顧客スキーマも提供し、この顧客スキーマは、顧客によって容易に修正可能であり、顧客が自身のデータウェアハウスインスタンス内のデータを補足して利用することを可能にする。分析アプリケーション環境の各顧客について、結果として得られるデータウェアハウスインスタンスは、データベースとして動作し、このデータベースの内容は、顧客によって部分的に制御され、分析アプリケーション環境(システム)によって部分的に制御され、これは、データベースが、さまざまなアナリティクスユースケース、たとえばHCMアナリティクスまたはERPアナリティクスに対処するために、企業アプリケーション環境から検索された適切なデータを予め投入されているように見えることを含む。
【0082】
たとえば、一実施形態に従って、データウェアハウス(たとえば、オラクル自律型データウェアハウス(ADWC))は、分析アプリケーションスキーマを含み、各顧客/テナントについて、企業ソフトウェアアプリケーションまたはデータ環境から供給される顧客スキーマを含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、当該テナントのみがアクセス可能であるが、同時に、共有の分析アプリケーション環境のさまざまな、たとえばETL関連のまたは他の特徴へのアクセスを可能にする。
【0083】
一実施形態に従って、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にし、たとえば、第1の顧客テナンシは、第1のデータベースインスタンスと、第1のステージング領域と、第1のデータウェアハウスインスタンスとを備え得て、第2の顧客テナンシは、第2のデータベースインスタンスと、第2のステージング領域と、第2のデータウェアハウスインスタンスとを備え得る。
【0084】
一実施形態に従って、特定の顧客/テナントについて、データの抽出時に、データパイプラインまたはプロセスは、抽出されたデータを、抽出されたデータのための一時的なステージング領域として機能し得る当該テナントのためのデータステージング領域に挿入することができる。データ品質コンポーネントおよびデータ保護コンポーネントは、たとえばデータがデータステージング領域に一時的に保持されている間に、抽出されたデータに対して検証を実行することによって、抽出されたデータの完全性を保証するのに使用することができる。抽出プロセスがその抽出を完了すると、データ変換層を使用して変換プロセスを開始して、抽出されたデータをモデルフォーマットに変換して、データウェアハウスの顧客スキーマにロードすることができる。
【0085】
図3は、一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【0086】
図3に示されるように、一実施形態に従って、上記のデータパイプラインプロセスを使用して、たとえば顧客の(テナントの)企業ソフトウェアアプリケーションもしくはデータ環境から、または1つもしくは複数の顧客に特有のアプリケーションから供給されるカスタムデータとして、データを抽出し、当該データをデータウェアハウスインスタンスにロードする、または当該データをデータウェアハウスにおいてリフレッシュするプロセスは、一般に、3つの大まかな段階を含み、これらの段階は、1つまたは複数のコンピュートインスタンス170によって実行される1つまたは複数の抽出サービス163、変換サービス165およびロード/パブリッシュサービス167を含むETPサービス160またはプロセスによって実行される。
【0087】
抽出:一実施形態に従って、抽出のためのビューオブジェクトのリストは、たとえばReST呼び出しによってオラクルBIクラウドコネクタ(BICC)コンポーネントに提出されることができる。抽出されたファイルは、データの格納のために、たとえばオラクルストレージサービス(OSS)コンポーネントなどのオブジェクトストレージコンポーネントにアップロードされることができる。
【0088】
変換:一実施形態に従って、変換プロセスは、オブジェクトストレージコンポーネント(たとえば、OSS)からデータファイルを取得して、それらをターゲットデータウェアハウス、たとえばADWCデータベースにロードしている間にビジネスロジックを適用し、このターゲットデータウェアハウスは、データパイプラインまたはプロセスの内部にあって、顧客(テナント)には公表されない。
【0089】
ロード/パブリッシュ:一実施形態に従って、ロード/パブリッシュサービスまたはプロセスは、たとえばADWCデータベースまたはウェアハウスからデータを取得して、それを、顧客(テナント)がアクセス可能なデータウェアハウスインスタンスにパブリッシュする。
【0090】
図4は、一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【0091】
一実施形態に係る複数のテナント(顧客)を有するシステムの動作を示す
図4に示されるように、データは、上記のデータパイプラインプロセスを使用して、たとえば複数の顧客の(テナントの)企業ソフトウェアアプリケーションまたはデータ環境の各々から供給され、データウェアハウスインスタンスにロードされることができる。
【0092】
一実施形態に従って、データパイプラインまたはプロセスは、複数の顧客(テナント)の各々、たとえば顧客A180、顧客B182について、特定のアナリティクスユースケースのためのベストプラクティスに従ってシステムによって定期的にまたは他のペースで更新される分析アプリケーションスキーマを維持する。
【0093】
一実施形態に従って、複数の顧客(たとえば、顧客A,B)の各々について、システムは、システムによって維持および更新される分析アプリケーションスキーマ162A,162Bを使用して、当該顧客の企業アプリケーション環境106A,106B内および各顧客のテナンシ(たとえば、顧客Aテナンシ181,顧客Bテナンシ183)内でのデータの分析に基づいて、顧客のためのデータウェアハウスインスタンスに予め投入することにより、データパイプラインまたはプロセスによって顧客の環境からデータが検索されて、顧客のデータウェアハウスインスタンス160A,160Bにロードされる。
【0094】
一実施形態に従って、分析アプリケーション環境は、当該環境の複数の顧客の各々について、顧客スキーマ(たとえば、顧客Aスキーマ164A,顧客Bスキーマ164B)も提供し、この顧客スキーマは、顧客によって容易に修正可能であり、顧客が自身のデータウェアハウスインスタンス内のデータを補足して利用することを可能にする。
【0095】
上記のように、一実施形態に従って、分析アプリケーション環境の複数の顧客の各々について、結果として得られるデータウェアハウスインスタンスは、データベースとして動作し、このデータベースの内容は、顧客によって部分的に制御され、分析アプリケーション環境(システム)によって部分的に制御され、これは、データベースが、さまざまなアナリティクスユースケースに対処するために、企業アプリケーション環境から検索された適切なデータを予め投入されているように見えることを含む。特定の顧客についての抽出プロセス108A,108Bがその抽出を完了すると、データ変換層を使用して変換プロセスを開始して、抽出されたデータをモデルフォーマットに変換して、データウェアハウスの顧客スキーマにロードすることができる。
【0096】
図5は、一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【0097】
一実施形態に従って、起動計画186は、顧客の(テナントの)特定のニーズに対処するために特定の機能領域について当該顧客のデータパイプラインまたはプロセスサービスの動作を制御するのに使用することができる。
【0098】
たとえば、一実施形態に従って、起動計画は、特定の順序で、特定の時刻に、特定の時間窓以内に実行されるいくつかの抽出・変換およびロード(パブリッシュ)サービスまたはステップを定義することができる。
【0099】
一実施形態に従って、各顧客は、自身の起動計画に関連付けられることができる。たとえば、第1の顧客Aについての起動計画は、当該顧客の企業ソフトウェアアプリケーション環境(たとえば、フュージョンアプリケーション環境)から検索されるテーブルを確定する、またはサービスおよびそれらのプロセスがどのように順番に実行されるかを確定することができ、第2の顧客Bについての起動計画は、同様に、当該顧客の企業ソフトウェアアプリケーション環境から検索されるテーブルを確定する、またはサービスおよびそれらのプロセスがどのように順番に実行されるかを確定することができる。
【0100】
一実施形態に従って、起動計画は、マッピングおよび構成データベースに格納されることができ、データおよび構成UIを介して顧客によってカスタマイズ可能である。各顧客は、いくつかの起動計画を有し得る。起動計画に従ってさまざまな顧客についてETLプロセスを実行するコンピュートインスタンス/サービス(仮想マシン)は、起動計画の使用のための特定のサービスに専念し、次いで他のサービスおよび起動計画による使用のためにリリースされることができる。
【0101】
一実施形態に従って、ある期間にわたって記録された履歴業績データの確定に基づいて、システムは、複数のテナントについてのVMおよびサービスレベル合意(SLA)の利用に対処するために、たとえば特定のテナントに関連付けられた1つまたは複数の機能領域について、またはそれらのテナントに関連付けられた一連の起動計画にわたって、起動計画の実行を最適化することができる。このような履歴データは、ロード量およびロード時間の統計を含み得る。
【0102】
たとえば、一実施形態に従って、履歴データは、抽出のサイズ、抽出の回数、抽出時間、ウェアハウスのサイズ、変換時間、パブリッシュ(ロード)時間、ビューオブジェクト抽出サイズ、ビューオブジェクト抽出記録数、ビューオブジェクト抽出時間、ウェアハウステーブル数、テーブルについて処理される記録の数、ウェアハウステーブル変換時間、パブリッシュテーブル数およびパブリッシュ時間を含み得る。このような履歴データは、たとえば順番にまたは並列に実行して起動計画を実行するための最短時間に到達するようにさまざまなタスクを編成するために現在および将来の起動計画を推定および計画するのに使用することができる。また、収集された履歴データは、テナントについての複数の起動計画にわたって最適化するのに使用することができる。いくつかの実施形態において、履歴データに基づく起動計画(すなわち、ETLなどのジョブの特定のシーケンス)の最適化は、自動であってもよい。
【0103】
図6は、一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【0104】
図6に示されるように、一実施形態に従って、システムは、ストレージクラウドサービス192、たとえばOSSを介した各顧客の企業ソフトウェアアプリケーション環境(たとえば、フュージョンアプリケーション環境)(この例では、BICCコンポーネントを含む)からの、およびそこからデーアウェアハウスインスタンスへの、(たとえば、オラクル)管理テナンシ内のデータ構成/管理/ETL//ステータスサービス190によって制御されるデータのフローを可能にする。
【0105】
上記のように、一実施形態に従って、このデータのフローは、たとえば上記の抽出サービスおよび変換サービスを含む1つまたは複数のサービスによって、ETLリポジトリ193を参照して管理されることができ、ETLリポジトリ193は、データをストレージクラウドサービスから取得してデータを内部ターゲットデータウェアハウス(たとえば、ADWCデータベース)194にロードし、内部ターゲットデータウェアハウス194は、データパイプラインまたはプロセスの内部にあって、顧客には公表されない。
【0106】
一実施形態に従って、データは、段階的にデータウェアハウスに移動され、その後、データベーステーブル変更ログ195に移動され、ロード/パブリッシュサービスは、データベーステーブル変更ログ195から、顧客に関連付けられた、顧客がアクセス可能な、顧客テナンシ内のターゲットデータウェアハウスインスタンスに、顧客データをロードすることができる。
【0107】
図7は、一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【0108】
一実施形態に従って、企業アプリケーションからデータウェアハウスインスタンスにデータを抽出、変換およびロードすることは、複数の段階を含み、各段階は、いくつかのシーケンシャルジョブまたは並列ジョブを有し得て、各顧客について異なるステージング領域196,198を含む異なる空間/ハードウェア上で実行可能である。
【0109】
図8は、一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【0110】
図8に示されるように、一実施形態に従って、計測マネージャは、コントロールプレーンを介してプロビジョニングされたサービスおよびサービスの使用を計測して、プロビジョニングされたメトリック142を提供する機能を含み得る。
【0111】
たとえば、計測マネージャは、課金の目的で、特定の顧客について、コントロールプレーンを介してプロビジョニングされたプロセッサの経時的な使用を記録することができる。同様に、計測マネージャは、課金の目的で、SaaS環境の顧客による使用のために区分されたデータウェアハウスの記憶スペースの量を記録することができる。
【0112】
図9は、一実施形態に係る、分析アプリケーション環境を提供するためのシステムをさらに示す図である。
【0113】
図9に示されるように、一実施形態に従って、上記のデータパイプラインプロセスを使用して、たとえば顧客の企業ソフトウェアアプリケーションまたはデータ環境から供給され得るデータに加えて、1つまたは複数の顧客に特有のアプリケーション107A,107Bから供給される1つまたは複数のさらなるカスタムデータ109A,109Bも、上記のデータパイプラインプロセス(いくつかの例では、データの格納のためのオブジェクトストレージの使用を含む)および/または顧客の観点からはミュータブルであるカスタムETLもしくは他のプロセス144のいずれかを使用して、データウェアハウスインスタンスに抽出、変換およびロードされることができる。データがデータウェアハウスインスタンスにロードされると、顧客は、顧客スキーマからのテーブルとソフトウェア分析アプリケーションスキーマからのテーブルとを組み合わせるビジネスデータベースビューを作成することができ、たとえばビジネス生産性およびアナリティクス製品スイートまたは顧客の選択したSQLツールによって提供されるインターフェイスを使用してデータウェアハウスインスタンスに照会することができる。
【0114】
図10は、一実施形態に係る、分析アプリケーション環境を提供するための方法のフローチャートを示す図である。
【0115】
図10に示されるように、一実施形態に従って、ステップ200において、分析アプリケーション環境は、複数のテナントによるデータの格納のためにデータウェアハウスへのアクセスを提供し、データウェアハウスは、分析アプリケーションスキーマに関連付けられる。
【0116】
ステップ202において、複数のテナントの各テナントは、顧客テナンシ、およびデータウェアハウスインスタンスに投入する際にテナントによって使用するための顧客スキーマに関連付けられる。
【0117】
ステップ204において、データウェアハウスのインスタンスは、企業ソフトウェアアプリケーションまたはデータ環境から受信されたデータを投入され、分析アプリケーション環境の特定のテナントに関連付けられたデータは、分析アプリケーションスキーマおよび当該特定のテナントに関連付けられた顧客スキーマに従って、当該特定のテナントに関連付けられた、当該特定のテナントがアクセス可能なデータウェアハウスインスタンスにおいてプロビジョニングされる。
【0118】
拡張性およびカスタマイズ
データアナリティクスもしくはビジネスインテリジェンスデータを提供する目的またはソフトウェア分析アプリケーションを開発する目的でデータをどのように分類、集約または変換するかに関して、データアナリティクス環境の異なる顧客は異なる要求を有しているであろう。
【0119】
一実施形態に従って、このような異なる要求をサポートするために、システムは、カスタムセマンティック拡張を使用してセマンティックデータモデル(セマンティックモデル)を拡張してプレゼンテーション層においてカスタムコンテンツを提供することを可能にするセマンティック層を含み得る。拡張ウィザードまたは開発環境は、カスタムセマンティック拡張を使用して分岐およびステップの定義を介してセマンティックモデルを拡張またはカスタマイズし、その後、拡張またはカスタマイズされたセマンティックモデルを生産環境に昇格させる際にユーザを導くことができる。
【0120】
さまざまな実施形態に従って、記載されているアプローチの技術的利点は、さらなるタイプのデータソースに対するサポートを含む。たとえば、ユーザは、第1のベンダの製品から供給されたERPデータと第2の異なるベンダの製品から供給されたHCMデータとの組み合わせに基づいて、または異なる規制要件を有する複数のデータソースから受信されたデータの組み合わせに基づいて、データアナリティクスを実行することができる。ユーザ定義の拡張またはカスタマイズは、基礎となるシステムに対するパッチ、更新または他の変更に耐えることができる。
【0121】
図11は、一実施形態に係る、分析アプリケーション環境において拡張性およびカスタマイズをサポートするためのシステムを示す図である。
【0122】
一実施形態に従って、セマンティック層は、顧客のデータのセマンティックモデルを定義するデータを含み得て、これは、ユーザが一般に理解されるビジネス用語を使用して当該データを理解してアクセスするのを手助けする際に有用である。セマンティック層は、物理的なデータモデルまたはデータプレーンにマッピングする物理層と、計算を定義することができるマッピングまたは変換層として動作する論理層と、ユーザがコンテンツとしてデータにアクセスすることを可能にするプレゼンテーション層とを含み得る。
【0123】
図11に示されるように、一実施形態に従って、セマンティック層230は、パッケージングされたコンテンツ234を提供するのに使用することができるパッケージングされた(アウト・オブ・ザ・ボックスの、最初の)セマンティックモデル232を含み得る。たとえば、システムは、上記のETLまたは他のデータパイプラインまたはプロセスを使用して、データを顧客の企業ソフトウェアアプリケーションまたはデータ環境からデータウェアハウスインスタンスにロードすることができ、次いで、パッケージングされたセマンティックモデルを使用して、パッケージングされたコンテンツをプレゼンテーション層に提供することができる。
【0124】
一実施形態に従って、セマンティック層は、1つまたは複数のセマンティック拡張236に関連付けられることもでき、1つまたは複数のセマンティック拡張236は、パッケージングされたセマンティックモデルを拡張してカスタムコンテンツ238をプレゼンテーション層240に提供するのに使用することができる。
【0125】
一実施形態に従って、プレゼンテーション層は、たとえばソフトウェア分析アプリケーション、ユーザインターフェイス、ダッシュボード、重要業績指標(KPI)242、または、たとえばオラクルアナリティクスクラウドもしくはオラクル・アナリティクス・フォー・アプリケーションズなどの製品によって提供され得る他のタイプのレポートもしくはインターフェイスを使用して、データコンテンツへのアクセスを可能にすることができる。
【0126】
一実施形態に従って、上記のETLまたは他のデータパイプラインまたはプロセスを使用して顧客の環境から供給されるデータに加えて、顧客データが、さらなる拡張性およびカスタマイズの機会を提供するさまざまなデータモデルまたはシナリオを使用してデータウェアハウスインスタンスにロードされることができる。
【0127】
ウィザードベースの拡張性
ある実施形態に従うと、本システムは、セマンティックモデルに関してユーザが何をしたいかを一連のステップにおいてキャプチャし、次いで、セマンティックモデルを拡張するために使用される、ユーザに対するルールのセットを(たとえばRPDとして)作成する、ウィザードベースの手法を提供する。例えば、ウィザードは、セマンティックモデルによって指定されるある次元またはファクトの、事前設定なしで利用可能な特徴付けを提示し得、次いで、ユーザは、それらの特徴付けを修正し得る。
【0128】
データアナリティクス環境の、異なる顧客は、データアナリティクスもしくはビジネスインテリジェンスデータを提供する目的、またはソフトウェア分析アプリケーションを開発する目的で、どのように彼らのデータが分類、集約、または変換されるかに関して、異なる要件を有し得る。
【0129】
ある実施形態に従うと、そのような異なる要件をサポートするために、本システムは、カスタムセマンティック拡張の使用を可能にして、セマンティックデータモデル(セマンティックモデル)を拡張し、プレゼンテーション層においてカスタムコンテンツを提供するセマンティック層を含み得る。拡張ウィザードまたは開発環境は、ユーザがカスタムセマンティック拡張を使用して、分岐および拡張の定義を通してセマンティックモデルを拡張またはカスタマイズし、その後、拡張またはカスタマイズされたセマンティックモデルを本番環境にプロモーションすることをガイドし得る。
【0130】
図12は、一実施形態による、分析アプリケーション環境における拡張性およびカスタマイズをさらに示す。
【0131】
図12に示すように、ある実施形態に従うと、ユーザまたは他のエンティティ(例えば、アナリティクスクラウドプロバイダ、またはシステムプロバイダ)は、1つ以上のカスタムセマンティック拡張を用いてセマンティックモデル250を拡張またはカスタマイズし得、次いでそれをシステムが用いて、カスタムコンテンツをプレゼンテーション層に提供し得る。
【0132】
例えば、ある実施形態に従うと、ユーザは、デバイスハードウェア254およびユーザインターフェイス256を有するクライアント(コンピュータ)デバイス252を用いて、カスタムセマンティック拡張のカスタマイズおよび使用を通じてユーザをガイドする拡張ウィザード258もしくはソフトウェア開発コンポーネントと対話するかまたは他の態様でそれを操作し得る。
【0133】
ある実施形態に従うと、ユーザは、新たなカスタマイズ分岐260を編集または作成して、セマンティックモデルを拡張またはカスタマイズし得る。分岐の選択は、ユーザの特定のカスタマイズまたは拡張と協働し、それらを組み込むよう、セマンティックモデルのインスタンスをユーザに提供する。各分岐は、アトミックワークユニットとして動作し、カスタマイズタイプに関連付けられる1つ以上のカスタマイズステップおよび対応する拡張を含み得る。拡張ウィザードは、データ認識し得、分岐がカスタマイズされるときに基底のデータのプレビューを提供し得る。例えば、ユーザがカスタマイズするべき特定の分岐を指定すると、拡張ウィザードは、ユーザが見直すための例示的なデータの表を提示し得、その後、例えば、そのデータとともに使用するための定義または集約をカスタマイズすることを通して、ユーザをガイドする。異なるタイプの分岐は、異なる拡張ウィザードに関連付けられ得る。
【0134】
図12にさらに示されるように、ある実施形態に従うと、拡張ウィザードは、アクション261を通じてユーザをガイドして、1つ以上のカスタマイズステップ262を編集/追加し、カスタマイズタイプ263を選択し、適切な拡張ウィザード264を完了/満たし得る。各ステップにおいて、拡張ウィザードは、ユーザに1つ以上のウィザード画面を検討または完了のために提示し得るが、これは、拡張のタイプに応じて異なってもよい。ステップの完了が成功すると、ユーザは、分岐に対するカスタマイズをテストし、さらなるステップを追加し、または変更を適用し得る(265)。次いで、カスタマイズされた分岐は、(メイン)セマンティックモデルにマージされ得る(266)。
【0135】
図12にさらに示されるように、ある実施形態に従うと、システムは、セマンティックモデルに対する変更を、たとえばOracle BI Repository(RPD)ファイルまたは他のタイプのファイルもしくはメタデータとして、パブリッシュ(267)および/またはプロモート(268)し得る。
【0136】
一実施形態に従って、セマンティックモデルは、セマンティックモデルのさまざまな物理層、ビジネスモデルおよびマッピング層、ならびにプレゼンテーション層側面を実現する論理スキーマ、物理スキーマ、物理-論理マッピング、集合体テーブルナビゲーションおよび/または他の構成体を定義するメタデータを有するBIリポジトリ(RPD)ファイルとして、たとえばオラクル環境において定義されることができる。
【0137】
一実施形態に従って、顧客は、たとえばデータウェアハウスインスタンスに格納されたデータに関連付けられたカスタムファクトまたは次元を追加することによって特定の要求をサポートするために、データソースモデルに対する修正を実行し得て、システムは、それに応じてセマンティックモデルを拡張することができる。
【0138】
たとえば、一実施形態に従って、システムは、セマンティックモデル拡張プロセスを使用して、顧客のデータをプログラムによって内観して、カスタムファクト、カスタム次元、またはデータソースモデルに対してなされた他のカスタマイズもしくは拡張を確定し、次いで、適切なフローを使用して、セマンティックモデルを自動的に修正または拡張して、それらのカスタマイズもしくは拡張をサポートすることができる。
【0139】
複数ユーザに対するサポート
別の実施形態によれば、セマンティックモデルに対して作業している複数のユーザが、異なる対象領域上で操作している場合がある。マルチユーザ開発環境は、複数のユーザが、セマンティックモデルの、異なる分岐または拡張を扱うことを可能にする。個々の分岐または拡張が完了すると、本システムは、モデル全体に対するすべての変更を比較し、何らかの競合があるかどうかを判断し、適切な場合には、ロックおよびキューを含めて、どの分岐または拡張を最終モデルに含めるべきかを評価する。
【0140】
典型的な企業組織内には、ソフトウェア分析アプリケーションを開発する、またはデータアナリティクスもしくはビジネスインテリジェンスデータを生成する責任を負う多くのユーザが存在し得る。これをサポートするために、ある実施形態に従うと、本システムにより、複数ユーザが同時に作業して、セマンティックモデルに対する拡張またはカスタマイズを開発することが可能になり、変更が最終的には(メイン)セマンティックモデルにマージされる。
【0141】
図13~
図16は、ある実施形態に係る、分析アプリケーション環境のカスタマイズまたは拡張における複数ユーザに対するサポートを示す。
【0142】
図13~
図16に示されるように、ある実施形態に従うと、複数のユーザA~Dの各々は、セマンティックモデルのインスタンスに対して、上述したような1つ以上のカスタムセマンティック拡張を用いて作業して、修正282、284、286、288を、セマンティックモデルに対する拡張またはカスタマイズとして提供し得る。
【0143】
たとえば、
図13に示されるように、ある実施形態に従うと、各ユーザは、カスタマイズを(メイン)セマンティックモデルにマージし得る。例えば、第1のユーザAは、領域次元を追加すること(ステップ1)、コストセンター次元を拡張すること(ステップ2)、テリトリ階層を定義すること(ステップ3)、および移動費計算を追加すること(ステップ4)を含む金融アプリケーション総勘定元帳(GL)収益性をカスタマイズすることに関連して新たな分岐を作成することを望んでもよい。次いで、ユーザAのカスタマイズが適用され、(メイン)セマンティックモデルにマージされ得る。
【0144】
図14に示すように、ある実施形態に従うと、第2のユーザBは、テリトリ次元を追加すること(ステップ1)と口座開設時金額計算を追加すること(ステップ2)とを含む、GL詳細トランザクションのカスタマイズに関連して新たな分岐を作成することを望んでもよく、一方、第3のユーザCは、位置次元を追加すること(ステップ1)と、手元資金計算を追加すること(ステップ2)と、GL集約対象領域を作成すること(ステップ3)とを含む、GLバランスシートをカスタマイズすることに関連して、新たな分岐を作成することを望んでもよい。ユーザBおよびCの各々によって提供されるカスタマイズは、同様に適用され、(メイン)セマンティックモデルにマージされ得る。
【0145】
図15に示されるように、ある実施形態に従うと、複数のユーザA~Dの各々は、セマンティックモデルのインスタンスに対して、上述したような1つ以上のカスタムセマンティック拡張を用いて作業して、修正をセマンティックモデルの拡張またはカスタマイズとして提供し得る。
【0146】
図16に示されるように、ある実施形態に従うと、本システムは、セマンティックモデルが本番環境へのプロモーションの準備ができているかどうかを判断することを含む、セマンティックモデルの異なるバージョンをサポートし得る。例えば、上記のユーザの各々がセマンティックモデルの初期バージョン(v1.0)に対するカスタマイズを開発する間に、第4のユーザDは、例えば戦略的サプライヤ次元を追加することまたは領域次元を拡張することを含む、セマンティックモデルの新たなバージョン(v1.1)のための新たな分岐または拡張に対して作業を開始し得る。
【0147】
ある実施形態に従うと、本システムは、レポート(例えば、収入の定義における変更)を作成する際に用いられる、セマンティックモデルに対する定義上の変更を制御して、ビジネスインテリジェンスデータの正確な生成を確実にし得る。たとえば、ある実施形態に従うと、本システムは、セマンティックモデル拡張が最初は開発/テスト環境においてのみ許可され、管理者がそれらのカスタマイズを制御された態様で本番環境にプロモートし得るまで本番環境においては許可されないことを保証し得る。
【0148】
ある実施形態に従うと、管理者は、管理者インターフェイス290を有するクライアント(コンピュータ)デバイスを用いて、セマンティックモデルに対する任意のユーザ開発カスタマイズの本番環境へのプロモーションを制御し得る。
【0149】
記載される手法の利点は、ユーザの定義された拡張またはカスタマイズが、基底のシステムに対するパッチ、更新、または他の変更に耐え得ることを含む。セマンティックモデルのイミュータブルな局面がパッチまたは更新される場合;セマンティック拡張として提供されたカスタマイズは保持される。パッチまたは更新に続いて、本システムは、拡張を自動的にリプレイし得る。拡張が、セマンティックモデルに対する基底の変更に起因して失敗する場合、管理者は、変更を評価し、可能なフィックスを一通り行い得る。潜在的な競合は、慎重に対処され得、すべての拡張を完全に適用することが不可能であり得る場合、管理者は、それに応じて通知され得る。
【0150】
セマンティックモデル構築に対する階層化された手法
別の実施形態に従うと、事前設定なしで利用可能なセマンティックモデルに対するカスタマイズは、階層化された手法を用いて実行され、セマンティックモデルのファクトリコードは無傷のままであり、変更/デルタは、顧客によって、編集可能であり、そのモデルの上に階層化され、そのような変更は、必要に応じて、パッチ/取り消され得る。セマンティックモデルの構築および記憶をサポートするために、本システムは、階層化された名前空間に対するポートを含み得る。
【0151】
図17は、ある実施形態に係る、セマンティックモデル構築に対する階層化された手法を示す図である。
【0152】
図17に示されるように、ある実施形態に従うと、初期バージョンまたはマスター分岐291から始まる、ユーザがセマンティックモデルのインスタンスに取りかかるときにユーザによって、および/またはアナリティクスクラウドプロバイダもしくはシステムプロバイダなどによる他のエンティティによって提供される各修正は、たとえばファクトリモデル(モデルのファクトリバージョン)292、システム拡張294、ユーザ拡張296、またはセキュリティ拡張298といった、セマンティックモデルに対するカスタマイズまたは拡張を生成するために用いられ得る。
【0153】
ある実施形態に従うと、セマンティックモデルを定義し、たとえばOracle BI Repository(RPD)ファイルまたは他のタイプのファイルもしくはメタデータとして記憶し得、セマンティックモデルに対する変更を、それらの変更を示すXMLファイルの形でアーチファクトとして提供し得る。
【0154】
図18は、ある実施形態に係る、セマンティックモデル構築に対する階層化された手法をさらに示す図である。
【0155】
図18に示されるように、ある実施形態に従うと、セマンティックモデルのカスタマイズまたは拡張は、コミットを通じて漸増的に実行され得る。
【0156】
例えば、アナリティクスクラウドプロバイダ(例えば、Oracle)がセマンティックモデルに変更を行うとき、その変更は、セマンティックモデルの適切な層または名前空間に記録(コミット)され得る。同様に、システムプロバイダがセマンティックモデルに変更を行うとき、システムプロバイダによって行われた変更は、アナリティクスクラウドプロバイダによって行われた変更を考慮に入れて、セマンティックモデルの適切な層または名前空間に記録(コミット)され得る。
【0157】
図19は、一実施形態による、分析アプリケーション環境における階層化された拡張の使用を示す図である。
【0158】
図19に示すように、ある実施形態に従うと、本システムは、拡張性と、複数の階層的拡張層を表す、バージョン制御されたアーチファクトに基づく、拡張の作成および管理とをサポートし得る。複数の拡張アーチファクトの各々は、拡張層の各々内で独立してバージョン制御され得る。本システムはまた、各拡張層上で別個の所有権もサポートし得る。
【0159】
上述したように、ある実施形態に従うと、ユーザまたは他のエンティティ(例えば、アナリティクスクラウドプロバイダ、またはシステムプロバイダ)は、1つ以上のカスタムセマンティック拡張を用いてセマンティックモデルを拡張またはカスタマイズし得、次いでそれを本システムが用いてカスタムコンテンツをプレゼンテーション層に提供し得る。
【0160】
例えば、ユーザは、カスタマイズおよびカスタムセマンティック拡張の使用を通してユーザをガイドする拡張ウィザードまたはソフトウェア開発コンポーネントと対話するかまたは別様にそれを操作して、セマンティックモデルを拡張またはカスタマイズし得る。セマンティック層はまた、パッケージ化されたセマンティックモデルを拡張し、カスタムコンテンツをプレゼンテーション層に提供するために使用され得る、クラウドプロバイダ、システムプロバイダ、または他のユーザによって提供される、1つ以上のセマンティック拡張と関連付けられることもできる。
【0161】
ある実施形態に従うと、階層化された名前空間およびセマンティックモデルに対する変更を表すマルチレイヤアーチファクトのバージョン制御に対するさまざまな手法を提供し得る。例えば、アーチファクトがXMLファイルとして提供される場合、XMLは、いくつか、例えば、3つの領域に分割され得、各層、例えばクラウドプロバイダ、システムプロバイダ、およびユーザ層は、領域の3分の1に対して所有権を有し得る。各層内では、変更は、コミットを通じて漸進的に実行され得る。本システムは、複数の領域および層の使用をサポートし得る(すなわち、1:1の関係である必要はない)。
【0162】
図19の例に示されるように、アナリティクスクラウドプロバイダ(例えば、Oracle)がセマンティックモデルに対する変更を行うと、その変更は、階層化された名前空間(レイヤ1)の適切な領域に、アナリティクスクラウドプロバイダによるセマンティックモデルに対する変更として、「Delta Commit X1」として記録され得る。
【0163】
図19の例にさらに示すように、システムプロバイダがセマンティックモデルに変更を行うとき、セマンティックモデルは、上述のようにアナリティクスクラウドプロバイダによって導入された変更によって既に修正されているので(ΣX)、システムプロバイダによってなされた変更は、階層化された名前空間(レイヤ2)の適切な領域に、アナリティクスクラウドプロバイダによってなされた変更とともに、システムプロバイダによる変更として、「Delta Commit ΣX + Y1」として、記録される。
【0164】
図20は、一実施形態による、分析アプリケーション環境における階層化された拡張の使用をさらに示す。
【0165】
図20の例に示すように、アナリティクスクラウドプロバイダがセマンティックモデルに別の変更を行うと、この後続の変更は、階層化された名前空間(レイヤ1)の適切な領域に、アナリティクスクラウドプロバイダによるセマンティックモデルに対する変更として、「Delta Commit X2」として、記録され得る。
【0166】
図20の例にさらに示すように、システムプロバイダがセマンティックモデルに別の変更を行うと、セマンティックモデルは、上述のようにアナリティクスクラウドプロバイダによって導入された変更によって既に修正されているので(ΣX)、システムプロバイダによって行われた後続の変更は、階層化された名前空間(レイヤ2)の適切な領域に、アナリティクスクラウドプロバイダによって行われた変更の各々とともに、システムプロバイダによる変更として、「Delta Commit ΣX + Y2」として、記録される。
【0167】
図21は、分析アプリケーション環境における階層化された拡張の使用をさらに示す。
図21の例に示すように、アナリティクスクラウドプロバイダがセマンティックモデルにさらに別の変更を行うと、この後続の変更は、階層化された名前空間(レイヤ1)の適切な領域に、アナリティクスクラウドプロバイダによるセマンティックモデルに対する変更として、「Delta Commit X3」として、再び記録され得る。
【0168】
図21の例にさらに示すように、システムプロバイダがセマンティックモデルにさらに別の変更を行うと、セマンティックモデルは、上述のようにアナリティクスクラウドプロバイダによって導入された変更によって既に修正されているので(ΣX)、システムプロバイダによって行われた後続の変更は、階層化された名前空間(レイヤ2)の適切な領域に、アナリティクスクラウドプロバイダによって行われた変更の各々とともに、システムプロバイダによる変更として、「Delta Commit ΣX + Y3」として、記録される。
【0169】
同様に、
図21の例に示されるように、ユーザがセマンティックモデルに変更を行うと、セマンティックモデルは、アナリティクスクラウドプロバイダによって(ΣX)、および続いてシステムプロバイダによって(ΣXY)導入された変更によって既に修正されているので、ユーザによって行われた後続の変更は、階層化された名前空間(レイヤ3)の適切な領域に、アナリティクスクラウドプロバイダおよびシステムプロバイダによって行われた変更の各々とともに、ユーザによる変更として、「Delta Commit ΣX + ΣY + Z1」として記録される。
【0170】
本プロセスは、セマンティックモデルへの追加の変更のために、アナリティクスクラウドプロバイダ、システムプロバイダ、または他のユーザによって継続または繰り返され、例えば、追加の変更を「Delta Commit ΣX + ΣY + Z2」;「Delta Commit ΣX + ΣY + Z3」などとして記録し得る。
【0171】
記載される手法の利点は、定義された拡張が、基底のシステムに対するパッチ、更新、または他の変更に耐え得ることを含む。セマンティックモデルのイミュータブルな局面がパッチまたは更新される場合、セマンティック拡張は、保持されるか、または適宜取り消され得る。
【0172】
図22は、ある実施形態に係る、分析アプリケーション環境における階層化された拡張の使用のためのプロセスを示す図である。
【0173】
図22に示されるように、ある実施形態に従うと、ステップ312において、コンピュータハードウェア(たとえばプロセッサ、メモリ)を有し、データベースまたはデータウェアハウスへのアクセスを提供するコンピュータシステムにおいて、要求に応答してデータアナリティクスを提供するように適合された分析アプリケーション環境が提供される。
【0174】
ステップ314では、本システムは、セマンティック拡張が、データアナリティクスをカスタムコンテンツとしてプレゼンテーション層において提供する際に使用するためのセマンティックデータモデル(セマンティックモデル)を拡張することを可能にする、セマンティック層を提供する。
【0175】
ステップ316において、本システムは、セマンティックモデルに関連して、セマンティック拡張によるセマンティックモデルに対する変更を一連のコミットとして定義する複数の階層的拡張層を提供する。
【0176】
ステップ318で、本システムは、要求に応答してデータベースまたはデータウェアハウスからデータを取り出し、セマンティック拡張によって拡張されたセマンティックモデルに従ってデータを処理し、データをカスタムコンテンツとしてプレゼンテーション層に提供する。
【0177】
フラグメント化されたクエリモデルおよびマージ
別の実施形態によれば、本システムは、フラグメント化されたクエリモデルの使用を可能にし、セマンティックモデルに対してカスタマイズが行われると、本システムは、クエリがランタイムで生成されると、様々なデルタからの変更を動的にマージして、拡張されたセマンティックモデルに基づいて適切なデータを動的に表面化し得る。
【0178】
図23は、ある実施形態に係る、フラグメント化されたクエリモデルの使用を示す図である。
【0179】
図23に示されるように、本システムは、複数の所有者によって拡張および階層化される、ネスト化された複合モデルのために、キャッシュおよびマージ戦略を使用し得る。この方法は、例えば、複合モデルを、フラット化されたキー値ペアのマップ270にフラット化することを含む非バイナリモデルアーチファクトに使用され得る。次いで、データ構造はメモリにおいてキャッシュされ得る。キーが、ネスト化を、単純なセパレータでキャプチャする。値は、複数の異なる有限タイプ、例えば、リスト、マップ、または単純タイプであり得、マージ戦略は、データ構造特有であり得る。
【0180】
たとえば、ある実施形態に従うと、タイプに応じて、異なる戦略は以下を含み得る:
リスト:このタイプの場合、戦略は、すべてのレイヤ(レイヤ1~レイヤn)にわたるループを含み得、あらゆるマッチするキーに対して、値をフェッチし、アペンドし得る。
【0181】
マップ:このタイプの場合、戦略は、すべてのレイヤ(レイヤ1~レイヤn)にわたるループを含み得、あらゆるマッチするキーに対して、値をフェッチし、マップに追加し得る。重複するキーについては、上位レイヤの値は下位レイヤの値をオーバーライドする。
【0182】
文字列/日付ブーリアン:このタイプの場合、戦略は、上位レイヤから下位レイヤ(レイヤnからレイヤ1)にわたるループを含み、キーの存在をチェックし得、見つかった場合には、返す。ここで、上位レイヤにおいてマッチするキーは、下位レイヤよりも優先される。
【0183】
ある実施形態によると、記載される手法の様々な利点は、たとえデータの複数のレイヤがディスク上に記憶されても、ランタイムクエリは、キャッシュされたキーに対して直接実行され得るので、はるかにより高速であり得ることを含む。すべてのレイヤにわたる結果は、上述の単純なデータ構造ベースの戦略とマージされ得る。
【0184】
例えば、
図23の例に示されるように、従業員データの複合モデルが示され、従業員→名前;従業員→別名;従業員→入社日;従業員→住所→街路名;従業員→住所→Pinコードを含む。
【0185】
ある実施形態に従うと、複合モデルを複数のキー値ペアにフラット化し得、その各々は、キー、タイプ、およびデータを有し、次いでそのデータ構造をベース表現としてメモリにおいてキャッシュし、クエリに応答してデータベース内のデータにアクセスするために使用し得る。クエリがランタイムで生成されると、本システムは、ベースからの変更を動的にマージして、拡張されたセマンティックモデルに基づいて適切なデータを表面化し得る。
【0186】
図24は、ある実施形態に係る、フラグメント化されたクエリモデルの使用をさらに示す図である。
【0187】
図24の例にさらに示されるように、モデルに変更が導入されると、この例では、従業員の定義を、誕生日を含むように補足するために、その変更を、フラット化されたマップおよび複数のキー値ペアにデルタとして保存し得る。次いで、修正されたデータ構造はメモリにもキャッシュされ得る。クエリがランタイムで生成されると、本システムは、ベースからの変更+デルタを動的にマージして、拡張されたセマンティックモデルに基づいて適切なデータを表面化し得る。
【0188】
図25は、ある実施形態に係る、フラグメント化されたクエリモデルの使用をさらに示す図である。
【0189】
図25の例にさらに示されるように、モデルにさらなる変更、この例では、異なる入社日を反映するよう従業員データの修正またはオーバーライドが導入されると、その変更は、フラット化されたマップおよび複数のキー値ペアに別のデルタとして保存され得る。次いで、修正されたデータ構造はメモリにもキャッシュされ得る。クエリがランタイムで生成されると、本システムは、ベースからの変更+両方のデルタを動的にマージして、拡張されたセマンティックモデルに基づいて適切なデータを表面化し得る。
【0190】
図26は、ある実施形態に係る、フラグメント化されたクエリモデルを使用するためのプロセスを示す図である。
【0191】
図26に示されるように、ある実施形態に従うと、ステップ322において、コンピュータハードウェア(たとえばプロセッサ、メモリ)を有し、データベースまたはデータウェアハウスへのアクセスを提供するコンピュータシステムにおいて、要求に応答してデータアナリティクスを提供するように適合された分析アプリケーション環境が提供される。
【0192】
ステップ324では、本システムは、セマンティック拡張が、データアナリティクスをカスタムコンテンツとしてプレゼンテーション層において提供する際に使用するためのセマンティックデータモデル(セマンティックモデル)を拡張することを可能にする、セマンティック層を提供し、セマンティックモデルは、セマンティック拡張によるセマンティックモデルに対する変更を定義する、複数の階層的拡張層を含む。
【0193】
ステップ326では、変更は、フラット化されたマップおよび複数のキー値ペアにデルタとして保存され、次いで、修正されたデータ構造は、メモリにもキャッシュされ得る。
【0194】
ステップ328で、本システムは、要求に応答してデータベースまたはデータウェアハウスからデータを取得し、クエリがランタイムで生成され、ベースセマンティックモデルからの変更+デルタを動的にマージして、拡張されたセマンティックモデルに基づいてデータを表面化することを含む。
【0195】
セマンティックモデルアクションリプレイ
別の実施形態によれば、セマンティックモデルに対してカスタマイズが行われると、本システムは、セマンティックモデルに対する変更を、変更された状態としてではなく、アクションセットとして記憶することを可能にする。これは、オペレーティングシステムの更新は基底の設定に影響を与えないが、本システムがファクトリモデル上で変更をリプレイし、所望の終了状態に戻ることを可能にする。
【0196】
ある実施形態に従うと、本システムは、発展中の基礎において変更をリプレイすることをサポートし得る。セマンティックモデルに対してカスタマイズが行われると、本システムは、セマンティックモデルに対する変更を、変更された状態としてではなく、アクションセットとして記憶することを可能にする。これは、オペレーティングシステムの更新は基底の設定に影響を与えないが、本システムが元の/ファクトリモデル上で変更をリプレイし、所望の終了状態に戻ることを可能にする。
【0197】
図27は、ある実施形態に係る、拡張性を提供するためのアクションリプレイセットの使用を示す図である。
【0198】
図27に図示されるように、ある実施形態によると、本システムは、相互接続されたミュータブルな層(例えば、セキュリティ、システム拡張、またはユーザ拡張)を備え得る。層の各々に対するユーザ変更は、リプレイ可能なアクションのアクションリプレイセット300としてキャプチャされ得る。ある層の変更は、別の層の動作に影響を及ぼし得、したがって、依存関係の点から変更のリプレイをトリガし得る。アクションチェーンおよび層依存関係が監視され得る。依存関係ツリーのいずれかの部分が変化すると、本システムは、元の変更された状態を復元するために、アクションチェーンをリプレイし得る。
【0199】
例えば、
図27の例に示されるように、ユーザによる、R1ロールを使用した、ファクトを確保する変更、またはR1ロール構成が、アクションリプレイ、またはリプレイ可能なアクションのセットとして、キャプチャされ得る。
【0200】
図28は、ある実施形態に係る、拡張性を提供するためのアクションリプレイセットの使用をさらに示す図である。
【0201】
図28の例にさらに示されるように、この例では、アナリティクスクラウドプロバイダ(例えば、Oracle)によって、Dutyロールを追加するために、セマンティックモデルに変更が導入され、このセマンティックモデルに対する変更は、ユーザによって行われたセマンティックモデルに対する変更に対して、望ましくない影響を有し得る。
【0202】
図29は、ある実施形態に係る、拡張性を提供するためのアクションリプレイセットの使用をさらに示す図である。
【0203】
図29の例にさらに示されるように、Dutyロールを追加するためにアナリティクスクラウドプロバイダによってセマンティックモデルに導入された変更を用いて、この例では、ユーザによって以前に行われた変更のリプレイをトリガして、R1ロールまたはR1ロール構成を用いて、ファクトを確保し得る。
【0204】
図30は、ある実施形態に係る、分析アプリケーション環境におけるセマンティックモデルアクションリプレイのプロセスを示す図である。
【0205】
図30に示されるように、ある実施形態に従うと、ステップ332において、コンピュータハードウェア(たとえばプロセッサ、メモリ)を有し、データベースまたはデータウェアハウスへのアクセスを提供するコンピュータシステムにおいて、要求に応答してデータアナリティクスを提供するように適合された分析アプリケーション環境が提供される。
【0206】
ステップ334では、本システムは、セマンティック拡張が、データアナリティクスをカスタムコンテンツとしてプレゼンテーション層において提供する際に使用するためのセマンティックデータモデル(セマンティックモデル)を拡張することを可能にする、セマンティック層を提供し、セマンティックモデルは、セマンティック拡張によるセマンティックモデルに対する変更を定義する、複数の階層的拡張層を含む。
【0207】
ステップ336において、本システムは、層の各々に対するユーザ変更をリプレイ可能なアクションのアクションリプレイセットとしてキャプチャし、1つの層における変更は、別の層の動作に影響を及ぼしてもよく、したがって、依存関係の点から変更のリプレイをトリガしてもよい。
【0208】
ステップ338において、本システムは、アクションチェーンおよび層依存関係を監視し、依存関係ツリーの一部が変化すると、元の変更された状態を復元するためにアクションチェーンをリプレイする。
【0209】
追加の特徴
さまざまな実施形態によれば、ここに記載されるシステムおよび方法は、さまざまな追加の特徴を含むことができ、その例は以下でさらに記載される。
【0210】
セマンティックモデルテストから本番へ
別の実施形態によれば、テストインスタンスおよび本番インスタンスの使用をサポートするために、本システムは、テスト環境において、セマンティックモデルに行われた変更を追跡し、次いで、テスト後に、変更を本番環境に遠隔で通信し得る。本システムは、ロック、セキュリティ、およびロールマッピングを含み、どのように変更をテスト環境から本番環境に移し得るかを制御し得る。
【0211】
ある実施形態に従うと、本システムは、本番環境において先行フィックスのステージングをサポートし得る。テストインスタンスおよび本番インスタンスの使用をサポートするために、本システムは、テスト環境において、セマンティックモデルに行われた変更を追跡し、次いで、テスト後に、変更を本番環境に遠隔で通信し得る。本システムは、ロック、セキュリティ、およびロールマッピングを含み、どのように変更をテスト環境から本番環境に移し得るかを制御し得る。
【0212】
ある実施形態に従うと、本システムは、本番環境において先行フィックスのステージングをサポートする。セマンティックモデルに対する1つ以上の計画されたカスタマイズ/変更が、顧客によって使用されている既存のバージョンと互換性がないとき、それらは、顧客インスタンス上で先行され、しきりにステージングされ得る。もし顧客がアップグレードする場合は、顧客がアップグレードするときに、一致するステージングされたパッチが拾い上げられ、適用される。これは、特定のカスタマイズ/変更のプロバイダおよびベースソフトウェアのプロバイダが異なる場合にも適用可能であってもよい。
【0213】
ステージング
別の実施形態によれば、テストインスタンスが新たなバージョンに更新されると、セマンティックモデルに対して行われ、デルタとして記憶される変更は、上述のようにリプレイされるが、変更は、直ちに本番にプッシュされる代わりに、本番環境自体が新たなバージョンに更新される間に、ステージングされる。本番が(データウェアハウスまたはセマンティックモデルの)新たなバージョンに更新されると、カスタマイズされたモデルおよび拡張が同時に更新される。
【0214】
一時BIサーバ
別の実施形態によれば、データアナリティクス環境におけるクエリは、多くの場合、BIサーバにプッシュされ、次いで、データソースに関数移送(function-ship)される。しかしながら、セマンティックモデルのカスタマイズ/拡張を操作する複数のユーザがいる場合、複数のユーザは共通のBIサーバを共有する必要があるだろう。セマンティックモデルの開発中に使用するためにデータのプレビューを提供するために、本システムは、BIサーバの(縮小/カットダウンされた)バージョンを一時的にスピンアップして、開発中に使用するためのデータプレビューを提供する。
【0215】
様々な実施形態によれば、本開示の局面は、以下の番号付けされた条項に記載される。
1.分析アプリケーション環境において拡張性を提供するためのシステムであって、
分析アプリケーション環境による、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する、1つ以上のプロセッサを含むコンピュータと、
セマンティック拡張が、データとともに使用するためのセマンティックモデルを拡張することを可能にするセマンティック層とを備え、システムは、
セマンティックモデルに関連して、セマンティックモデルに対する変更を定義する複数のセマンティック拡張を、一連のコミットとして提供し、
要求に応答してデータベースまたはデータウェアハウスからデータを取り出し、セマンティック拡張によって拡張されたセマンティックモデルに従ってデータを処理し、データをカスタムコンテンツとしてプレゼンテーション層に提供する。
【0216】
2.セマンティックモデルに対する変更は、階層化された名前空間に記録され、階層化された名前空間の特定の層に関連付けられる各変更は、特定の層に関連付けられる、セマンティックモデルに対する増分的変更を提供することを含む、条項1に記載のシステム。
【0217】
3.階層化された名前空間は、階層化された名前の層に関連付けられる複数の領域を有するファイルアーチファクトによって定義され、階層化された名前空間の特定の層に関連付けられる各変更は、ファイルアーチファクトの対応する領域内で定義される、条項1に記載のシステム。
【0218】
4.システムは、データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行する、条項1に記載のシステム。
【0219】
5.分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、条項1に記載のシステム。
【0220】
6.分析アプリケーション環境において拡張性を提供するための方法であって、
1つ以上のプロセッサを含むコンピュータにおいて、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する分析アプリケーション環境を提供することと、
セマンティック拡張を提供して、データとともに使用するためのセマンティックモデルを拡張することとを含み、
セマンティックモデルは、セマンティック拡張によるセマンティックモデルに対する変更を一連のコミットとして定義する複数の階層的拡張層として提供され、
データは、要求に応答してデータベースまたはデータウェアハウスから取り出され、セマンティック拡張によって拡張されたセマンティックモデルに従って処理され、カスタムコンテンツとしてプレゼンテーション層に提供される。
【0221】
7.セマンティックモデルに対する変更は、階層化された名前空間に記録され、階層化された名前空間の特定の層に関連付けられる各変更は、特定の層に関連付けられる、セマンティックモデルに対する増分的変更を提供することを含む、条項6に記載の方法。
【0222】
8.階層化された名前空間は、階層化された名前の層に関連付けられる複数の領域を有するファイルアーチファクトによって定義され、階層化された名前空間の特定の層に関連付けられる各変更は、ファイルアーチファクトの対応する領域内で定義される、条項6に記載の方法。
【0223】
9.データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行することをさらに含む、条項6に記載の方法。
【0224】
10.分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、条項6に記載の方法。
【0225】
11.命令を有する非一時的なコンピュータ可読記憶媒体であって、命令は、1つ以上のプロセッサを含むコンピュータによって読み出され、実行されると、コンピュータに、方法を実行させ、この方法は、
1つ以上のプロセッサを含むコンピュータにおいて、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する分析アプリケーション環境を提供することと、
セマンティック拡張を提供して、データとともに使用するためのセマンティックモデルを拡張することとを含み、
セマンティックモデルは、セマンティック拡張によるセマンティックモデルに対する変更を一連のコミットとして定義する複数の階層的拡張層として提供され、
データは、要求に応答してデータベースまたはデータウェアハウスから取り出され、セマンティック拡張によって拡張されたセマンティックモデルに従って処理され、カスタムコンテンツとしてプレゼンテーション層に提供される。
【0226】
12.セマンティックモデルに対する変更は、階層化された名前空間に記録され、階層化された名前空間の特定の層に関連付けられる各変更は、特定の層に関連付けられる、セマンティックモデルに対する増分的変更を提供することを含む、条項11に記載の非一時的なコンピュータ可読記憶媒体。
【0227】
13.階層化された名前空間は、階層化された名前の層に関連付けられる複数の領域を有するファイルアーチファクトによって定義され、階層化された名前空間の特定の層に関連付けられる各変更は、ファイルアーチファクトの対応する領域内で定義される、条項11に記載の非一時的なコンピュータ可読記憶媒体。
【0228】
14.データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行することをさらに含む、条項11に記載の非一時的なコンピュータ可読記憶媒体。
【0229】
15.分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、条項11に記載の非一時的なコンピュータ可読記憶媒体。
【0230】
16.フラグメント化されたクエリモデルに対するサポートを含む、分析アプリケーション環境において拡張性を提供するためのシステムであって、
分析アプリケーション環境による、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する、1つ以上のプロセッサを含むコンピュータを備え、
システムは、要求に応答してデータベースまたはデータウェアハウスからデータを取り出し、1つ以上のセマンティック拡張によって拡張されたセマンティックモデルに従ってデータを処理し、
セマンティックモデルの表現、および1つ以上のセマンティック拡張によって定義されるセマンティックモデルに対する変更は、キー値ペアのマップに対する変更として保存され、その表現はメモリにおいてデータ構造としてキャッシュされ、
ランタイムで生成されたクエリに応答して、システムは、1つ以上のセマンティック拡張によって定義された変更を、ベースセマンティックモデルと動的にマージして、拡張されたセマンティックモデルに基づいてデータを表面化する。
【0231】
17.メモリにデータ構造としてキャッシュされる、セマンティックモデル、および1つ以上のセマンティック拡張によって定義される、セマンティックモデルに対する変更、の表現は、データウェアハウスへのアクセスを提供するデータプレーンと組み合わせて使用される、条項16に記載のシステム。
【0232】
18.セマンティックモデルに対する変更は、階層化された名前空間に記録され、セマンティックモデルに対する変更として処理され、各変更はセマンティックモデルに対する増分的変更を提供することを含む、条項16に記載のシステム。
【0233】
19.システムは、データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行する、条項16に記載のシステム。
【0234】
20.分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、条項16に記載のシステム。
【0235】
21.フラグメント化されたクエリモデルに対するサポートを含む、分析アプリケーション環境において拡張性を提供するための方法であって、
1つ以上のプロセッサを含むコンピュータにおいて、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する分析アプリケーション環境を提供することと、
セマンティック拡張を提供して、データとともに使用するためにセマンティックモデルを拡張することとを含み、セマンティックモデルは、セマンティック拡張によるセマンティックモデルに対する変更を定義する複数の階層的拡張層を含み、本方法はさらに、
セマンティックモデル、および1つ以上のセマンティック拡張によって定義される、セマンティックモデルに対する変更、の表現を、キー値ペアのマップに対する変更として保存することを含み、その表現は、メモリにおいてデータ構造としてキャッシュされ、本方法はさらに、
ランタイムで生成されたクエリに応答して、データベースまたはデータウェアハウスからデータを取り出すことを含み、1つ以上のセマンティック拡張によって定義される変更を、ベースセマンティックモデルと動的にマージして、拡張されたセマンティックモデルに基づいて、データを表面化することを含む。
【0236】
22.メモリにデータ構造としてキャッシュされる、セマンティックモデル、および1つ以上のセマンティック拡張によって定義される、セマンティックモデルに対する変更、の表現は、データウェアハウスへのアクセスを提供するデータプレーンと組み合わせて使用される、条項21に記載の方法。
【0237】
23.セマンティックモデルに対する変更は、階層化された名前空間に記録され、セマンティックモデルに対する変更として処理され、各変更はセマンティックモデルに対する増分的変更を提供することを含む、条項21に記載の方法。
【0238】
24.データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行することをさらに含む、条項21に記載の方法。
【0239】
25.分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、条項21に記載の方法。
【0240】
26.命令を有する非一時的なコンピュータ可読記憶媒体であって、命令は、1つ以上のプロセッサを含むコンピュータによって読み出され、実行されると、コンピュータに、方法を実行させ、本方法は、
1つ以上のプロセッサを含むコンピュータにおいて、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する分析アプリケーション環境を提供することと、
セマンティック拡張を提供して、データとともに使用するためにセマンティックモデルを拡張することとを含み、セマンティックモデルは、セマンティック拡張によるセマンティックモデルに対する変更を定義する複数の階層的拡張層を含み、本方法はさらに、
セマンティックモデル、および1つ以上のセマンティック拡張によって定義される、セマンティックモデルに対する変更、の表現を、キー値ペアのマップに対する変更として保存することを含み、その表現は、メモリにおいてデータ構造としてキャッシュされ、本方法はさらに、
ランタイムで生成されたクエリに応答して、データベースまたはデータウェアハウスからデータを取り出すことを含み、1つ以上のセマンティック拡張によって定義される変更を、ベースセマンティックモデルと動的にマージして、拡張されたセマンティックモデルに基づいて、データを表面化することを含む。
【0241】
27.メモリにデータ構造としてキャッシュされる、セマンティックモデル、および1つ以上のセマンティック拡張によって定義される、セマンティックモデルに対する変更、の表現は、データウェアハウスへのアクセスを提供するデータプレーンと組み合わせて使用される、条項26に記載の非一時的なコンピュータ可読記憶媒体。
【0242】
28.セマンティックモデルに対する変更は、階層化された名前空間に記録され、セマンティックモデルに対する変更として処理され、各変更はセマンティックモデルに対する増分的変更を提供することを含む、条項26に記載の非一時的なコンピュータ可読記憶媒体。
【0243】
29.システムは、データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行する、条項26に記載の非一時的なコンピュータ可読記憶媒体。
【0244】
30.分析アプリケーション環境は、アナリティクスクラウド環境内で提供される、条項26に記載の非一時的なコンピュータ可読記憶媒体。
【0245】
31.セマンティックモデルアクションセットおよびリプレイに対するサポートを含む、分析アプリケーション環境において拡張性を提供するためのシステムであって:
分析アプリケーション環境による、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つへのアクセスを提供する、1つ以上のプロセッサを含むコンピュータと、
セマンティック拡張が、データとともに使用するためにセマンティックモデルを拡張することを可能にするセマンティック層とを備え、セマンティックモデルは、セマンティック拡張によるセマンティックモデルに対する変更を定義する複数の階層的拡張層を含み、
システムは、セマンティックモデルの拡張層の各々に対するユーザ変更を複数のリプレイ可能なアクションとしてキャプチャし、1つの層における変更は、別の層の動作に影響を及ぼし得、それらのアクションは、関連付けられた変更でセマンティックモデルを更新するために、セマンティックモデルの、あるバージョン上でリプレイされ得る。
【0246】
32.拡張層に対する変更をアクションリプレイセットとしてキャプチャすることをさらに含み、第1の層における変更は、第2の層の動作に影響を及ぼし、次いで、依存関係の点から変更のリプレイをトリガすることを含む、条項31に記載のシステム。
【0247】
33.アクションチェーンおよび依存関係ツリー内の層依存関係を監視することと、依存関係ツリーが変化すると、アクションチェーンをリプレイして、セマンティックモデルを元の状態に復元することとをさらに含む、条項31に記載のシステム。
【0248】
34.システムは、データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行する、条項31に記載のシステム。
【0249】
35.分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、条項31に記載のシステム。
【0250】
36.セマンティックモデルアクションセットおよびリプレイに対するサポートを含む、分析アプリケーション環境において拡張性を提供するための方法であって、
1つ以上のプロセッサを含むコンピュータにおいて、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つに提供する分析アプリケーション環境を提供することと、
セマンティック拡張が、データとともに使用するためにセマンティックモデルを拡張することを可能にするセマンティック層を提供することとを含み、セマンティックモデルは、セマンティック拡張によるセマンティックモデルに対する変更を定義する複数の階層的拡張層を含み、本方法はさらに、
セマンティックモデルの拡張層の各々に対するユーザ変更を複数のリプレイ可能なアクションとしてキャプチャすることを含み、1つの層における変更は、別の層の動作に影響を及ぼし得、それらのアクションは、関連付けられた変更でセマンティックモデルを更新するために、セマンティックモデルの、あるバージョン上でリプレイされ得る。
【0251】
37.拡張層に対する変更をアクションリプレイセットとしてキャプチャすることをさらに含み、第1の層における変更は、第2の層の動作に影響を及ぼし、次いで、依存関係の点から変更のリプレイをトリガすることを含む、条項36に記載の方法。
【0252】
38.アクションチェーンおよび依存関係ツリー内の層依存関係を監視することと、依存関係ツリーが変化すると、アクションチェーンをリプレイして、セマンティックモデルを元の状態に復元することとをさらに含む、条項36に記載の方法。
【0253】
39.データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行することをさらに含む、条項36に記載の方法。
【0254】
40.分析アプリケーション環境は、アナリティクスクラウド環境内に提供される、条項36に記載の方法。
【0255】
41.命令を有する非一時的なコンピュータ可読記憶媒体であって、命令は、1つ以上のプロセッサを含むコンピュータによって読み出され、実行されると、コンピュータに、方法を実行させ、本方法は、
1つ以上のプロセッサを含むコンピュータにおいて、データの記憶のためのデータベースまたはデータウェアハウスのうちの少なくとも1つに提供する分析アプリケーション環境を提供することと、
セマンティック拡張が、データとともに使用するためにセマンティックモデルを拡張することを可能にするセマンティック層を提供することとを含み、セマンティックモデルは、セマンティック拡張によるセマンティックモデルに対する変更を定義する複数の階層的拡張層を含み、本方法はさらに、
セマンティックモデルの拡張層の各々に対するユーザ変更を複数のリプレイ可能なアクションとしてキャプチャすることを含み、1つの層における変更は、別の層の動作に影響を及ぼし得、それらのアクションは、関連付けられた変更でセマンティックモデルを更新するために、セマンティックモデルの、あるバージョン上でリプレイされ得る。
【0256】
42.拡張層に対する変更をアクションリプレイセットとしてキャプチャすることをさらに含み、第1の層における変更は、第2の層の動作に影響を及ぼし、次いで、依存関係の点から変更のリプレイをトリガすることを含む、条項41に記載の非一時的なコンピュータ可読記憶媒体。
【0257】
43.アクションチェーンおよび依存関係ツリー内の層依存関係を監視することと、依存関係ツリーが変化すると、アクションチェーンをリプレイして、セマンティックモデルを元の状態に復元することとをさらに含む、条項41に記載の非一時的なコンピュータ可読記憶媒体。
【0258】
44.データウェアハウスインスタンスにロードするために、企業ソフトウェアアプリケーションまたはデータ環境からデータを受信するよう、1つ以上の分析アプリケーションスキーマまたは顧客スキーマに従って、抽出、変換、ロードプロセスを実行することをさらに含む、条項41に記載の非一時的なコンピュータ可読記憶媒体。
【0259】
45.分析アプリケーション環境は、アナリティクスクラウド環境内で提供される、条項41に記載の非一時的なコンピュータ可読記憶媒体。
【0260】
さまざまな実施形態に従って、本明細書における教示は、本開示の教示に従ってプログラムされた1つまたは複数のプロセッサ、メモリおよび/またはコンピュータ読取可能記憶媒体を含む、1つまたは複数の従来の汎用もしくは専用コンピュータ、コンピューティングデバイス、マシンまたはマイクロプロセッサを使用して好都合に実現され得る。適切なソフトウェアコーディングは、ソフトウェア技術分野の当業者に明らかであるように、本開示の教示に基づいて熟練のプログラマによって容易に準備することができる。
【0261】
いくつかの実施形態において、本明細書における教示は、本教示のプロセスのいずれかを実行するようにコンピュータをプログラムするのに使用することができる命令が格納された非一時的なコンピュータ読取可能記憶媒体であるコンピュータプログラム製品を含み得る。このような記憶媒体の例としては、ハードディスクドライブ、ハードディスク、ハードドライブ、固定ディスク、もしくは他の電気機械的データ記憶装置、フロッピー(登録商標)ディスク、光ディスク、DVD、CD-ROM、マイクロドライブおよび光磁気ディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリデバイス、磁気もしくは光カード、ナノシステム、または、命令および/もしくはデータの非一時的な格納に適した他のタイプの記憶媒体もしくはデバイスを挙げることができるが、それらに限定されるものではない。
【0262】
上記の記載は、例示および説明の目的で提供されている。それは、網羅的であるよう意図されたものではなく、開示されている厳密な形態に保護範囲を限定するよう意図されたものでもない。多くの変形例および変更例が当業者に明らかであろう。
【0263】
例えば、ここで提供される例のいくつかは、分析アプリケーション環境の動作を、例えば、Oracle Fusion Applications環境などの企業ソフトウェアアプリケーションもしくはデータ環境とともに、または、例えば、Oracle Analytics CloudもしくはOracle Cloud Infrastructure環境といったサービスとしてのソフトウェア(SaaS)もしくはクラウド環境の文脈内で説明しているが、様々な実施形態によれば、ここに記載のシステムおよび方法は、他のタイプの企業ソフトウェアアプリケーションもしくはデータ環境、クラウド環境、クラウドサービス、クラウドコンピューティング、または他のコンピューティング環境とともに使用され得る。
【0264】
実施形態は、本教示の原理およびそれらの実際の適用を最もよく説明することによって、当業者が、さまざまな実施形態および意図された特定の使用に適したさまざまな変形例を理解することを可能にするように選択され、説明された。範囲は、以下の特許請求の範囲およびそれらの等価物によって規定されることが意図されている。
【国際調査報告】