(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-07-21
(54)【発明の名称】分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムおよび方法
(51)【国際特許分類】
G06Q 10/00 20120101AFI20220713BHJP
【FI】
G06Q10/00
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2021551572
(86)(22)【出願日】2020-04-29
(85)【翻訳文提出日】2021-08-30
(86)【国際出願番号】 US2020030556
(87)【国際公開番号】W WO2020223407
(87)【国際公開日】2020-11-05
(32)【優先日】2019-04-30
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】502303739
【氏名又は名称】オラクル・インターナショナル・コーポレイション
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】チャウラ,ナレン
(72)【発明者】
【氏名】ベンカタ,アナンス
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049AA00
(57)【要約】
分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムおよび方法。例示的な方法は、分析アプリケーション環境と、サーバから構成されるコントロールプレーンとを提供することができ、当該コントロールプレーンは、さらに、プロビジョニングコンポーネントおよびコンソールインターフェースから構成され、例示的な方法は、さらに、データウェアハウスと、監視エージェントとを提供することができる。方法は、データウェアハウスのインスタンスをテナントに関係してプロビジョニングすることができ、プロビジョニングされたデータウェアハウスのインスタンスは、初期サイズを有する。データウェアハウスのインスタンスがプロビジョニングされると、方法は、監視エージェントのメトリクスリポジトリにエントリを追加することができ、追加されたエントリは、プロビジョニングされたデータウェアハウスのインスタンスの初期サイズを示し、追加されたエントリは、タグ付けされており、タグは、テナントを示す。方法は、監視エージェントによって、プロビジョニングされたデータウェアハウスのインスタンスに格納されたデータの量を監視することができる。
【特許請求の範囲】
【請求項1】
分析アプリケーション環境におけるSaaS/PaaS(Software as a Service/Platform as a Service)リソースの割り当ておよび利用のためのシステムであって、
分析アプリケーション環境と、
サーバから構成されるコントロールプレーンと、
データウェアハウスと、
監視エージェントとを備え、
前記コントロールプレーンは、さらに、プロビジョニングコンポーネントおよびコンソールインターフェースから構成され、
前記データウェアハウスのインスタンスがテナントに関係してプロビジョニングされ、プロビジョニングされた前記データウェアハウスのインスタンスは、初期サイズを有し、
前記データウェアハウスのインスタンスがプロビジョニングされると、前記監視エージェントのメトリクスリポジトリにエントリが追加され、追加された前記エントリは、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズを示し、追加された前記エントリは、タグ付けされており、前記タグは、前記テナントを示し、
前記監視エージェントは、プロビジョニングされた前記データウェアハウスのインスタンスに格納されたデータの量を監視する、システム。
【請求項2】
前記監視エージェントは、プロビジョニングされた前記データウェアハウスのインスタンスに格納されたデータの量が、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズと等しいと検出する、請求項1に記載のシステム。
【請求項3】
プロビジョニングされた前記データウェアハウスのインスタンスに格納された前記データの量が、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズと等しいと前記監視エージェントが検出すると、前記監視エージェントは、前記コントロールプレーンの前記プロビジョニングコンポーネントに、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズを増加させる命令を与える、請求項1~2のいずれか1項に記載のシステム。
【請求項4】
前記プロビジョニングコンポーネントがプロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズを増加させると、前記監視コンポーネントは、請求コンポーネントに通知を送る、請求項1~3のいずれか1項に記載のシステム。
【請求項5】
前記監視コンポーネントから前記通知を受け取ることに応答して、前記請求コンポーネントは、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズの増加を反映した請求書を作成する、請求項4に記載のシステム。
【請求項6】
離散個数の計算装置が前記テナントに関係してプロビジョニングされ、
前記監視エージェントは、前記テナントに関係してプロビジョニングされた前記離散個数の計算装置よりも多い数の計算装置が前記テナントによって使用されていると検出する、請求項1~5のいずれか1項に記載のシステム。
【請求項7】
前記テナントに関係してプロビジョニングされた前記離散個数の計算装置よりも多い数の計算装置が前記テナントによって使用されていることを前記監視エージェントが検出すると、前記監視エージェントは、前記コントロールプレーンの前記プロビジョニングコンポーネントに、前記テナントが使用するためのさらに多くの離散個数の計算装置をプロビジョニングさせる命令を与える、請求項6に記載のシステム。
【請求項8】
分析アプリケーション環境におけるSaaS/PaaS(Software as a Service/Platform as a Service)リソースの割り当ておよび利用のための方法であって、
分析アプリケーション環境を提供するステップと、
サーバから構成されるコントロールプレーンを提供するステップとを含み、前記コントロールプレーンは、さらに、プロビジョニングコンポーネントおよびコンソールインターフェースから構成され、前記方法は、さらに、
データウェアハウスを提供するステップと、
監視エージェントを提供するステップと、
前記データウェアハウスのインスタンスをテナントに関係してプロビジョニングするステップとを含み、プロビジョニングされた前記データウェアハウスのインスタンスは、初期サイズを有し、前記方法は、さらに、
前記データウェアハウスのインスタンスがプロビジョニングされると、前記監視エージェントのメトリクスリポジトリにエントリを追加するステップを含み、追加された前記エントリは、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズを示し、追加された前記エントリは、タグ付けされており、前記タグは、前記テナントを示し、前記方法は、さらに、
前記監視エージェントが、プロビジョニングされた前記データウェアハウスのインスタンスに格納されたデータの量を監視するステップを含む、方法。
【請求項9】
前記監視エージェントが、プロビジョニングされた前記データウェアハウスのインスタンスに格納されたデータの量が、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズと等しいと検出するステップをさらに含む、請求項8に記載の方法。
【請求項10】
プロビジョニングされた前記データウェアハウスのインスタンスに格納された前記データの量が、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズと等しいと前記監視エージェントが検出すると、前記監視エージェントが、前記コントロールプレーンの前記プロビジョニングコンポーネントに、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズを増加させる命令を与えるステップをさらに含む、請求項8~9のいずれか1項に記載の方法。
【請求項11】
前記プロビジョニングコンポーネントがプロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズを増加させると、前記監視エージェントが、請求コンポーネントに通知を送るステップをさらに含む、請求項8~10のいずれか1項に記載の方法。
【請求項12】
前記監視コンポーネントから前記通知を受け取ることに応答して、前記請求コンポーネントが、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズの増加を反映した請求書を作成するステップをさらに含む、請求項11のいずれか1項に記載の方法。
【請求項13】
離散個数の計算装置が前記テナントに関係してプロビジョニングされ、
前記監視エージェントは、前記テナントに関係してプロビジョニングされた前記離散個数の計算装置よりも多い数の計算装置が前記テナントによって使用されていると検出する、請求項8~12のいずれか1項に記載の方法。
【請求項14】
前記テナントに関係してプロビジョニングされた前記離散個数の計算装置よりも多い数の計算装置が前記テナントによって使用されていることを前記監視エージェントが検出すると、前記監視エージェントは、前記コントロールプレーンの前記プロビジョニングコンポーネントに、前記テナントが使用するためのさらに多くの離散個数の計算装置をプロビジョニングさせる命令を与える、請求項13に記載の方法。
【請求項15】
分析アプリケーション環境におけるSaaS/PaaS(Software as a Service/Platform as a Service)リソースの割り当ておよび利用のための命令を有する非一時的なコンピュータ読み取り可能な記憶媒体であって、前記命令は、読み出されて実行されると、コンピュータにステップを実行させ、前記ステップは、
分析アプリケーション環境を提供するステップと、
サーバから構成されるコントロールプレーンを提供するステップとを含み、前記コントロールプレーンは、さらに、プロビジョニングコンポーネントおよびコンソールインターフェースから構成され、前記ステップは、さらに、
データウェアハウスを提供するステップと、
監視エージェントを提供するステップと、
前記データウェアハウスのインスタンスをテナントに関係してプロビジョニングするステップとを含み、プロビジョニングされた前記データウェアハウスのインスタンスは、初期サイズを有し、前記ステップは、さらに、
前記データウェアハウスのインスタンスがプロビジョニングされると、前記監視エージェントのメトリクスリポジトリにエントリを追加するステップを含み、追加された前記エントリは、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズを示し、追加された前記エントリは、タグ付けされており、前記タグは、前記テナントを示し、前記ステップは、さらに、
前記監視エージェントが、プロビジョニングされた前記データウェアハウスのインスタンスに格納されたデータの量を監視するステップを含む、非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項16】
前記ステップは、前記監視エージェントが、プロビジョニングされた前記データウェアハウスのインスタンスに格納されたデータの量が、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズと等しいと検出するステップをさらに含む、請求項15に記載の非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項17】
前記ステップは、プロビジョニングされた前記データウェアハウスのインスタンスに格納された前記データの量が、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズと等しいと前記監視エージェントが検出すると、前記監視エージェントが、前記コントロールプレーンの前記プロビジョニングコンポーネントに、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズを増加させる命令を与えるステップをさらに含む、請求項15~16のいずれか1項に記載の非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項18】
前記ステップは、前記プロビジョニングコンポーネントがプロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズを増加させると、前記監視エージェントが、請求コンポーネントに通知を送るステップをさらに含む、請求項15~17のいずれか1項に記載の非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項19】
前記ステップは、前記監視コンポーネントから前記通知を受け取ることに応答して、前記請求コンポーネントが、プロビジョニングされた前記データウェアハウスのインスタンスの前記初期サイズの増加を反映した請求書を作成するステップをさらに含む、請求項18に記載の非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項20】
離散個数の計算装置が前記テナントに関係してプロビジョニングされ、
前記監視エージェントは、前記テナントに関係してプロビジョニングされた前記離散個数の計算装置よりも多い数の計算装置が前記テナントによって使用されていると検出し、
前記テナントに関係してプロビジョニングされた前記離散個数の計算装置よりも多い数の計算装置が前記テナントによって使用されていることを前記監視エージェントが検出すると、前記監視エージェントは、前記コントロールプレーンの前記プロビジョニングコンポーネントに、前記テナントが使用するためのさらに多くの離散個数の計算装置をプロビジョニングさせる命令を与える、請求項15~19のいずれか1項に記載の非一時的なコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
著作権表示
本特許文献の開示の一部には、著作権保護の対象となる資料が含まれる。特許文献または特許開示は、米国特許庁の特許ファイルおよび記録に公開されているため、著作権者は、何人によるその複製に対しても異議はないが、そうでない場合には、例外なくすべての著作権を保有する。
【0002】
優先権主張
本願は、2019年4月30日に出願され、「SYSTEM AND METHOD FOR PROVIDING HYBRID BILLING IN AN ANALYTICS APPLICATION ENVIRONMENT(アナリティクスアプリケーション環境においてハイブリッドの請求書発行業務を提供するためのシステムおよび方法)」と題された米国仮出願第62/841,058号に基づく優先権の利益を主張し、当該出願を、引用により本明細書に援用する。
【0003】
技術分野
本明細書において説明する実施の形態は、全体的に、コンピュータデータアナリティクス、およびビジネスインテリジェンスに関し、特に、ソフトウェア分析アプリケーションの開発を可能にするアプリケーションアナリティクス環境を提供するシステムおよび方法に関する。
【背景技術】
【0004】
背景
一般に説明すると、組織内では、データアナリティクスによって、大量のデータから結論またはその他の情報を導き出すために、当該データのコンピュータベースの調査または解析が可能になり、ビジネスインテリジェンスツールによって、戦略的な経営判断を行うことを可能にする形式で企業データを記述した情報が組織のビジネスユーザに提供される。
【0005】
組織のエンタープライズソフトウェアアプリケーション/データ環境(たとえば、Oracle Fusion Applications環境もしくはその他の種類のエンタープライズソフトウェアアプリケーション/データ環境など)と関連して、または、SaaS(Software-As-A-Service)もしくはクラウド環境(たとえば、Oracle Analytics CloudもしくはOracle Cloud Infrastructure環境、もしくはその他の種類のクラウド環境など)と関連してデータアナリティクスの利用を活用するソフトウェアアプリケーションを開発することに対する関心が高まっている。
【0006】
従来のSaaS(Software as a Service)/PaaS(Platform as a Service)請求システムは、一般に、SaaS/PaaSの最初の購入/ライセンス契約中に顧客/テナントが選択したシート(seat)(たとえば、SaaSにいつでもアクセスできるユーザ)の数に基づいて顧客/テナントにSaaS/PaaSの利用に対して金額を請求する。このモデルは、SaaS/PaaSに対してこれまでうまく機能しているが、顧客/テナントが購入済のリソースよりも多くのリソースを求めたり必要としたりする場合、問題が生じる可能性がある。このような状況では、たとえば、顧客/テナントが利用可能な唯一の仕組みは、たとえば、SaaS/PaaSの追加のシートをいくつも購入することである。
【発明の概要】
【課題を解決するための手段】
【0007】
概要
実施の形態によると、分析アプリケーション環境は、組織のエンタープライズソフトウェアアプリケーション/データ環境、または、Software-As-A-Serviceもしくはその他の種類のクラウド環境に関連するデータアナリティクスを可能にし、コンピュータによって実行可能なソフトウェア分析アプリケーションの開発をサポートする。
【0008】
実施の形態によると、たとえば、抽出、変換、ロードプロセスなど、データパイプライン/処理は、特定のアナリティクスユースケースまたはベストプラクティスに対処するようになされた分析アプリケーションスキーマに従って動作して、データウェアハウスインスタンスにロードするためのデータを顧客の(テナントの)エンタープライズソフトウェアアプリケーション/データ環境から受信することができる。
【0009】
実施の形態によると、各顧客(テナント)を顧客テナンシおよび顧客スキーマにさらに対応付けることができる。データパイプライン/処理は、エンタープライズソフトウェアアプリケーション/データ環境から受信したデータを、分析アプリケーションスキーマと顧客スキーマとの組合せによって定義されるようにデータウェアハウスインスタンスおよびデータベーステーブルに追加する。
【0010】
実施の形態によると、分析アプリケーション環境へのアクセスを、たとえば、SaaS(Software-As-A-Service)アプリケーションまたは商品として提供することができる。SaaSアプリケーションまたは商品は、クラウド環境(たとえば、Oracle Cloud インフラストラクチャ、OCI、またはその他のクラウド環境)の顧客がアクセスできるようになっている、または、クラウドサービス(たとえば、Oracle Analytics Cloudサービス、OAC、Oracle Fusion Analyticsサービス、またはその他のクラウドサービス)として提供することができる。
【0011】
実施の形態によると、パイプラインおよびデータバックアップ、復元、ならびにパッチの適用など、機能のサポートを可能にするクラウド環境、たとえば、OCIによって提供されるプロビジョニングは、その他のSaaSまたはPaaS(Platform-as-a-Service)コンポーネントと一体化することができる。その他のSaaSまたはPaaS(Platform-as-a-Service)コンポーネントは、たとえば、データ処理上の顧客固有の制限、および(たとえば、SaaS/PaaSの組合せに基づく)ハイブリッド請求のサポートを提供する請求コンポーネントを含む。
【0012】
本明細書では、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムおよび方法を説明する。例示的な方法は、アプリケーションアナリティクス環境と、サーバから構成されるコントロールプレーンとを提供することができ、当該コントロールプレーンは、さらに、プロビジョニングコンポーネントおよびコンソールインターフェースから構成され、例示的な方法は、さらに、データウェアハウスと、監視エージェントとを提供することができる。方法は、データウェアハウスのインスタンスをテナントに関係してプロビジョニングすることができ、プロビジョニングされたデータウェアハウスのインスタンスは、初期サイズを有する。データウェアハウスのインスタンスがプロビジョニングされると、方法は、監視エージェントのメトリクスリポジトリにエントリを追加することができ、追加されたエントリは、プロビジョニングされたデータウェアハウスのインスタンスの初期サイズを示し、追加されたエントリは、タグ付けされており、タグは、テナントを示す。方法は、監視エージェントによって、プロビジョニングされたデータウェアハウスのインスタンスに格納されたデータの量を監視することができる。
【図面の簡単な説明】
【0013】
【
図1】実施の形態に係る、分析アプリケーション環境を提供するシステムを示す図である。
【
図2】実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【
図3】実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【
図4】実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【
図5】実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【
図6】実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【
図7】実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【
図8】実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【
図9】実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【
図10】実施の形態に係る、分析アプリケーション環境を提供する方法のフローチャートを示す図である。
【
図11】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【
図12】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【
図13】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【
図14】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【
図15】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【
図16】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【
図17】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【
図18】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【
図19】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【
図20】実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのための方法のフローチャートである。
【発明を実施するための形態】
【0014】
詳細な説明
上述したように、組織内では、データアナリティクスによって、大量のデータから結論またはその他の情報を導き出すために、当該データのコンピュータベースの調査または解析が可能になり、ビジネスインテリジェンスツールによって、戦略的な経営判断を行うことを可能にする形式で企業データを記述した情報が組織のビジネスユーザに提供される。
【0015】
組織のエンタープライズソフトウェアアプリケーション/データ環境(たとえば、Oracle Fusion Applications環境もしくはその他の種類のエンタープライズソフトウェアアプリケーション/データ環境など)と関連して、または、SaaS(Software-As-A-Service)もしくはクラウド環境(たとえば、Oracle Analytics CloudもしくはOracle Cloud インフラストラクチャ環境、もしくはその他の種類のクラウド環境など)と関連してデータアナリティクスの利用を活用するソフトウェアアプリケーションを開発することに対する関心が高まっている。
【0016】
実施の形態によると、分析アプリケーション環境は、組織のエンタープライズソフトウェアアプリケーション/データ環境、または、Software-As-A-Serviceもしくはその他の種類のクラウド環境に関連するデータアナリティクスを可能にし、コンピュータによって実行可能なソフトウェア分析アプリケーションの開発をサポートする。
【0017】
実施の形態によると、たとえば、抽出、変換、ロードプロセスなど、データパイプライン/処理は、特定のアナリティクスユースケースまたはベストプラクティスに対処するようになされた分析アプリケーションスキーマに従って動作して、データウェアハウスインスタンスにロードするためのデータを顧客の(テナントの)エンタープライズソフトウェアアプリケーション/データ環境から受信することができる。
【0018】
実施の形態によると、各顧客(テナント)を顧客テナンシおよび顧客スキーマにさらに対応付けることができる。データパイプライン/処理は、エンタープライズソフトウェアアプリケーション/データ環境から受信したデータを、分析アプリケーションスキーマと顧客スキーマとの組合せによって定義されるようにデータウェアハウスインスタンスおよびデータベーステーブルに追加する。
【0019】
実施の形態によると、記載のシステムおよび方法の技術的利点として、分析アプリケーション環境(クラウド)テナンシ内に保持されるシステム規模のアプリケーションスキーマもしくはデータモデルまたは共有分析アプリケーションスキーマもしくはデータモデルを顧客テナンシ内で保持されるテナント固有顧客スキーマと合わせて利用することによって、エンタープライズソフトウェアアプリケーション/データ環境から受信した実データ(実テーブル)を、自動的または周期的(たとえば、毎時/毎日/毎週、またはそれ以外の基準)に各顧客の(テナントの)データウェアハウスインスタンスまたはデータベーステーブルに追加するまたは当該実データ(実テーブル)に対応付けることが可能になり、特定のアナリティクスユースケースのベストプラクティスを反映できることを含む。このようなアナリティクスユースケースとして、ERP(Enterprise Resource Planning)、HCM(Human Capital Management)、CX(Customer Experience)、SCM(Supply Chain Management)、EPM(Enterprise Performance Management)、またはその他の種類のアナリティクスユースケースを挙げることができる。次に、データが追加されたデータウェアハウスインスタンスまたはデータベーステーブルを利用して、コンピュータによって実行可能なソフトウェア分析アプリケーションを作成する、または、当該データに対応付けられたデータアナリティクスまたはその他の情報を判断することができる。
【0020】
実施の形態によると、たとえば、ODI(Oracle Data Integrator)環境などのデータ統合コンポーネントまたはその他の種類のデータ統合コンポーネントが保持するデータパイプライン/処理、たとえば、ETL(抽出、変換、ロード)プロセスまたはELT(抽出、ロード、変換)プロセスなどに、コンピュータによって実行可能なソフトウェア分析アプリケーションを対応付けることができる。
【0021】
実施の形態によると、分析アプリケーション環境は、たとえば、ADW(Oracle Autonomous Data Warehouse)、ADWC(Oracle Autonomous Data Warehouse Cloud)などのデータウェアハウス環境もしくはコンポーネント、または、大量のデータを格納するようになされたその他の種類のデータウェアハウス環境もしくはコンポーネントとともに動作できる。データウェアハウス環境またはコンポーネントには、たとえば、Oracle Fusion Applicationsなどのエンタープライズソフトウェアアプリケーション/データ環境、またはその他の種類のエンタープライズソフトウェアアプリケーション/データ環境から入手したスタースキーマを介してデータが追加することができる。分析アプリケーション環境の各顧客(テナント)が使用できるようにされたデータは、たとえば、ADWCテナンシにおいてプロビジョニングされ得る。ADWCテナンシは、共有インフラストラクチャのその他の機能へのアクセスを与えつつ、その顧客(テナント)にのみ対応付けられ、その顧客(テナント)のみがアクセス可能である。
【0022】
たとえば、実施の形態によると、分析アプリケーション環境は、共通の変換マップまたはリポジトリを提供する共有データパイプライン/処理インフラストラクチャに連結されたデータパイプライン/処理層を含み得る。データパイプライン/処理層は、Oracle Fusion Applications環境から抽出された、ADWCテナンシ内のデータウェアハウスインスタンスにロードされるデータを顧客(テナント)が取り入れることを可能にし、複数のデータウェアハウススキーマ、データ抽出スキーマおよび対象スキーマ、およびデータパイプライン/処理ステージの監視など、機能のサポートを含む。
【0023】
はじめに
実施の形態によると、たとえば、ADW(Oracle Autonomous Data Warehouse)、ADWC(Oracle Autonomous Data Warehouse Cloud)などのデータウェアハウス環境もしくはコンポーネント、または、大量のデータを格納するようになされたその他の種類のデータウェアハウス環境もしくはコンポーネントは、1つ以上の業務アプリケーションが収集したデータを格納するための中央リポジトリを提供することができる。
【0024】
たとえば、実施の形態によると、データウェアハウス環境またはコンポーネントは、OLAP(Online Analytical Processing)または複数の異なるソースのデータから業務関連データを生成するその他の技術を採用する多次元データベースとして提供され得る。組織は、1つ以上の垂直業務アプリケーションおよび/または水平業務アプリケーションからこのような業務関連データを抽出し、その組織に対応付けられたデータウェアハウスインスタンスに抽出データを注入することができる。
【0025】
水平業務アプリケーションとして、上述したような、ERP、HCM、CX、SCM、およびEPMなどを挙げることができ、様々な企業組織間で広い範囲の機能を提供することができる。
【0026】
垂直業務アプリケーションは、一般に、水平業務アプリケーションよりも範囲が狭いが、規定の範囲または業界内の上下方向の一連のデータへのアクセスを与える。垂直業務アプリケーションとして、特定の組織内で使用するための医療用ソフトウェア、または銀行業務ソフトウェアなどを挙げることができる。
【0027】
SaaSまたはクラウド指向商品として、たとえばOracle Fusion Applicationsなど、企業ソフトウェアプロダクトまたはコンポーネントをソフトウェアベンダーが提供することが増えているが、たとえば、Oracle ADWCなど、その他の企業ソフトウェアプロダクトまたはコンポーネントを、SaaS、PaaS(Platform-as-a-Service)、またはハイブリッドサブスクリプションのうちの1つ以上として提供することができる。従来のビジネスインテリジェンス(BI)アプリケーションおよびプロセスの企業ユーザは、一般に、水平業務アプリケーションおよび垂直業務アプリケーションからデータを抽出して、抽出データをデータウェアハウスに入れるタスク、つまり、多くの時間とリソースの両方を必要とし得るプロセスに直面する。
【0028】
実施の形態によると、分析アプリケーション環境は、たとえば、OBIA(Oracle Business Intelligence Applications)環境、または顧客(テナント)自身によってまたは複数のサードパーティエンティティから入手される大量のデータを調べるようになされたその他の種類のBIコンポーネントなど、BIコンポーネントとともに使用するための、コンピュータによって実行可能なソフトウェア分析アプリケーションを顧客(テナント)開発できるようにする。
【0029】
たとえば、実施の形態によると、データウェアハウスコンポーネントを含むSaaSの業務の生産性ソフトウェアプロダクトスイートとともに用いた場合、分析アプリケーション環境は、スイートの業務生産性ソフトウェアアプリケーションからのデータをデータウェアハウスコンポーネントに追加するために利用することができる。定義済みのデータ統合フローによって、業務生産性ソフトウェアアプリケーションとデータウェアハウスとの間のデータのETLプロセスという、サービスのユーザによってこれまで手作業で行われていたであろうプロセスを自動化することができる。
【0030】
別の例として、実施の形態によると、SaaS製品スイートの様々な業務生産性ソフトウェアアプリケーション間で入手された統合データを格納するためのデータベーススキーマで、分析アプリケーション環境を予め構成することができる。このような予め構成されたデータベーススキーマを用いて、提供されたデータウェアハウスをユーザが手作業で設計、調整、およびモデル化しないで済みつつ、SaaS製品スイートで提供される生産性ソフトウェアアプリケーションおよび対応するトランザクションデータベース全体を均一にすることができる。
【0031】
別の例として、実施の形態によると、分析アプリケーション環境を利用して、データウェアハウスインスタンスのレポートインターフェースに、様々な業務生産性ソフトウェアアプリケーションに関連する業務関連データオブジェクトを記述した関連メタデータを予め追加して、たとえば、定義済みのダッシュボード、重要業績評価指標(KPI)、またはその他の種類のレポートを含めることができる。
【0032】
分析アプリケーション環境
図1は、実施の形態に係る、分析アプリケーション環境を提供するシステムを示す図である。
【0033】
図1に示すように、実施の形態によると、分析アプリケーション環境100は、コンピュータハードウェア(たとえば、プロセッサ、メモリ)101を有し、コントロールプレーン102およびデータプレーン104として動作する1つ以上のソフトウェアコンポーネントを備え、データウェアハウスまたはデータウェアハウスインスタンス160へのアクセスを与えるコンピュータシステムによって提供され得るまたは当該コンピュータシステムにおいて動作し得る。
【0034】
実施の形態によると、
図1に示され、様々なその他の実施の形態に関してさらに説明されるコンポーネントおよびプロセスは、コンピュータシステムまたはその他の種類の処理装置によって実行可能なソフトウェアまたはプログラムコードとして提供することができる。
【0035】
たとえば、実施の形態によると、本明細書において説明するコンポーネントおよびプロセスは、クラウドコンピューティングシステム、またはその他の適切にプログラムされたコンピュータシステムによって提供することができる。
【0036】
実施の形態によると、コントロールプレーンは、たとえば、Oracle Analytics CloudもしくはOracle Cloud Infrastructure環境、またはその他の種類のクラウド環境など、SaaSまたはクラウド環境に関連して提供されるクラウドまたはその他のソフトウェアプロダクトを制御するよう動作する。
【0037】
たとえば、実施の形態によると、顧客(テナント)20および/またはプロビジョニングコンポーネント111を有するクラウド環境の制御の下、コントロールプレーンは、デバイスハードウェア12と、管理アプリケーション14と、ユーザインターフェース16とを有するクライアントコンピュータデバイス10によるアクセスを可能にするコンソールインターフェース110を含み得る。
【0038】
実施の形態によると、コンソールインターフェースは、グラフィカルユーザインターフェース(GUI)および/もしくはコマンドラインインターフェース(CLI)もしくはその他のインターフェースを操作する顧客(テナント)によるアクセスを可能にすることができ、ならびに/またはSaaSもしくはクラウド環境のプロバイダおよびその顧客(テナント)が使用するためのインターフェースを含み得る。
【0039】
たとえば、実施の形態によると、コンソールインターフェースは、顧客が顧客のSaaS環境内で使用するためのサービスをプロビジョニングできるようにするインターフェース、および顧客がプロビジョニングされたそれらのサービスを構成できるようにするインターフェースを提供することができる。
【0040】
実施の形態によると、プロビジョニングコンポーネントは、プロビジョニングコマンドが指定するサービスをプロビジョニングするための様々な機能を含み得る。
【0041】
たとえば、実施の形態によると、業務生産性ソフトウェアアプリケーションのスイートのうちの1つ以上をそれらのソフトウェアアプリケーションとともに使用するためのデータウェアハウスインスタンスとあわせて購入するために、顧客(テナント)がコンソールインターフェースを介してプロビジョニングコンポーネントにアクセスして当該プロビジョニングコンポーネントを利用することができる。
【0042】
実施の形態によると、顧客(テナント)は、データウェアハウス内の顧客スキーマ164のプロビジョニングを要求できる。また、顧客は、必須属性(たとえば、ログイン認証情報)およびオプション属性(たとえば、サイズ、または速度)を含む、データウェアハウスインスタンスに対応付けられた複数の属性をコンソールインターフェースを介して供給し得る。その後、データウェアハウスの顧客スキーマを含む要求されたデータウェアハウスインスタンスをプロビジョニングコンポーネントがプロビジョニングして、顧客が供給する適切な情報をデータウェアハウスインスタンスに追加し得る。
【0043】
また、実施の形態によると、プロビジョニングコンポーネントは、たとえば特定の顧客(テナント)についてのETLプロセス実行の要求頻度を変更または更新することによって、データウェアハウスインスタンス、および/またはデータプレーンにおいて動作するETLプロセスを更新または編集するために利用することができる。
【0044】
また、実施の形態によると、プロビジョニングコンポーネントは、以下にさらに説明するが、プロビジョニングAPI(Application Programming Interface)112と、複数のワーカー115と、メータリングマネージャ116と、データプレーンAPI118とを備え得る。SaaS環境内でサービスをプロビジョニングするまたはプロビジョニングされたサービスの構成を変更するためのコマンド、命令、またはその他の入力がコンソールインターフェースにおいて受信された場合、コンソールインターフェースは、たとえばAPI呼び出しを行うことによってプロビジョニングAPIと通信できる。
【0045】
実施の形態によると、データプレーンAPIは、データプレーンと通信できる。
たとえば、実施の形態によると、データプレーンが提供するサービスのプロビジョニングおよび構成の変更を、データプレーンAPIを介してデータプレーンに通信することができる。
【0046】
実施の形態によると、メータリングマネージャは、サービスと、コントロールプレーンを通してプロビジョニングされたサービスの使用状況とを測る様々な機能を含み得る。
【0047】
たとえば、実施の形態によると、メータリングマネージャは、特定の顧客(テナント)について、請求のために、コントロールプレーンを介してプロビジョニングされたプロセッサの使用状況を時間の経過とともに記録することができる。同様に、メータリングマネージャは、SaaS環境の顧客が使用するためにパーティション分割されたデータウェアハウスの記憶空間の量を、請求のために記録することができる。
【0048】
実施の形態によると、データプレーンは、データパイプライン/処理層120と、データ変換層134とを含み得る。データパイプライン/処理層120およびデータ変換層134は、共に、たとえば、顧客の(テナントの)SaaS環境においてプロビジョニングされる業務生産性ソフトウェアアプリケーションなど、組織のエンタープライズソフトウェアアプリケーション/データ環境からの運用データまたは取引データを処理する。データパイプライン/処理は、SaaS環境においてプロビジョニングされる業務アプリケーションおよびデータベースから取引データを抽出し、その後変換データをデータウェアハウスにロードする様々な機能を含み得る。
【0049】
実施の形態によると、データ変換層は、SaaS環境においてプロビジョニングされた業務アプリケーションおよび対応するトランザクションデータベースから受信した取引データを、分析アプリケーション環境が理解するモデルフォーマットに変換するためにシステムが利用するデータモデル、たとえば、ナレッジモデル(KM)またはその他の種類のデータモデルなどを含み得る。モデルフォーマットは、データウェアハウスに格納するのに適した任意のデータフォーマットで提供することができる。
【0050】
実施の形態によると、データプレーンが提供するデータパイプライン/処理は、以下にさらに説明するが、監視コンポーネント122と、データステージングコンポーネント124と、データ品質コンポーネント126と、データ投影コンポーネント128とを備え得る。
【0051】
実施の形態によると、データ変換層は、以下にさらに説明するが、ディメンション作成コンポーネント136と、ファクト作成コンポーネント138と、アグリゲート作成コンポーネント140とを備え得る。また、データプレーンは、データ/構成ユーザインターフェース130と、マッピング/構成データベース132とを備え得る。
【0052】
実施の形態によると、データウェアハウスは、デフォルト分析アプリケーションスキーマ(本明細書では、いくつかの実施の形態に従って、分析ウェアハウススキーマと称する)162と、システムの顧客(テナント)ごとに上述したような顧客スキーマとを含み得る。
【0053】
実施の形態によると、データプレーンは、ETL(抽出、変換、ロード)操作を実行する役割を担う。ETL操作は、たとえばSaaS環境において提供される業務生産性ソフトウェアアプリケーションおよび対応するトランザクションデータベースなど、組織のエンタープライズソフトウェアアプリケーション/データ環境から取引データを抽出する操作、抽出データをモデルフォーマットに変換する操作、および変換データをデータウェアハウスの顧客スキーマにロードする操作を含む。
【0054】
たとえば、実施の形態によると、環境の各顧客(テナント)は、データウェアハウス内の自身の顧客テナンシに対応付けられ得る。顧客テナンシは、自身の顧客スキーマに対応付けられており、分析アプリケーションスキーマへの読み取り専用アクセスが与えられた状態で追加提供され得る。分析アプリケーションスキーマは、周期的またはその他の基準でデータパイプライン/処理、たとえば、ETLプロセスによって更新することができる。
【0055】
実施の形態によると、複数のテナントをサポートするために、システムは、複数のデータウェアハウスまたは複数のデータウェアハウスインスタンスの使用を可能にすることができる。
【0056】
たとえば、実施の形態によると、第1テナントの第1ウェアハウス顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および複数のデータウェアハウスまたは複数のデータウェアハウスインスタンスのうちの第1データウェアハウスインスタンスから構成され得、第2テナントの第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および複数のデータウェアハウスまたは複数のデータウェアハウスインスタンスのうちの第2データウェアハウスインスタンスから構成され得る。
【0057】
実施の形態によると、データパイプライン/処理は、たとえば、SaaS環境においてプロビジョニングされる業務生産性ソフトウェアアプリケーションおよび対応するトランザクションデータベース106など、エンタープライズソフトウェアアプリケーション/データ環境から取引データを一定間隔(たとえば、毎時/毎日/毎週)で抽出するようにスケジューリングされ得る。
【0058】
実施の形態によると、抽出プロセス108が取引データを抽出することができ、抽出すると、データパイプライン/処理がデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを用いて、抽出データの完全性を確保することができる。
【0059】
たとえば、実施の形態によると、データ品質コンポーネントは、データステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことができる。
【0060】
実施の形態によると、抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0061】
上述したように、実施の形態によると、データパイプライン/処理は、データ変換層と組み合わせて動作してデータをモデルフォーマットに変換することができる。マッピング/構成データベースは、データ変換が使用するデータモデルを定義するメタデータおよびデータマッピングを格納し得る。データ/構成ユーザインターフェース(UI)は、マッピング/構成データベースへのアクセスおよび変更を容易にすることができる。
【0062】
実施の形態によると、マッピング/構成データベースにおいて定義されたデータモデルに基づいて、監視コンポーネントは、変換されるいくつかの異なるデータセットの依存関係を判断することができる。判断した依存関係に基づいて、監視コンポーネントは、いくつかの異なるデータセットのうちどれを最初にモデルフォーマットに変換すべきかを決定できる。
【0063】
たとえば、実施の形態によると、第1のモデルデータセットがその他のモデルデータセットへの依存関係がなく、第2のモデルデータセットが第1のモデルデータセットへの依存関係がある場合、監視コンポーネントは、第2のデータセットよりも先に第1のデータセットを変換して、第2のデータセットの第1のデータセットへの依存関係に対応できる。
【0064】
実施の形態によると、データ変換層は、たとえば上述したようなデータモデルに従って、データウェアハウスの顧客スキーマにロードするのに適したフォーマットに抽出データを変換できる。変換の間、データ変換は、ディメンションの作成、ファクトの作成、およびアグリゲートの作成を適宜行うことができる。ディメンションの作成は、データウェアハウスインスタンスにロードするためのディメンションまたはフィールドを作成するステップを含み得る。
【0065】
たとえば、実施の形態によると、ディメンションは、たとえば、「名前」、「アドレス」または「年齢」など、いくつかのデータのカテゴリを含み得る。ファクトの作成は、データが取り得る値または「測定」できる値の作成を含む。ファクトは、データウェアハウスインスタンスにある適切なディメンションに対応付けられる。アグリゲートの作成は、データウェアハウスインスタンスの顧客スキーマ164にある既存データへの変換データの集計を演算するデータマッピングの作成を含む。
【0066】
実施の形態によると、(データモデルによって定義されるように)変換が行われると、データパイプライン/処理は、ソースデータを読み出し、変換処理を適用して、このデータをデータウェアハウスインスタンスに送ることができる。
【0067】
実施の形態によると、データ変換を規則で表すことができ、変換が行われると、直ちにステージング領域で値が保持され得る。ステージング領域では、データ品質コンポーネントおよびデータ投影コンポーネントが、データウェアハウスインスタンスにある顧客スキーマにアップロードされる前に変換データの完全性を検証し得る。たとえば複数の計算インスタンスまたは複数の仮想マシンにおいて抽出、変換、ロードプロセスが実行されると、監視が行われ得る。また、抽出、変換、ロードプロセスの間、依存関係を保持することができ、データパイプライン/処理は、このような順序の決定に対処することができる。
【0068】
実施の形態によると、抽出データの変換後、データパイプライン/処理は、ウェアハウスロードプロシージャ150を実行して、変換データをデータウェアハウスの顧客スキーマインスタンスにロードできる。変換データを顧客スキーマにロードするステップに続いて、変換データを解析して様々な追加のビジネスインテリジェンスプロセスにおいて利用することができる。
【0069】
水平統合型ビジネスソフトウェアアプリケーションおよび垂直統合型ビジネスソフトウェアアプリケーションは、一般に、リアルタイムでのデータ収集を対象とする。これは、水平統合型ビジネスソフトウェアアプリケーションおよび垂直統合型ビジネスソフトウェアアプリケーションが一般に日々のワークフローのために利用されているおり、トランザクションデータベースにデータを格納するためである。つまり、一般に、最新データのみがこのようなデータベースに格納される。
【0070】
たとえば、HCMアプリケーションは、従業員が事業所を異動する場合に従業員に対応付けられたレコードを更新するかもしれないが、このようなHCMアプリケーションは、一般に、会社での在職期間中に従業員が働いた各事業所のレコードを保持していない。このように、会社内での従業員の移動を判断しようとするBI関連のクエリは、このようなクエリを完了させるための十分なレコードをトランザクションデータベース内に持っていない。
【0071】
実施の形態によると、水平統合型ビジネスソフトウェアアプリケーションおよび垂直統合型ビジネスソフトウェアアプリケーションが生成した現在のデータに加えて、過去データもBIアプリケーションが容易に理解できる状況で格納することによって、上記技術を用いてデータが追加されたデータウェアハウスインスタンスは、たとえば、業務生産性/アナリティクス製品スイートによってまたは顧客が選択したSQLツールによって提供されるインターフェースを利用して、BIアプリケーションがこのようなクエリを処理するためのリソースを提供する。
【0072】
データパイプラインプロセス
図2は、実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【0073】
図2に示すように、実施の形態によると、上述したデータパイプラインプロセスを利用して、たとえば顧客の(テナントの)エンタープライズソフトウェアアプリケーション/データ環境(106)からデータを入手、カスタムデータ109の場合、1つ以上の顧客固有のアプリケーション107から当該データを入手し、データウェアハウスインスタンスにロードできる。いくつかの例では、データウェアハウスインスタンスは、データを格納するためのオブジェクトストレージ105の使用を含む。
【0074】
実施の形態によると、データパイプライン/処理は、顧客(テナント)ごとに、分析アプリケーションスキーマを、たとえばスタースキーマとして保持する。分析アプリケーションスキーマは、たとえば、HCM(Human Capital Management)アナリティクスまたはERP(Enterprise Resource Planning)アナリティクスなど、特定のアナリティクスユースケースのベストプラクティスに従って、システムによって周期的またはその他の基準で更新される。
【0075】
実施の形態によると、顧客(テナント)ごとに、システムは、分析アプリケーション環境(クラウド)テナンシ114内に当該システムが保持および更新する分析アプリケーションスキーマを利用して、その顧客のエンタープライズアプリケーション環境内および顧客テナンシ117内のデータの解析に基づいて顧客のデータウェアハウスインスタンスに予めデータを追加する。このように、システムが保持する分析アプリケーションスキーマによって、データパイプライン/処理によって顧客の環境からデータを「ライブ」で検索し、顧客のデータウェアハウスインスタンスにロードすることが可能になる。
【0076】
また、実施の形態によると、分析アプリケーション環境は、環境の顧客ごとに、顧客が容易に内容を変更できる顧客スキーマを提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。分析アプリケーション環境の顧客ごとに、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、HCMアナリティクスまたはERPアナリティクスなど、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。
【0077】
たとえば、実施の形態によると、データウェアハウス(たとえば、Oracle Autonomous Data Warehouse、ADWC)は、分析アプリケーションスキーマを含み、エンタープライズソフトウェアアプリケーション/データ環境から入手した顧客スキーマを顧客/テナントごとに含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、そのテナントのみがアクセス可能であるが、同時に、様々な機能、たとえば、ETL関連の機能または共有分析アプリケーション環境のその他の機能へのアクセスを可能にする。
【0078】
実施の形態によると、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にする。たとえば、第1顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および第1データウェアハウスインスタンスから構成され得、第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および第2データウェアハウスインスタンスから構成され得る。
【0079】
実施の形態によると、特定の顧客/テナントごとに、そのデータを抽出すると、データパイプライン/処理が、テナントのデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを使用して、たとえばデータステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことによって抽出データの完全性を確保することができる。抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0080】
抽出、変換、ロード/パブリッシュ
図3は、実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【0081】
図3に示すように、実施の形態によると、上述したデータパイプラインプロセスを利用して、たとえば顧客の(テナントの)エンタープライズソフトウェアアプリケーション/データ環境からデータを抽出、カスタムデータの場合、1つ以上の顧客固有のアプリケーションから当該データを入手し、このデータをデータウェアハウスインスタンスにロードするまたはデータウェアハウスにあるこのデータをリフレッシュする処理は、一般に、1つ以上の計算インスタンス(複数可)170によって実行される抽出サービス163、変換サービス165、およびロード/パブリッシュサービス167のうちの1つ以上を含む、ETPサービス160またはプロセスによって実行される大きく3つのステージを伴う。
【0082】
抽出:実施の形態によると、抽出するビューオブジェクトのリストが、たとえばReST呼び出しによってOracleBICC(Oracle BI Cloud Connector)コンポーネントに提出され得る。抽出されたファイルは、OSS(Oracle Storage Service)コンポーネントなど、データを格納するためのオブジェクトストレージコンポーネントにアップロードされ得る。
【0083】
変換:実施の形態によると、変換処理は、オブジェクトストレージコンポーネント(たとえば、OSS)からデータファイルを取り、ADWCデータベースなど、対象データウェアハウスにデータファイルをロードしている間、ビジネスロジックを適用する。対象データウェアハウスは、データパイプライン/処理の内部に存在し、顧客(テナント)からは見えない。
【0084】
ロード/パブリッシュ:実施の形態によると、ロード/パブリッシュサービスまたはプロセスは、たとえば、ADWCデータベースまたはウェアハウスからデータを取り、それを顧客(テナント)がアクセス可能なデータウェアハウスインスタンスにパブリッシュする。
【0085】
複数の顧客(テナント)
図4は、実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【0086】
実施の形態に係るシステムの複数のテナント(顧客)との動作を示した
図4に示すように、上述したデータパイプラインプロセスを利用して、たとえば複数の顧客の(テナントの)エンタープライズソフトウェアアプリケーション/データ環境の各々からデータを入手して、データウェアハウスインスタンスにロードすることができる。
【0087】
実施の形態によると、データパイプライン/処理は、複数の顧客(テナント)の各々、たとえば、顧客A180、顧客B182ごとに、特定のアナリティクスユースケースのベストプラクティスに従ってシステムが周期的またはその他の基準で更新する分析アプリケーションスキーマを保持する。
【0088】
実施の形態によると、複数の顧客(たとえば、顧客A、B)ごとに、システムは、当該システムが保持および更新する分析アプリケーションスキーマ162A、162Bを利用して、その顧客のエンタープライズアプリケーション環境106A、106B内および各顧客のテナンシ(たとえば、顧客Aテナンシ181、顧客Bテナンシ183)内のデータの解析に基づいて、データパイプライン/処理によって顧客の環境からデータを検索して顧客のデータウェアハウスインスタンス160A、160Bにロードできるよう、顧客のデータウェアハウスインスタンスに予めデータを追加する。
【0089】
また、実施の形態によると、分析アプリケーション環境は、環境の複数の顧客の各々について、顧客スキーマ(たとえば、顧客Aスキーマ164A、顧客Bスキーマ164B)を提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。
【0090】
上述したように、実施の形態によると、分析アプリケーション環境の複数の顧客の各々について、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。特定の顧客に関する抽出プロセス108A、108Bを完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0091】
アクティベーションプラン
図5は、実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【0092】
実施の形態によると、特定の機能領域の顧客のデータパイプライン/処理サービスの動作を制御してその顧客の(テナントの)特定のニーズに対処するために、アクティベーションプラン186を利用できる。
【0093】
たとえば、実施の形態によると、アクティベーションプランは、特定の順序で特定の時刻に特定の期間内に実行される複数の抽出サービス/ステップ、変換サービス/ステップ、および格納(パブリッシュ)サービス/ステップを規定できる。
【0094】
実施の形態によると、各顧客は、自身のアクティベーションプラン(複数可)に対応付けられ得る。たとえば、第1の顧客Aのアクティベーションプランは、その顧客のエンタープライズソフトウェアアプリケーション環境(たとえば、Fusion Applications環境)から検索するテーブルを決定したり、またはサービスおよびそれらのプロセスをどのように逐次実行するかを決定したりすることができ、第2の顧客Bのアクティベーションプランは、同様に、その顧客のエンタープライズソフトウェアアプリケーション環境から検索するテーブルを決定したり、サービスおよびそれらのプロセスをどのように逐次実行するかを決定したりすることができる。
【0095】
実施の形態によると、アクティベーションプランは、マッピング/構成データベースに格納することができ、顧客がデータ/構成UIを介してカスタマイズすることができる。各顧客は、複数のアクティベーションプランを持つことができる。様々な顧客のETLプロセスを実行する計算インスタンス/サービス(仮想マシン)は、アクティベーションプランに従って、アクティベーションプランを使用するために特定のサービス専用にされた後、その他のサービスおよびアクティベーションプランによる使用のためにリリースされ得る。
【0096】
実施の形態によると、一定時間に渡って記録された過去のパフォーマンスデータの判断に基づいて、システムは、たとえば特定のテナントに対応付けられた1つ以上の機能領域についてのアクティベーションプラン、または複数のテナントに対応付けられた一連のアクティベーションプラン全体の実行を最適化して、これらのテナントのVMおよびSLA(Servive Level Agreement)の利用に対処できる。このような過去データは、ロード量およびロード時間の統計データを含み得る。
【0097】
たとえば、実施の形態によると、過去データは、抽出サイズ、抽出数、抽出時間、ウェアハウスのサイズ、変換時間、パブリッシュ(ロード)時間、ビューオブジェクト抽出サイズ、ビューオブジェクト抽出レコード数、ビューオブジェクト抽出時間、ウェアハウステーブル数、テーブルの処理済みレコード数、ウェアハウステーブル変換時間、パブリッシュテーブル数、およびパブリッシュ時間を含み得る。たとえば逐次実行または並列実行する様々なタスクを編成して1つのアクティベーションプランを最小時間で実行することを達成するために、このような過去データを利用して現在および将来のアクティベーションプランを予想および計画することができる。これに加えて、集められた過去データを利用して、1つのテナントの複数のアクティベーションプラン全体を最適化することができる。いくつかの実施の形態では、過去データに基づいたアクティベーションプラン(すなわち、ETLなど、特定の順序で実行されるジョブ)の最適化は、自動で行うことができる。
【0098】
ETLプロセスフロー
図6は、実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【0099】
図6に示すように、実施の形態によると、システムは、(たとえば、Oracle)管理テナンシ内のデータ構成/管理/ETL//ステータスサービス190によって制御される、各顧客のエンタープライズソフトウェアアプリケーション環境(たとえば、Fusion Applications環境)からのデータの流れを可能にする。この例では、データの流れは、BICCコンポーネント、ストレージクラウドサービス192、たとえば、OSSを通り、そこからデータウェアハウスインスタンスまでのデータの流れを含む。
【0100】
上述したように、実施の形態によると、データのフローは、ストレージクラウドサービスからデータを取って内部の対象データウェアハウス(たとえば、ADWCデータベース)194にロードする1つ以上のサービス(たとえば、ETLリポジトリ193で説明したような上述した抽出サービス、変換サービスを含む)によって管理され得る。対象データウェアハウスは、データパイプライン/処理の内部に存在し、顧客からは見えない。
【0101】
実施の形態によると、データは、複数のステージにおいて、データウェアハウスに移動され、その後データベーステーブル変更ログ195に移動される。ロード/パブリッシュサービスは、顧客データを、データベーステーブル変更ログ195から、顧客に対応付けられた、当該顧客がアクセス可能な、その顧客テナンシ内の対象データウェアハウスインスタンスにロードすることができる。
【0102】
ETLのステージ
図7は、実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【0103】
実施の形態によると、エンタープライズアプリケーションからデータを抽出して変換し、データウェアハウスインスタンスにロードするステップは、複数のステージを伴う。各ステージは、いくつかの逐次ジョブまたは並列ジョブを有し得、顧客ごとに異なるステージング領域196、198を含む、異なる空間/ハードウェア上で動作する。
【0104】
分析アプリケーション環境メトリクス
図8は、実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【0105】
図8に示すように、実施の形態によると、メータリングマネージャは、サービスと、コントロールプレーンを通してプロビジョニングされたサービスの使用状況とを測る機能を含み、プロビジョニングされたメトリクス142を提供できる。
【0106】
たとえば、メータリングマネージャは、特定の顧客(テナント)について、請求のために、コントロールプレーンを介してプロビジョニングされたプロセッサの使用状況を時間の経過とともに記録することができる。同様に、メータリングマネージャは、SaaS環境の顧客が使用するためにパーティション分割されたデータウェアハウスの記憶空間の量を、請求のために記録することができる。
【0107】
分析アプリケーション環境のカスタマイズ
図9は、実施の形態に係る、分析アプリケーション環境を提供するシステムをさらに示す図である。
【0108】
図9に示すように、実施の形態によると、たとえば上述したデータパイプラインプロセスを利用して顧客のエンタープライズソフトウェアアプリケーション/データ環境から入手できるデータに加えて、いくつかの例ではデータを格納するためのオブジェクトストレージを用いることを含む上述したようなデータパイプラインプロセス、および/またはカスタムETLプロセス144もしくは顧客視点で変更可能なその他のプロセスのいずれかを利用して、1つ以上の顧客固有のアプリケーション107A、107Bから入手される1つ以上の追加のカスタムデータ109A、109Bを抽出して変換し、データウェアハウスインスタンスにロードすることができる。データウェアハウスインスタンスにデータがロードされると、顧客は、顧客スキーマおよびソフトウェア分析アプリケーションスキーマの両方のテーブルを組み合わせたビジネスデータベースビューを作成できるようになり、たとえば、業務生産性/アナリティクス製品スイートによってまたは顧客が選択したSQLツールによって提供されるインターフェースを利用して、データウェアハウスインスタンスを照会できるようになる。
【0109】
分析アプリケーション環境の方法
図10は、実施の形態に係る、分析アプリケーション環境を提供する方法のフローチャートを示す図である。
【0110】
図10に示すように、実施の形態によると、ステップ200において、分析アプリケーション環境が、複数のテナントによるデータを格納するためのデータウェアハウスへのアクセスを与える。データウェアハウスは、分析アプリケーションスキーマに対応付けられている。
【0111】
ステップ202では、複数のテナントの各テナントを、顧客テナンシと、データウェアハウスインスタンスにデータを追加する際にテナントが使用する顧客スキーマとに対応付ける。
【0112】
ステップ204では、データウェアハウスのインスタンスに、エンタープライズソフトウェアアプリケーション/データ環境から受信したデータを追加する。分析アプリケーション環境の特定のテナントに対応付けられ、特定のテナントがアクセス可能なデータウェアハウスインスタンスにおいて、当該特定のテナントに対応付けられた分析アプリケーションスキーマおよび顧客スキーマに従って、特定のテナントに対応付けられたデータがプロビジョニングされる。
【0113】
ハイブリッドSaaS/PaaSモデル
実施の形態によると、コントロールプレーンは、SaaS環境内で提供されるクラウド製品を制御するように動作し得る。たとえば、コンソールインターフェースは、顧客が顧客のSaaS環境内で使用するためのサービスをプロビジョニングできるようにするインターフェース、および顧客がプロビジョニングされたそれらのサービスを構成できるようにするインターフェースを提供することができる。プロビジョニングコンポーネントは、プロビジョニングコマンドで指定されたサービスをプロビジョニングするための機能を含み得る。たとえば、アプリケーションのスイートのうちの1つをデータウェアハウスインスタンスとあわせて購入するために、顧客(テナント)がコンソールインターフェースを介してプロビジョニングコンポーネントにアクセスして当該プロビジョニングコンポーネントを利用することができる。
【0114】
図11は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0115】
図11に示すように、コントロールプレーン1102は、たとえば、SaaS環境内で提供されるクラウド製品を制御し、顧客/テナントによって制御されたクライアント(コンピュータ)デバイスによるアクセスを可能にするコンソールインターフェース1110と、プロビジョニングコンポーネント1111とを備え得る。
【0116】
実施の形態によると、たとえば、顧客は、データウェアハウスインスタンスのプロビジョニングを要求し得る。次に、プロビジョニングコンポーネントは、要求されたデータウェアハウスインスタンス(顧客スキーマを含む)をプロビジョニングし、顧客が供給する必要な情報をウェアハウスに追加する。これは、たとえば、PaaSコンポーネントの一部を表し得る。
【0117】
実施の形態によると、たとえば、このプロビジョニングをさらに利用して、たとえば発注に基づいて、顧客が使用可能な複数のシートおよび複数の演算装置(compute unit)をプロビジョニングすることができる。これは、たとえば、SaaSコンポーネントの一部を表し得る。
【0118】
実施の形態によると、データベースインスタンス、シート、計算装置などを含む、このようにプロビジョニングされたリソースの各々を、システムのテナント(またはサブテナント)ごとにタグ付けすることができる。
【0119】
図11にさらに示すように、データプレーン1104は、データパイプライン(たとえば、ETL(抽出、変換、ロード)プロセス)1120と、データ変換層1134とを備え得る。データパイプライン1120と、データ変換層1134は、顧客エンタープライズアプリケーションまたはトランザクションデータベース環境、たとえば、Oracle Fusion Applications環境から運用データまたは取引データを抽出(1108a)して処理し、データウェアハウスインスタンスにロード(1150)するように連携して動作する。また、データプレーンは、データ/構成ユーザインターフェース1130と、マッピング/構成データベース1132とを備え得る。
【0120】
実施の形態によると、
図11に示す実施の形態では1つのテナント、つまり、1106aによって表される顧客Aしか示していないが、上述したように、このようなシステムおよび方法は、複数のテナントをサポートすることができる。1つのテナントのみを図示したのは、図面を明確にするためである。
【0121】
実施の形態によると、データパイプラインは、顧客/テナント(たとえば、顧客Aアプリケーション/トランザクションデータベース1106aに対応付けられた顧客A)ごとに、分析アプリケーションスキーマ1162を、たとえばスタースキーマとして保持する。分析アプリケーションスキーマ1162は、たとえば、HCM(Human Capital Management)アナリティクスまたはERP(Enterprise Resource Planning)アナリティクスなど、特定の分析ユースケースのベストプラクティスに従って、システムによって定期的に(たとえば、毎時/毎日/毎週)更新される。
【0122】
実施の形態によると、データ変換層は、エンタープライズアプリケーションまたは業務アプリケーションから受信した取引データをデータウェアハウスにロードするためのモデルフォーマットに変換するためにシステムが使用するデータモデル(たとえば、ナレッジモデル、KM、またはその他の種類のデータモデル)を含み得る。
【0123】
実施の形態によると、顧客ごとに、システムは、当該システムが保持および更新する分析アプリケーションスキーマを利用して、その顧客のエンタープライズアプリケーション環境、たとえば、1106a内のデータの解析に基づいて顧客のデータウェアハウスインスタンスに予めデータを追加する。
【0124】
実施の形態によると、このように、システムが保持する分析アプリケーションスキーマにより、データパイプラインによって顧客の環境からデータを「ライブ」で検索し、顧客のデータウェアハウスインスタンス1160aにロードすることが可能になる。そうでない場合、当該データを顧客が読み取り専用でアクセスできるようにし、顧客は直接変更を加えることはできない。
【0125】
実施の形態によると、分析アプリケーション環境は、環境の顧客ごとに、顧客が容易に内容を変更できる1164aなどの顧客スキーマを提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。
【0126】
実施の形態によると、分析アプリケーション環境の顧客ごとに、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、HCMアナリティクスまたはERPアナリティクスなど、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。
【0127】
実施の形態によると、たとえば、データウェアハウス(たとえば、Oracle Autonomous Data Warehouse、ADWC)は、デフォルト分析アプリケーションスキーマ(分析ウェアハウススキーマ)を含み、エンタープライズアプリケーションコンポーネントから入手した顧客スキーマを顧客/テナントごとに含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、そのテナントのみがアクセス可能であるが、同時に、様々な機能、たとえば、ETL関連の機能または共有分析アプリケーション環境のその他の機能へのアクセスを可能にする。
【0128】
実施の形態によると、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にする。たとえば、第1顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および第1データウェアハウスインスタンスから構成され得、第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および第2データウェアハウスインスタンスから構成され得る。
【0129】
実施の形態によると、特定の顧客/テナントごとに、そのデータを抽出すると、データパイプラインが、テナントのデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを使用して、たとえばデータステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことによって抽出データの完全性を確保することができる。
【0130】
抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0131】
プロビジョニングコンポーネントを利用して、顧客は、データウェアハウス内の顧客スキーマ1164のプロビジョニングを要求できる。また、顧客は、必須属性(たとえば、ログイン認証情報)およびオプション属性(たとえば、サイズ、速度、またはシートの数)を含む、データウェアハウスに対応付けられた複数の属性をコンソールインターフェースを介して供給し得る。その後、要求されたデータウェアハウス(たとえば、データウェアハウスの顧客スキーマ)をプロビジョニングコンポーネントがプロビジョニングして、顧客が供給する必要な情報を当該ウェアハウスに追加し得る。
【0132】
このようなプロビジョニングは、たとえば、シートの数、およびデータベースサイズならびに計算装置の数を含む、発注に基づき得る。このようなプロビジョニングされたコンポーネントは、システムの各テナントにタグ付けされ得る。
【0133】
実施の形態によると、データウェアハウスインスタンス1160aに対応付けて監視エージェント1180が(たとえば、データウェアハウスまたはコントロールプレーンにおいて)提供され得る。このような監視エージェント1183をコントロールプレーンにおいて追加で提供することができる。(実施の形態によると、図内では2つの別個のコンポーネントとして示しているが、監視エージェント1180および1183は、1つのエンティティであり得、1180と1183との間の通信線は、SaaSとPaaSとの関係の性質を示している)。
【0134】
実施の形態によると、監視エージェント(複数可)は、テナント/顧客に対応付けられたプロビジョニングされたメトリクスへのアクセスを有し得る。監視エージェント1180、1183は、たとえば、システムの各テナントによってタグ付けされたリソースを監視することによって、データウェアハウスにおけるテナント/顧客によるリソースの使用状況(たとえば、対応付けられたデータウェアハウスインスタンスにおいて顧客/テナントが利用するストレージを監視する)、およびコントロールプレーンにおけるテナント/顧客によるリソースの使用状況(たとえば、アナリティクスにおいて使用するための顧客/テナントによる計算装置の使用状況を監視する)を(たとえば、動的に、設定された構成可能な間隔で、毎時、毎日など)監視する(1182/1185)役割を担い得る。これは、たとえば、顧客の計算装置の使用状況をプロビジョニングされたメトリクスに関連して監視および測ること、または、顧客が使用中であるシートの数をプロビジョニングされたメトリクスに関連して測ることを含み得る。
【0135】
実施の形態によると、監視エージェントは、テナントによるリソース利用を監視および追跡する際に、プロビジョニングされたメトリクス1181/1184(たとえば、顧客/テナントによるプロビジョニングに応答して顧客/テナントにプロビジョニングまたは割り当てられたリソース)を利用することができる。これにより、システム内のリソース割り当てを改善することができる。すなわち、各テナントには、各テナントに対応付けられているとタグ付けされた様々なリソースがプロビジョニングされているので、タグ付け(テナントに割り当てられた各リソースは、当該テナントに属するまた当該テナントに割り当てられていると識別するためにタグ付けされている)されたリソースを追跡することによって、監視エージェントは、テナントごとのリソースの使用状況を特定することができる。これに加えて、監視エージェントは、プロビジョニングされたリソースをテナントが超えたことを示す、または、監視されているメトリクスがテナントに対応付けられている状況から、所与のテナントに追加リソース(たとえば、計算装置)を設定された時間提供すべきであることを示す通知/命令1186をプロビジョニングコンポーネント1111、またはその他のバックエンドシステムに提供することができる。同様に、監視エージェント1180/1183は、顧客/テナントに割り当てられたリソースが多すぎて(プロビジョニングされた以上)利用されていないことを示す命令1188を提供できる。これらのような場合、次に、プロビジョニングコンポーネントは、たとえば、利用の無駄をなくすおよび/またはこのようなリソースを異なるテナント/顧客にプロビジョニングするために、当該リソースを回収することができる。
【0136】
実施の形態によると、たとえば、20個のシートと4個の計算装置が1つのテナントにプロビジョニングされているとする。使用率が高い期間、監視エージェントは、テナントに対応付けられたタグによって、当該テナントがプロビジョニングされたコンポーネント以上のコンポーネントを利用していることを検出する。このような場合、監視エージェントは、たとえば4個よりも多い数の計算装置をテナントが利用していることを検出し、これに従って、追加の計算リソースのプロビジョニングを提供できる。また、このようなプロビジョニングに基づいて、監視エージェントは、このような使用状況を通知することができる。
【0137】
図12は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0138】
より具体的には、
図12は、実施の形態に係る、ストレージ/データウェアハウスリソースが十分でない状況におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0139】
図12に示すように、コントロールプレーン1202は、たとえば、SaaS環境内で提供されるクラウド製品を制御し、顧客/テナントによって制御されたクライアント(コンピュータ)デバイスによるアクセスを可能にするコンソールインターフェース1210と、プロビジョニングコンポーネント1211とを備え得る。
【0140】
実施の形態によると、たとえば、顧客は、データウェアハウスインスタンスのプロビジョニングを要求し得る。次に、プロビジョニングコンポーネントは、要求されたデータウェアハウスインスタンス(顧客スキーマを含む)をプロビジョニングし、顧客が供給する必要な情報をウェアハウスに追加する。これは、たとえば、PaaSコンポーネントの一部を表し得る。
【0141】
実施の形態によると、たとえば、このプロビジョニングをさらに利用して、たとえば発注に基づいて、プロビジョニング顧客が使用可能な複数のシートおよび複数の演算装置(compute unit)をプロビジョニングすることができる。これは、たとえば、SaaSコンポーネントの一部を表し得る。
【0142】
実施の形態によると、データベースインスタンス、シート、計算装置などを含む、このようにプロビジョニングされたリソースの各々を、システムのテナント(またはサブテナント)ごとにタグ付けすることができる。
【0143】
図12にさらに示すように、データプレーン1204は、データパイプライン(たとえば、ETL(抽出、変換、ロード)プロセス)1220と、データ変換層1234とを備え得る。データパイプライン1220と、データ変換層1234は、顧客エンタープライズアプリケーションまたはトランザクションデータベース環境、たとえば、Oracle Fusion Applications環境から運用データまたは取引データを抽出(1208a)して処理し、データウェアハウスインスタンスにロード(1250)するように連携して動作する。また、データプレーンは、データ/構成ユーザインターフェース1230と、マッピング/構成データベース1232とを備え得る。
【0144】
実施の形態によると、
図12に示す実施の形態では1つのテナント、つまり、1206aによって表される顧客Aしか示していないが、上述したように、このようなシステムおよび方法は、複数のテナントをサポートすることができる。1つのテナントのみを図示したのは、図面を明確にするためである。
【0145】
実施の形態によると、データパイプラインは、顧客/テナント(たとえば、顧客Aアプリケーション/トランザクションデータベース1206aに対応付けられた顧客A)ごとに、分析アプリケーションスキーマ1262を、たとえばスタースキーマとして保持する。分析アプリケーションスキーマ1262は、たとえば、HCM(Human Capital Management)アナリティクスまたはERP(Enterprise Resource Planning)アナリティクスなど、特定の分析ユースケースのベストプラクティスに従って、システムによって定期的に(たとえば、毎時/毎日/毎週)更新される。
【0146】
実施の形態によると、データ変換層は、エンタープライズアプリケーションまたは業務アプリケーションから受信した取引データをデータウェアハウスに格納するためにモデルフォーマットにロードするためにシステムが使用するデータモデル(たとえば、ナレッジモデル、KM、またはその他の種類のデータモデル)を含み得る。
【0147】
実施の形態によると、顧客ごとに、システムは、当該システムが保持および更新する分析アプリケーションスキーマを利用して、その顧客のエンタープライズアプリケーション環境、たとえば、1206a内のデータの解析に基づいて顧客のデータウェアハウスインスタンスに予めデータを追加する。
【0148】
実施の形態によると、このように、システムが保持する分析アプリケーションスキーマにより、データパイプラインによって顧客の環境からデータを「ライブ」で検索し、顧客のデータウェアハウスインスタンス1260aにロードすることが可能になる。そうでない場合、当該データを顧客が読み取り専用でアクセスできるようにし、顧客は直接変更を加えることはできない。
【0149】
実施の形態によると、分析アプリケーション環境は、環境の顧客ごとに、顧客が容易に内容を変更できる1264aなどの顧客スキーマを提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。
【0150】
実施の形態によると、分析アプリケーション環境の顧客ごとに、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、HCMアナリティクスまたはERPアナリティクスなど、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。
【0151】
実施の形態によると、たとえば、データウェアハウス(たとえば、Oracle Autonomous Data Warehouse、ADWC)は、デフォルト分析アプリケーションスキーマ(分析ウェアハウススキーマ)を含み、エンタープライズアプリケーションコンポーネントから入手した顧客スキーマを顧客/テナントごとに含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、そのテナントのみがアクセス可能であるが、同時に、様々な機能、たとえば、ETL関連の機能または共有分析アプリケーション環境のその他の機能へのアクセスを可能にする。
【0152】
実施の形態によると、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にする。たとえば、第1顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および第1データウェアハウスインスタンスから構成され得、第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および第2データウェアハウスインスタンスから構成され得る。
【0153】
実施の形態によると、特定の顧客/テナントごとに、そのデータを抽出すると、データパイプラインが、テナントのデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを使用して、たとえばデータステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことによって抽出データの完全性を確保することができる。
【0154】
抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0155】
プロビジョニングコンポーネントを利用して、顧客は、データウェアハウス内の顧客スキーマ1264のプロビジョニングを要求できる。また、顧客は、必須属性(たとえば、ログイン認証情報)およびオプション属性(たとえば、サイズ、速度、またはシートの数)を含む、データウェアハウスに対応付けられた複数の属性をコンソールインターフェースを介して供給し得る。その後、要求されたデータウェアハウス(たとえば、データウェアハウスの顧客スキーマ)をプロビジョニングコンポーネントがプロビジョニングして、顧客が供給する必要な情報を当該ウェアハウスに追加し得る。
【0156】
このようなプロビジョニングは、たとえば、シートの数、およびデータベースサイズならびに計算装置の数を含む、発注に基づき得る。このようなプロビジョニングされたコンポーネントは、システムの各テナントにタグ付けされ得る。
【0157】
実施の形態によると、データウェアハウスインスタンス1260aに対応付けて監視エージェント監視エージェント1280が(たとえば、データウェアハウスまたはコントロールプレーンにおいて)提供され得る。このような監視エージェント1283をコントロールプレーンにおいて追加で提供することができる。(実施の形態によると、図内では2つの別個のコンポーネントとして示しているが、監視エージェント1280および1283は、1つのエンティティであり得、1280と1283との間の通信線は、SaaSとPaaSとの関係の性質を示している)。
【0158】
実施の形態によると、監視エージェント(複数可)は、テナント/顧客に対応付けられたプロビジョニングされたメトリクスへのアクセスを有し得る。監視エージェント1280、1283は、たとえば、システムの各テナントによってタグ付けされたリソースを監視することによって、データウェアハウスにおけるテナント/顧客によるリソースの使用状況(たとえば、対応付けられたデータウェアハウスインスタンスにおいて顧客/テナントが利用するストレージを監視する)、およびコントロールプレーンにおけるテナント/顧客によるリソースの使用状況(たとえば、アナリティクスにおいて使用するための顧客/テナントによる計算装置の使用状況を監視する)を(たとえば、動的に、設定された構成可能な間隔で、毎時、毎日など)監視する(1282/1285)役割を担い得る。これは、たとえば、顧客の計算装置の使用状況をプロビジョニングされたメトリクスに関連して監視および測ること、または、顧客が使用中であるシートの数をプロビジョニングされたメトリクスに関連して測ることを含み得る。
【0159】
実施の形態によると、監視エージェントは、テナントによるリソース利用を監視および追跡する際に、プロビジョニングされたメトリクス1281/1284(たとえば、顧客/テナントによるプロビジョニングに応答して顧客/テナントにプロビジョニングまたは割り当てられたリソース)を利用することができる。これにより、システム内のリソース割り当てを改善することができる。すなわち、各テナントには、各テナントに対応付けられているとタグ付けされた様々なリソースがプロビジョニングされているので、タグ付け(テナントに割り当てられた各リソースは、当該テナントに属するまた当該テナントに割り当てられていると識別するためにタグ付けされている)されたリソースを追跡することによって、監視エージェントは、テナントごとのリソースの使用状況を特定することができる。これに加えて、監視エージェントは、プロビジョニングされたリソースをテナントが超えたことを示す、または、監視されているメトリクスがテナントに対応付けられている状況から、所与のテナントに追加リソース(たとえば、計算装置)を設定された時間提供すべきであることを示す通知/命令1286をプロビジョニングコンポーネント1211、またはその他のバックエンドシステムに提供することができる。同様に、監視エージェント1280/1283は、顧客/テナントに割り当てられたリソースが多すぎて(プロビジョニングされた以上)利用されていないことを示す命令1288を提供できる。これらのような場合、次に、プロビジョニングコンポーネントは、たとえば、利用の無駄をなくすおよび/またはこのようなリソースを異なるテナント/顧客にプロビジョニングするために、当該リソースを回収することができる。
【0160】
実施の形態によると、
図12の実施の形態に示すように、監視エージェント1280は、顧客/テナントのデータウェアハウスインスタンスが、対応付けられた顧客/テナントに提供しているリソースが十分でないと検出し得る(1282)。これは、たとえば、新しいデータのオンボーディング(ETLプロセス)にはプロビジョニングされたデータウェアハウスインスタンスの現在のサイズが十分でない場合に大量のデータをオンボーディングする期間であり得る。このような実施の形態では、管理作業なしでシームレスにクライアントの現在の要求に応えるために、次に、監視エージェントは、過剰供給であることを通信1287することができ、プロビジョニングコンポーネント1211まで命令1286を中継してデータウェアハウスの顧客インスタンスに追加リソース(図示した例では、追加の記憶空間)を割り当て/プロビジョニングすることができる(1288)。
【0161】
図13は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0162】
より具体的には、
図13は、実施の形態に係る、ストレージ/データウェアハウスリソースがテナント/顧客によって有効に利用されていない状況におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0163】
図13に示すように、コントロールプレーン1302は、たとえば、SaaS環境内で提供されるクラウド製品を制御し、顧客/テナントによって制御されたクライアント(コンピュータ)デバイスによるアクセスを可能にするコンソールインターフェース1310と、プロビジョニングコンポーネント1311とを備え得る。
【0164】
実施の形態によると、たとえば、顧客は、データウェアハウスインスタンスのプロビジョニングを要求し得る。次に、プロビジョニングコンポーネントは、要求されたデータウェアハウスインスタンス(顧客スキーマを含む)をプロビジョニングし、顧客が供給する必要な情報をウェアハウスに追加する。これは、たとえば、PaaSコンポーネントの一部を表し得る。
【0165】
実施の形態によると、たとえば、このプロビジョニングをさらに利用して、たとえば発注に基づいて、プロビジョニング顧客が使用可能な複数のシートおよび複数の演算装置(compute unit)をプロビジョニングすることができる。これは、たとえば、SaaSコンポーネントの一部を表し得る。
【0166】
実施の形態によると、データベースインスタンス、シート、計算装置などを含む、このようにプロビジョニングされたリソースの各々を、システムのテナント(またはサブテナント)ごとにタグ付けすることができる。
【0167】
図13にさらに示すように、データプレーン1304は、データパイプライン(たとえば、ETL(抽出、変換、ロード)プロセス)1320と、データ変換層1334とを備え得る。データパイプライン1320と、データ変換層1334は、顧客エンタープライズアプリケーションまたはトランザクションデータベース環境、たとえば、Oracle Fusion Applications環境から運用データまたは取引データを抽出(1308a)して処理し、データウェアハウスインスタンスにロード(1350)するように連携して動作する。また、データプレーンは、データ/構成ユーザインターフェース1330と、マッピング/構成データベース1332とを備え得る。
【0168】
実施の形態によると、
図13に示す実施の形態では1つのテナント、つまり、1306aによって表される顧客Aしか示していないが、上述したように、このようなシステムおよび方法は、複数のテナントをサポートすることができる。1つのテナントのみを図示したのは、図面を明確にするためである。
【0169】
実施の形態によると、データパイプラインは、顧客/テナント(たとえば、顧客Aアプリケーション/トランザクションデータベース1306aに対応付けられた顧客A)ごとに、分析アプリケーションスキーマ1362を、たとえばスタースキーマとして保持する。分析アプリケーションスキーマ1362は、たとえば、HCM(Human Capital Management)アナリティクスまたはERP(Enterprise Resource Planning)アナリティクスなど、特定の分析ユースケースのベストプラクティスに従って、システムによって定期的に(たとえば、毎時/毎日/毎週)更新される。
【0170】
実施の形態によると、データ変換層は、エンタープライズアプリケーションまたは業務アプリケーションから受信した取引データをデータウェアハウスにロードするためのモデルフォーマットに変換するためにシステムが使用するデータモデル(たとえば、ナレッジモデル、KM、またはその他の種類のデータモデル)を含み得る。
【0171】
実施の形態によると、顧客ごとに、システムは、当該システムが保持および更新する分析アプリケーションスキーマを利用して、その顧客のエンタープライズアプリケーション環境、たとえば、1306a内のデータの解析に基づいて顧客のデータウェアハウスインスタンスに予めデータを追加する。
【0172】
実施の形態によると、このように、システムが保持する分析アプリケーションスキーマにより、データパイプラインによって顧客の環境からデータを「ライブ」で検索し、顧客のデータウェアハウスインスタンス1360aにロードすることが可能になる。そうでない場合、当該データを顧客が読み取り専用でアクセスできるようにし、顧客は直接変更を加えることはできない。
【0173】
実施の形態によると、分析アプリケーション環境は、環境の顧客ごとに、顧客が容易に内容を変更できる1364aなどの顧客スキーマを提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。
【0174】
実施の形態によると、分析アプリケーション環境の顧客ごとに、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、HCMアナリティクスまたはERPアナリティクスなど、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。
【0175】
実施の形態によると、たとえば、データウェアハウス(たとえば、Oracle Autonomous Data Warehouse、ADWC)は、デフォルト分析アプリケーションスキーマ(分析ウェアハウススキーマ)を含み、エンタープライズアプリケーションコンポーネントから入手した顧客スキーマを顧客/テナントごとに含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、そのテナントのみがアクセス可能であるが、同時に、様々な機能、たとえば、ETL関連の機能または共有分析アプリケーション環境のその他の機能へのアクセスを可能にする。
【0176】
実施の形態によると、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にする。たとえば、第1顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および第1データウェアハウスインスタンスから構成され得、第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および第2データウェアハウスインスタンスから構成され得る。
【0177】
実施の形態によると、特定の顧客/テナントごとに、そのデータを抽出すると、データパイプラインが、テナントのデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを使用して、たとえばデータステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことによって抽出データの完全性を確保することができる。
【0178】
抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0179】
プロビジョニングコンポーネントを利用して、顧客は、データウェアハウス内の顧客スキーマ1364のプロビジョニングを要求できる。また、顧客は、必須属性(たとえば、ログイン認証情報)およびオプション属性(たとえば、サイズ、速度、またはシートの数)を含む、データウェアハウスに対応付けられた複数の属性をコンソールインターフェースを介して供給し得る。その後、要求されたデータウェアハウス(たとえば、データウェアハウスの顧客スキーマ)をプロビジョニングコンポーネントがプロビジョニングして、顧客が供給する必要な情報を当該ウェアハウスに追加し得る。
【0180】
このようなプロビジョニングは、たとえば、シートの数、およびデータベースサイズならびに計算装置の数を含む、発注に基づき得る。このようなプロビジョニングされたコンポーネントは、システムの各テナントにタグ付けされ得る。
【0181】
実施の形態によると、データウェアハウスインスタンス1360aに対応付けて監視エージェント1380が(たとえば、データウェアハウスまたはコントロールプレーンにおいて)提供され得る。このような監視エージェント1383をコントロールプレーンにおいて追加で提供することができる。(実施の形態によると、図内では2つの別個のコンポーネントとして示しているが、監視エージェント1380および1383は、1つのエンティティであり得、1380と1383との間の通信線は、SaaSとPaaSとの関係の性質を示している)。
【0182】
実施の形態によると、監視エージェント(複数可)は、テナント/顧客に対応付けられたプロビジョニングされたメトリクスへのアクセスを有し得る。監視エージェント1380、1383は、たとえば、システムの各テナントによってタグ付けされたリソースを監視することによって、データウェアハウスにおけるテナント/顧客によるリソースの使用状況(たとえば、対応付けられたデータウェアハウスインスタンスにおいて顧客/テナントが利用するストレージを監視する)、およびコントロールプレーンにおけるテナント/顧客によるリソースの使用状況(たとえば、アナリティクスにおいて使用するための顧客/テナントによる計算装置の使用状況を監視する)を(たとえば、動的に、設定された構成可能な間隔で、毎時、毎日など)監視する(1382/1385)役割を担い得る。これは、たとえば、顧客の計算装置の使用状況をプロビジョニングされたメトリクスに関連して監視および測ること、または、顧客が使用中であるシートの数をプロビジョニングされたメトリクスに関連して測ることを含み得る。
【0183】
実施の形態によると、監視エージェントは、テナントによるリソース利用を監視および追跡する際に、プロビジョニングされたメトリクス1381/1384(たとえば、顧客/テナントによるプロビジョニングに応答して顧客/テナントにプロビジョニングまたは割り当てられたリソース)を利用することができる。これにより、システム内のリソース割り当てを改善することができる。すなわち、各テナントには、各テナントに対応付けられているとタグ付けされた様々なリソースがプロビジョニングされているので、タグ付け(テナントに割り当てられた各リソースは、当該テナントに属するまた当該テナントに割り当てられていると識別するためにタグ付けされている)されたリソースを追跡することによって、監視エージェントは、テナントごとのリソースの使用状況を特定することができる。これに加えて、監視エージェントは、プロビジョニングされたリソースをテナントが超えたことを示す、または、監視されているメトリクスがテナントに対応付けられている状況から、所与のテナントに追加リソース(たとえば、計算装置)を設定された時間提供すべきであることを示す通知/命令1386をプロビジョニングコンポーネント1311、またはその他のバックエンドシステムに提供することができる。同様に、監視エージェント1380/1383は、顧客/テナントに割り当てられたリソースが多すぎて(プロビジョニングされた以上)利用されていないことを示す命令1388を提供できる。これらのような場合、次に、プロビジョニングコンポーネントは、たとえば、利用の無駄をなくすおよび/またはこのようなリソースを異なるテナント/顧客にプロビジョニングするために、当該リソースを回収することができる。
【0184】
実施の形態によると、
図13の実施の形態に示すように、監視エージェント1380は、顧客/テナントのデータウェアハウスインスタンスが十分なリソースよりも多いリソースを提供しており、顧客/テナントに提供されているリソースの利用が現在の要求以上になっていると検出し得る(1382)。これは、たとえば、テナント/顧客のデータウェアハウスのインスタンス(たとえば、1364a)に過剰な記憶空間が割り当てられている通常動作時であり得る。このような実施の形態では、次に、監視エージェントは、有効活用されていないこと1387を通信し得、プロビジョニングコンポーネント1311まで命令1386が中継され得る。次に、いくつかの実施の形態によると、管理作業なしでシームレスにクライアントの現在の要求に応えるために、プロビジョニングコンポーネントは、顧客/テナントへのリソース(たとえば、ストレージサイズ)の割り当てを解除して、どこか他の所に割り当てし直す、またはこのリソースが再び必要になった場合に顧客/テナントに再割り当てするために確保しておくことができる。
【0185】
図14は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0186】
より具体的には、
図14は、実施の形態に係る、ストレージ/データウェアハウスリソースがテナント/顧客によって有効に利用されていない状況におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0187】
図14に示すように、コントロールプレーン1402は、たとえば、SaaS環境内で提供されるクラウド製品を制御し、顧客/テナントによって制御されたクライアント(コンピュータ)デバイスによるアクセスを可能にするコンソールインターフェース1410と、プロビジョニングコンポーネント1411とを備え得る。
【0188】
実施の形態によると、たとえば、顧客は、データウェアハウスインスタンスのプロビジョニングを要求し得る。次に、プロビジョニングコンポーネントは、要求されたデータウェアハウスインスタンス(顧客スキーマを含む)をプロビジョニングし、顧客が供給する必要な情報をウェアハウスに追加する。これは、たとえば、PaaSコンポーネントの一部を表し得る。
【0189】
実施の形態によると、たとえば、このプロビジョニングをさらに利用して、たとえば発注に基づいて、プロビジョニング顧客が使用可能な複数のシートおよび複数の演算装置(compute unit)をプロビジョニングすることができる。これは、たとえば、SaaSコンポーネントの一部を表し得る。
【0190】
実施の形態によると、データベースインスタンス、シート、計算装置などを含む、このようにプロビジョニングされたリソースの各々を、システムのテナント(またはサブテナント)ごとにタグ付けすることができる。
【0191】
図14にさらに示すように、データプレーン1404は、データパイプライン(たとえば、ETL(抽出、変換、ロード)プロセス)1420と、データ変換層1434とを備え得る。データパイプライン1420と、データ変換層1434は、顧客エンタープライズアプリケーションまたはトランザクションデータベース環境、たとえば、Oracle Fusion Applications環境から運用データまたは取引データを抽出(1408a)して処理し、データウェアハウスインスタンスにロード(1450)するように連携して動作する。また、データプレーンは、データ/構成ユーザインターフェース1430と、マッピング/構成データベース1432とを備え得る。
【0192】
実施の形態によると、
図14に示す実施の形態では1つのテナント、つまり、1406aによって表される顧客Aしか示していないが、上述したように、このようなシステムおよび方法は、複数のテナントをサポートすることができる。1つのテナントのみを図示したのは、図面を明確にするためである。
【0193】
実施の形態によると、データパイプラインは、顧客/テナント(たとえば、顧客Aアプリケーション/トランザクションデータベース1406aに対応付けられた顧客A)ごとに、分析アプリケーションスキーマ1462を、たとえばスタースキーマとして保持する。分析アプリケーションスキーマ1462は、たとえば、HCM(Human Capital Management)アナリティクスまたはERP(Enterprise Resource Planning)アナリティクスなど、特定の分析ユースケースのベストプラクティスに従って、システムによって定期的に(たとえば、毎時/毎日/毎週)更新される。
【0194】
実施の形態によると、データ変換層は、エンタープライズアプリケーションまたは業務アプリケーションから受信した取引データをデータウェアハウスにロードするためのモデルフォーマットに変換するためにシステムが使用するデータモデル(たとえば、ナレッジモデル、KM、またはその他の種類のデータモデル)を含み得る。
【0195】
実施の形態によると、顧客ごとに、システムは、当該システムが保持および更新する分析アプリケーションスキーマを利用して、その顧客のエンタープライズアプリケーション環境、たとえば、1406a内のデータの解析に基づいて顧客のデータウェアハウスインスタンスに予めデータを追加する。
【0196】
実施の形態によると、このように、システムが保持する分析アプリケーションスキーマにより、データパイプラインによって顧客の環境からデータを「ライブ」で検索し、顧客のデータウェアハウスインスタンス1460aにロードすることが可能になる。そうでない場合、当該データを顧客が読み取り専用でアクセスできるようにし、顧客は直接変更を加えることはできない。
【0197】
実施の形態によると、分析アプリケーション環境は、環境の顧客ごとに、顧客が容易に内容を変更できる1464aなどの顧客スキーマを提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。
【0198】
実施の形態によると、分析アプリケーション環境の顧客ごとに、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、HCMアナリティクスまたはERPアナリティクスなど、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。
【0199】
実施の形態によると、たとえば、データウェアハウス(たとえば、Oracle Autonomous Data Warehouse、ADWC)は、デフォルト分析アプリケーションスキーマ(分析ウェアハウススキーマ)を含み、エンタープライズアプリケーションコンポーネントから入手した顧客スキーマを顧客/テナントごとに含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、そのテナントのみがアクセス可能であるが、同時に、様々な機能、たとえば、ETL関連の機能または共有分析アプリケーション環境のその他の機能へのアクセスを可能にする。
【0200】
実施の形態によると、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にする。たとえば、第1顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および第1データウェアハウスインスタンスから構成され得、第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および第2データウェアハウスインスタンスから構成され得る。
【0201】
実施の形態によると、特定の顧客/テナントごとに、そのデータを抽出すると、データパイプラインが、テナントのデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを使用して、たとえばデータステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことによって抽出データの完全性を確保することができる。
【0202】
抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0203】
プロビジョニングコンポーネントを利用して、顧客は、データウェアハウス内の顧客スキーマ1464のプロビジョニングを要求できる。また、顧客は、必須属性(たとえば、ログイン認証情報)およびオプション属性(たとえば、サイズ、速度、またはシートの数)を含む、データウェアハウスに対応付けられた複数の属性をコンソールインターフェースを介して供給し得る。その後、要求されたデータウェアハウス(たとえば、データウェアハウスの顧客スキーマ)をプロビジョニングコンポーネントがプロビジョニングして、顧客が供給する必要な情報を当該ウェアハウスに追加し得る。
【0204】
このようなプロビジョニングは、たとえば、シートの数、およびデータベースサイズならびに計算装置の数を含む、発注に基づき得る。このようなプロビジョニングされたコンポーネントは、システムの各テナントにタグ付けされ得る。
【0205】
実施の形態によると、データウェアハウスインスタンス1460aに対応付けて監視エージェント1480が(たとえば、データウェアハウスまたはコントロールプレーンにおいて)提供され得る。このような監視エージェント1483をコントロールプレーンにおいて追加で提供することができる。(実施の形態によると、図内では2つの別個のコンポーネントとして示しているが、監視エージェント1480および1483は、1つのエンティティであり得、1480と1483との間の通信線は、SaaSとPaaSとの関係の性質を示している)。
【0206】
実施の形態によると、監視エージェント(複数可)は、テナント/顧客に対応付けられたプロビジョニングされたメトリクスへのアクセスを有し得る。監視エージェント1480、1483は、たとえば、システムの各テナントによってタグ付けされたリソースを監視することによって、データウェアハウスにおけるテナント/顧客によるリソースの使用状況(たとえば、対応付けられたデータウェアハウスインスタンスにおいて顧客/テナントが利用するストレージを監視する)、およびコントロールプレーンにおけるテナント/顧客によるリソースの使用状況(たとえば、アナリティクスにおいて使用するための顧客/テナントによる計算装置の使用状況を監視する)を(たとえば、動的に、設定された構成可能な間隔で、毎時、毎日など)監視する(1482/1485)役割を担い得る。これは、たとえば、顧客の計算装置の使用状況をプロビジョニングされたメトリクスに関連して監視および測ること、または、顧客が使用中であるシートの数をプロビジョニングされたメトリクスに関連して測ることを含み得る。
【0207】
実施の形態によると、監視エージェントは、テナントによるリソース利用を監視および追跡する際に、プロビジョニングされたメトリクス1481/1484(たとえば、顧客/テナントによるプロビジョニングに応答して顧客/テナントにプロビジョニングまたは割り当てられたリソース)を利用することができる。これにより、システム内のリソース割り当てを改善することができる。すなわち、各テナントには、各テナントに対応付けられているとタグ付けされた様々なリソースがプロビジョニングされているので、タグ付け(テナントに割り当てられた各リソースは、当該テナントに属するまた当該テナントに割り当てられていると識別するためにタグ付けされている)されたリソースを追跡することによって、監視エージェントは、テナントごとのリソースの使用状況を特定することができる。これに加えて、監視エージェントは、プロビジョニングされたリソースをテナントが超えたことを示す、または、監視されているメトリクスがテナントに対応付けられている状況から、所与のテナントに追加リソース(たとえば、計算装置)を設定された時間提供すべきであることを示す通知/命令1486をプロビジョニングコンポーネント1411、またはその他のバックエンドシステムに提供することができる。同様に、監視エージェント1480/1483は、顧客/テナントに割り当てられたリソースが多すぎて(プロビジョニングされた以上)利用されていないことを示す命令1488を提供できる。これらのような場合、次に、プロビジョニングコンポーネントは、たとえば、利用の無駄をなくすおよび/またはこのようなリソースを異なるテナント/顧客にプロビジョニングするために、当該リソースを回収することができる。
【0208】
実施の形態によると、
図14の実施の形態に示すように、監視エージェント1483は、コンソールインターフェースにある顧客/テナントにプロビジョニングされたリソース(たとえば、計算装置、シートなど)がフル利用されていること、および、顧客/テナントがこのようなリソースの過剰供給を要求していることを検出し得る(1485)。これは、たとえば、顧客/テナントが集中的なアナリティクスを大規模に実行している、たとえば、顧客/テナント(たとえば、1464a)に当初プロビジョニングされた以上の計算装置を必要とする数百ギガバイトのデータ上でアナリティクスを実行している場合であり得る。このような実施の形態では、プロビジョニングコンポーネント1411に命令1486が中継され得る。次に、いくつかの実施の形態によると、管理作業なしでシームレスにクライアントの現在の要求に応えるために、プロビジョニングコンポーネントは、追加の計算リソース(またはシート)を顧客/テナントに割り当てることができる。
【0209】
図15は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0210】
より具体的には、
図15は、実施の形態に係る、ストレージ/データウェアハウスリソースがテナント/顧客によって有効に利用されていない状況におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0211】
図15に示すように、コントロールプレーン1502は、たとえば、SaaS環境内で提供されるクラウド製品を制御し、顧客/テナントによって制御されたクライアント(コンピュータ)デバイスによるアクセスを可能にするコンソールインターフェース1510と、プロビジョニングコンポーネント1511とを備え得る。
【0212】
実施の形態によると、たとえば、顧客は、データウェアハウスインスタンスのプロビジョニングを要求し得る。次に、プロビジョニングコンポーネントは、要求されたデータウェアハウスインスタンス(顧客スキーマを含む)をプロビジョニングし、顧客が供給する必要な情報をウェアハウスに追加する。これは、たとえば、PaaSコンポーネントの一部を表し得る。
【0213】
実施の形態によると、たとえば、このプロビジョニングをさらに利用して、たとえば発注に基づいて、プロビジョニング顧客が使用可能な複数のシートおよび複数の演算装置(compute unit)をプロビジョニングすることができる。これは、たとえば、SaaSコンポーネントの一部を表し得る。
【0214】
実施の形態によると、データベースインスタンス、シート、計算装置などを含む、このようにプロビジョニングされたリソースの各々を、システムのテナント(またはサブテナント)ごとにタグ付けすることができる。
【0215】
図15にさらに示すように、データプレーン1504は、データパイプライン(たとえば、ETL(抽出、変換、ロード)プロセス)1520と、データ変換層1534とを備え得る。データパイプライン1520と、データ変換層1534は、顧客エンタープライズアプリケーションまたはトランザクションデータベース環境、たとえば、Oracle Fusion Applications環境から運用データまたは取引データを抽出(1508a)して処理し、データウェアハウスインスタンスにロード(1550)するように連携して動作する。また、データプレーンは、データ/構成ユーザインターフェース1530と、マッピング/構成データベース1532とを備え得る。
【0216】
実施の形態によると、
図15に示す実施の形態では1つのテナント、つまり、1506aによって表される顧客Aしか示していないが、上述したように、このようなシステムおよび方法は、複数のテナントをサポートすることができる。1つのテナントのみを図示したのは、図面を明確にするためである。
【0217】
実施の形態によると、データパイプラインは、顧客/テナント(たとえば、顧客Aアプリケーション/トランザクションデータベース1506aに対応付けられた顧客A)ごとに、分析アプリケーションスキーマ1562を、たとえばスタースキーマとして保持する。分析アプリケーションスキーマ1562は、たとえば、HCM(Human Capital Management)アナリティクスまたはERP(Enterprise Resource Planning)アナリティクスなど、特定の分析ユースケースのベストプラクティスに従って、システムによって定期的に(たとえば、毎時/毎日/毎週)更新される。
【0218】
実施の形態によると、データ変換層は、エンタープライズアプリケーションまたは業務アプリケーションから受信した取引データをデータウェアハウスにロードするためのモデルフォーマットに変換するためにシステムが使用するデータモデル(たとえば、ナレッジモデル、KM、またはその他の種類のデータモデル)を含み得る。
【0219】
実施の形態によると、顧客ごとに、システムは、当該システムが保持および更新する分析アプリケーションスキーマを利用して、その顧客のエンタープライズアプリケーション環境、たとえば、1506a内のデータの解析に基づいて顧客のデータウェアハウスインスタンスに予めデータを追加する。
【0220】
実施の形態によると、このように、システムが保持する分析アプリケーションスキーマにより、データパイプラインによって顧客の環境からデータを「ライブ」で検索し、顧客のデータウェアハウスインスタンス1560aにロードすることが可能になる。そうでない場合、当該データを顧客が読み取り専用でアクセスできるようにし、顧客は直接変更を加えることはできない。
【0221】
実施の形態によると、分析アプリケーション環境は、環境の顧客ごとに、顧客が容易に内容を変更できる1564aなどの顧客スキーマを提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。
【0222】
実施の形態によると、分析アプリケーション環境の顧客ごとに、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、HCMアナリティクスまたはERPアナリティクスなど、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。
【0223】
実施の形態によると、たとえば、データウェアハウス(たとえば、Oracle Autonomous Data Warehouse、ADWC)は、デフォルト分析アプリケーションスキーマ(分析ウェアハウススキーマ)を含み、エンタープライズアプリケーションコンポーネントから入手した顧客スキーマを顧客/テナントごとに含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、そのテナントのみがアクセス可能であるが、同時に、様々な機能、たとえば、ETL関連の機能または共有分析アプリケーション環境のその他の機能へのアクセスを可能にする。
【0224】
実施の形態によると、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にする。たとえば、第1顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および第1データウェアハウスインスタンスから構成され得、第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および第2データウェアハウスインスタンスから構成され得る。
【0225】
実施の形態によると、特定の顧客/テナントごとに、そのデータを抽出すると、データパイプラインが、テナントのデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを使用して、たとえばデータステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことによって抽出データの完全性を確保することができる。
【0226】
抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0227】
プロビジョニングコンポーネントを利用して、顧客は、データウェアハウス内の顧客スキーマ1564のプロビジョニングを要求できる。また、顧客は、必須属性(たとえば、ログイン認証情報)およびオプション属性(たとえば、サイズ、速度、またはシートの数)を含む、データウェアハウスに対応付けられた複数の属性をコンソールインターフェースを介して供給し得る。その後、要求されたデータウェアハウス(たとえば、データウェアハウスの顧客スキーマ)をプロビジョニングコンポーネントがプロビジョニングして、顧客が供給する必要な情報を当該ウェアハウスに追加し得る。
【0228】
このようなプロビジョニングは、たとえば、シートの数、およびデータベースサイズならびに計算装置の数を含む、発注に基づき得る。このようなプロビジョニングされたコンポーネントは、システムの各テナントにタグ付けされ得る。
【0229】
実施の形態によると、データウェアハウスインスタンス1560aに対応付けて監視エージェント1580が(たとえば、データウェアハウスまたはコントロールプレーンにおいて)提供され得る。このような監視エージェント1583をコントロールプレーンにおいて追加で提供することができる。(実施の形態によると、図内では2つの別個のコンポーネントとして示しているが、監視エージェント1580および1583は、1つのエンティティであり得、1580と1583との間の通信線は、SaaSとPaaSとの関係の性質を示している)。
【0230】
実施の形態によると、監視エージェント(複数可)は、テナント/顧客に対応付けられたプロビジョニングされたメトリクスへのアクセスを有し得る。監視エージェント1580、1583は、たとえば、システムの各テナントによってタグ付けされたリソースを監視することによって、データウェアハウスにおけるテナント/顧客によるリソースの使用状況(たとえば、対応付けられたデータウェアハウスインスタンスにおいて顧客/テナントが利用するストレージを監視する)、およびコントロールプレーンにおけるテナント/顧客によるリソースの使用状況(たとえば、アナリティクスにおいて使用するための顧客/テナントによる計算装置の使用状況を監視する)を(たとえば、動的に、設定された構成可能な間隔で、毎時、毎日など)監視する(1582/1585)役割を担い得る。これは、たとえば、顧客の計算装置の使用状況をプロビジョニングされたメトリクスに関連して監視および測ること、または、顧客が使用中であるシートの数をプロビジョニングされたメトリクスに関連して測ることを含み得る。
【0231】
実施の形態によると、監視エージェントは、テナントによるリソース利用を監視および追跡する際に、プロビジョニングされたメトリクス1581/1584(たとえば、顧客/テナントによるプロビジョニングに応答して顧客/テナントにプロビジョニングまたは割り当てられたリソース)を利用することができる。これにより、システム内のリソース割り当てを改善することができる。すなわち、各テナントには、各テナントに対応付けられているとタグ付けされた様々なリソースがプロビジョニングされているので、タグ付け(テナントに割り当てられた各リソースは、当該テナントに属するまた当該テナントに割り当てられていると識別するためにタグ付けされている)されたリソースを追跡することによって、監視エージェントは、テナントごとのリソースの使用状況を特定することができる。これに加えて、監視エージェントは、プロビジョニングされたリソースをテナントが超えたことを示す、または、監視されているメトリクスがテナントに対応付けられている状況から、所与のテナントに追加リソース(たとえば、計算装置)を設定された時間提供すべきであることを示す通知/命令1586をプロビジョニングコンポーネント1511、またはその他のバックエンドシステムに提供することができる。同様に、監視エージェント1580/1583は、顧客/テナントに割り当てられたリソースが多すぎて(プロビジョニングされた以上)利用されていないことを示す命令1588を提供できる。これらのような場合、次に、プロビジョニングコンポーネントは、たとえば、利用の無駄をなくすおよび/またはこのようなリソースを異なるテナント/顧客にプロビジョニングするために、当該リソースを回収することができる。
【0232】
実施の形態によると、
図15の実施の形態に示すように、監視エージェント1583は、コンソールインターフェースにある顧客/テナントにプロビジョニングされたリソース(たとえば、計算装置、シートなど)が有効に利用されていないこと、および、顧客/テナントがプロビジョニングされた量のリソースを現在必要としていないことを検出し得る1585。これは、たとえば、顧客/テナントがアナリティクスを現在実行していない場合であり得る。次に、いくつかの実施の形態によると、管理作業なしでシームレスにクライアントの現在の要求に応えるために、プロビジョニングコンポーネントは、顧客/テナントへのリソース(たとえば、複数の計算装置)の割り当てを解除して、どこか他の所に割り当てし直す、またはこのリソースが再び必要になった場合に顧客/テナントに再割り当てするために確保しておくことができる。
【0233】
図16は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0234】
より具体的には、
図16は、複数の顧客/テナントをサポートする分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0235】
図16に示すように、コントロールプレーン160は、たとえば、SaaS環境内で提供されるクラウド製品を制御し、顧客/テナントによって制御されたクライアント(コンピュータ)デバイスによるアクセスを可能にするコンソールインターフェース1610と、プロビジョニングコンポーネン1611とを備え得る。
【0236】
実施の形態によると、たとえば、顧客は、データウェアハウスインスタンスのプロビジョニングを要求し得る。次に、プロビジョニングコンポーネントは、要求されたデータウェアハウスインスタンス(顧客スキーマを含む)をプロビジョニングし、顧客が供給する必要な情報をウェアハウスに追加する。これは、たとえば、PaaSコンポーネントの一部を表し得る。
【0237】
実施の形態によると、たとえば、このプロビジョニングをさらに利用して、たとえば発注に基づいて、プロビジョニング顧客が使用可能な複数のシートおよび複数の演算装置(compute unit)をプロビジョニングすることができる。これは、たとえば、SaaSコンポーネントの一部を表し得る。
【0238】
実施の形態によると、データベースインスタンス、シート、計算装置などを含む、このようにプロビジョニングされたリソースの各々を、システムのテナント(またはサブテナント)ごとにタグ付けすることができる。
【0239】
図16にさらに示すように、データプレーン1604は、データパイプライン(たとえば、ETL(抽出、変換、ロード)プロセス)1620と、データ変換層1634とを備え得る。データパイプライン1620と、データ変換層1634は、顧客エンタープライズアプリケーションまたはトランザクションデータベース環境、たとえば、Oracle Fusion Applications環境から運用データまたは取引データを抽出(ここで、各抽出プロセスは、テナント/顧客ごと、および/または対応付けられているアプリケーションもしくはトランザクションデータベースごとに別々である)(1608)して処理し、データウェアハウスインスタンスにロード(1650)するように連携して動作する。また、データプレーンは、データ/構成ユーザインターフェース1630と、マッピング/構成データベース1632とを備え得る。
【0240】
実施の形態によると、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムは、データウェアハウスF60の複数のインスタンスを介して分析アプリケーション環境1600を各々が共有する複数のテナント/顧客をサポートすることができる。図示したように、別個のアプリケーション/トランザクションデータベース1606に各々が対応付けられている顧客/テナントをサポートすることができる。
【0241】
実施の形態によると、データパイプラインは、顧客/テナント(たとえば、顧客A~Cアプリケーション/トランザクションデータベース1606に対応付けられた顧客A~C)ごとに、分析アプリケーションスキーマ1662を、たとえばスタースキーマとして保持する。分析アプリケーションスキーマ1662は、たとえば、HCM(Human Capital Management)アナリティクスまたはERP(Enterprise Resource Planning)アナリティクスなど、特定の分析ユースケースのベストプラクティスに従って、システムによって定期的に(たとえば、毎時/毎日/毎週)更新される。
【0242】
実施の形態によると、データ変換層は、エンタープライズアプリケーションまたは業務アプリケーションから受信した取引データをデータウェアハウスにロードするためのモデルフォーマットに変換するためにシステムが使用するデータモデル(たとえば、ナレッジモデル、KM、またはその他の種類のデータモデル)を含み得る。
【0243】
実施の形態によると、顧客ごとに、システムは、当該システムが保持および更新する分析アプリケーションスキーマを利用して、その顧客のエンタープライズアプリケーション環境、たとえば、1606a内のデータの解析に基づいて顧客のデータウェアハウスインスタンスに予めデータを追加する。
【0244】
実施の形態によると、このように、システムが保持する分析アプリケーションスキーマにより、データパイプラインによって顧客の環境からデータを「ライブ」で検索し、顧客のデータウェアハウスインスタンス1660にロードすることが可能になる。そうでない場合、当該データを顧客が読み取り専用でアクセスできるようにし、顧客は直接変更を加えることはできない。
【0245】
実施の形態によると、分析アプリケーション環境は、環境の顧客ごとに、顧客が容易に内容を変更できる1664などの顧客スキーマを提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。
【0246】
実施の形態によると、分析アプリケーション環境の顧客ごとに、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、HCMアナリティクスまたはERPアナリティクスなど、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。
【0247】
実施の形態によると、たとえば、データウェアハウス(たとえば、Oracle Autonomous Data Warehouse、ADWC)は、デフォルト分析アプリケーションスキーマ(分析ウェアハウススキーマ)を含み、エンタープライズアプリケーションコンポーネントから入手した顧客スキーマを顧客/テナントごとに含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、そのテナントのみがアクセス可能であるが、同時に、様々な機能、たとえば、ETL関連の機能または共有分析アプリケーション環境のその他の機能へのアクセスを可能にする。
【0248】
実施の形態によると、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にする。たとえば、第1顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および第1データウェアハウスインスタンスから構成され得、第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および第2データウェアハウスインスタンスから構成され得る。
【0249】
実施の形態によると、特定の顧客/テナントごとに、そのデータを抽出すると、データパイプラインが、テナントのデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを使用して、たとえばデータステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことによって抽出データの完全性を確保することができる。
【0250】
抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0251】
プロビジョニングコンポーネントを利用して、顧客は、データウェアハウス内の顧客スキーマ1664のプロビジョニングを要求できる。また、顧客は、必須属性(たとえば、ログイン認証情報)およびオプション属性(たとえば、サイズ、速度、またはシートの数)を含む、データウェアハウスに対応付けられた複数の属性をコンソールインターフェースを介して供給し得る。その後、要求されたデータウェアハウス(たとえば、データウェアハウスの顧客スキーマ)をプロビジョニングコンポーネントがプロビジョニングして、顧客が供給する必要な情報を当該ウェアハウスに追加し得る。
【0252】
このようなプロビジョニングは、たとえば、シートの数、およびデータベースサイズならびに計算装置の数を含む、発注に基づき得る。このようなプロビジョニングされたコンポーネントは、システムの各テナントにタグ付けされ得る。
【0253】
実施の形態によると、各データウェアハウスインスタンス1660に対応付けて監視エージェント1680が(たとえば、データウェアハウスまたはコントロールプレーンにおいて)提供され得る。これに加えて、顧客/テナントインスタンスに各々が対応付けられた監視エージェント1683をコントロールプレーンにおいて提供することができる。(実施の形態によると、図内では2つの別個のコンポーネントとして示しているが、監視エージェント1680および1683の各インスタンスは、1つのエンティティであり得、1680と1683との間の通信線は、SaaSとPaaSとの関係の性質を示している)。
【0254】
実施の形態によると、監視エージェント(複数可)は、(たとえば、監視されているメトリクスのタグに基づいて)監視エージェントが対応付けられているテナント/顧客に対応付けられたプロビジョニングされたメトリクスへのアクセスを有し得る。監視エージェント1680、1683は、たとえば、システムの各テナントによってタグ付けされたリソースを監視することによって、データウェアハウスにおけるテナント/顧客によるリソースの使用状況(たとえば、対応付けられたデータウェアハウスインスタンスにおいて顧客/テナントが利用するストレージを監視する)、およびコントロールプレーンにおけるテナント/顧客によるリソースの使用状況(たとえば、アナリティクスにおいて使用するための顧客/テナントによる計算装置の使用状況を監視する)を(たとえば、動的に、設定された構成可能な間隔で、毎時、毎日など)監視する(1682/1685)役割を担い得る。これは、たとえば、顧客の計算装置の使用状況をプロビジョニングされたメトリクスに関連して監視および測ること、または、顧客が使用中であるシートの数をプロビジョニングされたメトリクスに関連して測ることを含み得る。
【0255】
実施の形態によると、監視エージェントは、テナントによるリソース利用を監視および追跡する際に、プロビジョニングされたメトリクス1681/1684(たとえば、顧客/テナントによるプロビジョニングに応答して顧客/テナントにプロビジョニングまたは割り当てられたリソース)を利用することができる。これにより、システム内のリソース割り当てを改善することができる。すなわち、各テナントには、各テナントに対応付けられているとタグ付けされた様々なリソースがプロビジョニングされているので、タグ付け(テナントに割り当てられた各リソースは、当該テナントに属するまた当該テナントに割り当てられていると識別するためにタグ付けされている)されたリソースを追跡することによって、監視エージェントは、テナントごとのリソースの使用状況を特定することができる。これに加えて、監視エージェントは、プロビジョニングされたリソースをテナントが超えたことを示す、または、監視されているメトリクスがテナントに対応付けられている状況から、所与のテナントに追加リソース(たとえば、計算装置)を設定された時間提供すべきであることを示す通知/命令1686をプロビジョニングコンポーネント1611、またはその他のバックエンドシステムに提供することができる。同様に、監視エージェント1680/1683は、顧客/テナントに割り当てられたリソースが多すぎて(プロビジョニングされた以上)利用されていないことを示す命令1688を提供できる。これらのような場合、次に、プロビジョニングコンポーネントは、たとえば、利用の無駄をなくすおよび/またはこのようなリソースを異なるテナント/顧客にプロビジョニングするために、当該リソースを回収することができる。
【0256】
図17は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0257】
より具体的には、
図17は、複数の顧客/テナントをサポートする分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0258】
図17に示すように、コントロールプレーン1702は、たとえば、SaaS環境内で提供されるクラウド製品を制御し、顧客/テナントによって制御されたクライアント(コンピュータ)デバイスによるアクセスを可能にするコンソールインターフェース1710と、プロビジョニングコンポーネント1711とを備え得る。
【0259】
実施の形態によると、たとえば、顧客は、データウェアハウスインスタンスのプロビジョニングを要求し得る。次に、プロビジョニングコンポーネントは、要求されたデータウェアハウスインスタンス(顧客スキーマを含む)をプロビジョニングし、顧客が供給する必要な情報をウェアハウスに追加する。これは、たとえば、PaaSコンポーネントの一部を表し得る。
【0260】
実施の形態によると、たとえば、このプロビジョニングをさらに利用して、たとえば発注に基づいて、プロビジョニング顧客が使用可能な複数のシートおよび複数の演算装置(compute unit)をプロビジョニングすることができる。これは、たとえば、SaaSコンポーネントの一部を表し得る。
【0261】
実施の形態によると、データベースインスタンス、シート、計算装置などを含む、このようにプロビジョニングされたリソースの各々を、システムのテナント(またはサブテナント)ごとにタグ付けすることができる。
【0262】
図17にさらに示すように、データプレーン1704は、データパイプライン(たとえば、ETL(抽出、変換、ロード)プロセス)1720と、データ変換層1734とを備え得る。データパイプライン1720と、データ変換層1734は、顧客エンタープライズアプリケーションまたはトランザクションデータベース環境、たとえば、Oracle Fusion Applications環境から運用データまたは取引データを抽出(ここで、各抽出プロセスは、テナント/顧客ごと、および/または対応付けられているアプリケーションもしくはトランザクションデータベースごとに別々である)(1708)して処理し、データウェアハウスインスタンスにロード(1750)するように連携して動作する。また、データプレーンは、データ/構成ユーザインターフェース1730と、マッピング/構成データベース1732とを備え得る。
【0263】
実施の形態によると、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムは、データウェアハウスF60の複数のインスタンスを介して分析アプリケーション環境1700を各々が共有する複数のテナント/顧客をサポートすることができる。図示したように、別個のアプリケーション/トランザクションデータベース1706に各々が対応付けられている顧客/テナントをサポートすることができる。
【0264】
実施の形態によると、データパイプラインは、顧客/テナント(たとえば、顧客A~Cアプリケーション/トランザクションデータベース1706に対応付けられた顧客A~C)ごとに、分析アプリケーションスキーマ1762を、たとえばスタースキーマとして保持する。分析アプリケーションスキーマ1762は、たとえば、HCM(Human Capital Management)アナリティクスまたはERP(Enterprise Resource Planning)アナリティクスなど、特定の分析ユースケースのベストプラクティスに従って、システムによって定期的に(たとえば、毎時/毎日/毎週)更新される。
【0265】
実施の形態によると、データ変換層は、エンタープライズアプリケーションまたは業務アプリケーションから受信した取引データをデータウェアハウスにロードするためのモデルフォーマットに変換するためにシステムが使用するデータモデル(たとえば、ナレッジモデル、KM、またはその他の種類のデータモデル)を含み得る。
【0266】
実施の形態によると、顧客ごとに、システムは、当該システムが保持および更新する分析アプリケーションスキーマを利用して、その顧客のエンタープライズアプリケーション環境、たとえば、1706a内のデータの解析に基づいて顧客のデータウェアハウスインスタンスに予めデータを追加する。
【0267】
実施の形態によると、このように、システムが保持する分析アプリケーションスキーマにより、データパイプラインによって顧客の環境からデータを「ライブ」で検索し、顧客のデータウェアハウスインスタンス1760にロードすることが可能になる。そうでない場合、当該データを顧客が読み取り専用でアクセスできるようにし、顧客は直接変更を加えることはできない。
【0268】
実施の形態によると、分析アプリケーション環境は、環境の顧客ごとに、顧客が容易に内容を変更できる1764などの顧客スキーマを提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。
【0269】
実施の形態によると、分析アプリケーション環境の顧客ごとに、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、HCMアナリティクスまたはERPアナリティクスなど、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。
【0270】
実施の形態によると、たとえば、データウェアハウス(たとえば、Oracle Autonomous Data Warehouse、ADWC)は、デフォルト分析アプリケーションスキーマ(分析ウェアハウススキーマ)を含み、エンタープライズアプリケーションコンポーネントから入手した顧客スキーマを顧客/テナントごとに含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、そのテナントのみがアクセス可能であるが、同時に、様々な機能、たとえば、ETL関連の機能または共有分析アプリケーション環境のその他の機能へのアクセスを可能にする。
【0271】
実施の形態によると、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にする。たとえば、第1顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および第1データウェアハウスインスタンスから構成され得、第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および第2データウェアハウスインスタンスから構成され得る。
【0272】
実施の形態によると、特定の顧客/テナントごとに、そのデータを抽出すると、データパイプラインが、テナントのデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを使用して、たとえばデータステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことによって抽出データの完全性を確保することができる。
【0273】
抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0274】
プロビジョニングコンポーネントを利用して、顧客は、データウェアハウス内の顧客スキーマ1764のプロビジョニングを要求できる。また、顧客は、必須属性(たとえば、ログイン認証情報)およびオプション属性(たとえば、サイズ、速度、またはシートの数)を含む、データウェアハウスに対応付けられた複数の属性をコンソールインターフェースを介して供給し得る。その後、要求されたデータウェアハウス(たとえば、データウェアハウスの顧客スキーマ)をプロビジョニングコンポーネントがプロビジョニングして、顧客が供給する必要な情報を当該ウェアハウスに追加し得る。
【0275】
このようなプロビジョニングは、たとえば、シートの数、およびデータベースサイズならびに計算装置の数を含む、発注に基づき得る。このようなプロビジョニングされたコンポーネントは、システムの各テナントにタグ付けされ得る。
【0276】
実施の形態によると、複数のデータウェアハウスインスタンス1760を(たとえば、データウェアハウスまたはコントロールプレーンにおいて)サポートする1つの監視エージェント1780が提供され得る。当該1つの監視エージェント1780は、タグベースのリソース1781を監視することによってデータウェアハウスの複数のインスタンスを監視することができる。ここで、タグは、リソースがプロビジョニングされる顧客/テナントを示す。これに加えて、1つの監視エージェント1783をコントロールプレーンにおいて提供することができる。ここで、監視エージェントは、複数の顧客/テナントインスタンスをサポートする。1つの監視エージェント1783は、タグベースのリソース1784を監視することによってデータウェアハウスの複数のインスタンスを監視することができる。ここで、タグは、リソースがプロビジョニングされる顧客/テナントを示す。(実施の形態によると、図内では2つの別個のコンポーネントとして示しているが、監視エージェント1780および1783の各インスタンスは、1つのエンティティであり得、1780と1783との間の通信線は、SaaSとPaaSとの関係の性質を示している)。
【0277】
実施の形態によると、監視エージェント(複数可)は、(たとえば、監視されているメトリクスのタグに基づいて)監視エージェントが対応付けられているテナント/顧客に対応付けられたプロビジョニングされたメトリクスへのアクセスを有し得る。監視エージェント1780、1783は、たとえば、システムの各テナントによってタグ付けされたリソースを監視することによって、データウェアハウスにおけるテナント/顧客によるリソースの使用状況(たとえば、対応付けられたデータウェアハウスインスタンスにおいて顧客/テナントが利用するストレージを監視する)、およびコントロールプレーンにおけるテナント/顧客によるリソースの使用状況(たとえば、アナリティクスにおいて使用するための顧客/テナントによる計算装置の使用状況を監視する)を(たとえば、動的に、設定された構成可能な間隔で、毎時、毎日など)監視する(1782/1785)役割を担い得る。これは、たとえば、顧客の計算装置の使用状況をプロビジョニングされたメトリクスに関連して監視および測ること、または、顧客が使用中であるシートの数をプロビジョニングされたメトリクスに関連して測ることを含み得る。
【0278】
実施の形態によると、監視エージェントは、テナントによるリソース利用を監視および追跡する際に、プロビジョニングされたメトリクス1781/1784(たとえば、顧客/テナントによるプロビジョニングに応答して顧客/テナントにプロビジョニングまたは割り当てられたリソース)を利用することができる。これにより、システム内のリソース割り当てを改善することができる。すなわち、各テナントには、各テナントに対応付けられているとタグ付けされた様々なリソースがプロビジョニングされているので、タグ付け(テナントに割り当てられた各リソースは、当該テナントに属するまた当該テナントに割り当てられていると識別するためにタグ付けされている)されたリソースを追跡することによって、監視エージェントは、テナントごとのリソースの使用状況を特定することができる。これに加えて、監視エージェントは、プロビジョニングされたリソースをテナントが超えたことを示す、または、監視されているメトリクスがテナントに対応付けられている状況から、所与のテナントに追加リソース(たとえば、計算装置)を設定された時間提供すべきであることを示す通知/命令1786をプロビジョニングコンポーネント1711、またはその他のバックエンドシステムに提供することができる。同様に、監視エージェント1780/1783は、顧客/テナントに割り当てられたリソースが多すぎて(プロビジョニングされた以上)利用されていないことを示す命令1788を提供できる。これらのような場合、次に、プロビジョニングコンポーネントは、たとえば、利用の無駄をなくすおよび/またはこのようなリソースを異なるテナント/顧客にプロビジョニングするために、当該リソースを回収することができる。
【0279】
図18は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaS請求モデルのためのシステムを示す図である。
【0280】
より具体的には、
図18は、複数の顧客/テナントをサポートする分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムを示す図である。
【0281】
図18に示すように、コントロールプレーン1802は、たとえば、SaaS環境内で提供されるクラウド製品を制御し、顧客/テナントによって制御されたクライアント(コンピュータ)デバイスによるアクセスを可能にするコンソールインターフェース1810と、プロビジョニングコンポーネント1811とを備え得る。
【0282】
実施の形態によると、たとえば、顧客は、データウェアハウスインスタンスのプロビジョニングを要求し得る。次に、プロビジョニングコンポーネントは、要求されたデータウェアハウスインスタンス(顧客スキーマを含む)をプロビジョニングし、顧客が供給する必要な情報をウェアハウスに追加する。これは、たとえば、PaaSコンポーネントの一部を表し得る。
【0283】
実施の形態によると、たとえば、このプロビジョニングをさらに利用して、たとえば発注に基づいて、プロビジョニング顧客が使用可能な複数のシートおよび複数の演算装置(compute unit)をプロビジョニングすることができる。これは、たとえば、SaaSコンポーネントの一部を表し得る。
【0284】
実施の形態によると、データベースインスタンス、シート、計算装置などを含む、このようにプロビジョニングされたリソースの各々を、システムのテナント(またはサブテナント)ごとにタグ付けすることができる。
【0285】
図18にさらに示すように、データプレーン1804は、データパイプライン(たとえば、ETL(抽出、変換、ロード)プロセス)1820と、データ変換層1834とを備え得る。データパイプライン1820と、データ変換層1834は、顧客エンタープライズアプリケーションまたはトランザクションデータベース環境、たとえば、Oracle Fusion Applications環境から運用データまたは取引データを抽出(ここで、各抽出プロセスは、テナント/顧客ごと、および/または対応付けられているアプリケーションもしくはトランザクションデータベースごとに別々である)(1808)して処理し、データウェアハウスインスタンスにロード(1850)するように連携して動作する。また、データプレーンは、データ/構成ユーザインターフェース1830と、マッピング/構成データベース1832とを備え得る。
【0286】
実施の形態によると、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのためのシステムは、データウェアハウスF60の複数のインスタンスを介して分析アプリケーション環境1800を各々が共有する複数のテナント/顧客をサポートすることができる。図示したように、別個のアプリケーション/トランザクションデータベース1806に各々が対応付けられている顧客/テナントをサポートすることができる。
【0287】
実施の形態によると、データパイプラインは、顧客/テナント(たとえば、顧客A~Cアプリケーション/トランザクションデータベース1806に対応付けられた顧客A~C)ごとに、分析アプリケーションスキーマ1862を、たとえばスタースキーマとして保持する。分析アプリケーションスキーマ1862は、たとえば、HCM(Human Capital Management)アナリティクスまたはERP(Enterprise Resource Planning)アナリティクスなど、特定の分析ユースケースのベストプラクティスに従って、システムによって定期的に(たとえば、毎時/毎日/毎週)更新される。
【0288】
実施の形態によると、データ変換層は、エンタープライズアプリケーションまたは業務アプリケーションから受信した取引データをデータウェアハウスにロードするためのモデルフォーマットに変換するためにシステムが使用するデータモデル(たとえば、ナレッジモデル、KM、またはその他の種類のデータモデル)を含み得る。
【0289】
実施の形態によると、顧客ごとに、システムは、当該システムが保持および更新する分析アプリケーションスキーマを利用して、その顧客のエンタープライズアプリケーション環境、たとえば、1806a内のデータの解析に基づいて顧客のデータウェアハウスインスタンスに予めデータを追加する。
【0290】
実施の形態によると、このように、システムが保持する分析アプリケーションスキーマにより、データパイプラインによって顧客の環境からデータを「ライブ」で検索し、顧客のデータウェアハウスインスタンス1860にロードすることが可能になる。そうでない場合、当該データを顧客が読み取り専用でアクセスできるようにし、顧客は直接変更を加えることはできない。
【0291】
実施の形態によると、分析アプリケーション環境は、環境の顧客ごとに、顧客が容易に内容を変更できる1864などの顧客スキーマを提供する。顧客スキーマにより、顧客は、自身のデータウェアハウスインスタンス内のデータを補ったり利用したりできるようになる。
【0292】
実施の形態によると、分析アプリケーション環境の顧客ごとに、結果として得られるデータウェアハウスインスタンスは、データベースとして動作する。このデータベースのコンテンツの一部は顧客によって制御され、一部は分析アプリケーション環境(システム)に制御されており、HCMアナリティクスまたはERPアナリティクスなど、様々なアナリティクスユースケースに対処するためにエンタープライズアプリケーション環境から検索された適切なデータがデータベースに予め追加されていると思われる場合を含む。
【0293】
実施の形態によると、たとえば、データウェアハウス(たとえば、Oracle Autonomous Data Warehouse、ADWC)は、デフォルト分析アプリケーションスキーマ(分析ウェアハウススキーマ)を含み、エンタープライズアプリケーションコンポーネントから入手した顧客スキーマを顧客/テナントごとに含み得る。データウェアハウステナンシ(たとえば、ADWCテナンシ)においてプロビジョニングされたデータは、そのテナントのみがアクセス可能であるが、同時に、様々な機能、たとえば、ETL関連の機能または共有分析アプリケーション環境のその他の機能へのアクセスを可能にする。
【0294】
実施の形態によると、複数の顧客/テナントをサポートするために、システムは、複数のデータウェアハウスインスタンスの使用を可能にする。たとえば、第1顧客テナンシは、第1データベースインスタンス、第1ステージング領域、および第1データウェアハウスインスタンスから構成され得、第2顧客テナンシは、第2データベースインスタンス、第2ステージング領域、および第2データウェアハウスインスタンスから構成され得る。
【0295】
実施の形態によると、特定の顧客/テナントごとに、そのデータを抽出すると、データパイプラインが、テナントのデータステージング領域に抽出データを挿入することができる。データステージング領域は、抽出データの一時的なステージング領域として機能できる。データ品質コンポーネントおよびデータ保護コンポーネントを使用して、たとえばデータステージング領域に抽出データが一時的に保持されている間にこのデータの検証を行うことによって抽出データの完全性を確保することができる。
【0296】
抽出プロセスが抽出を完了すると、データ変換層を用いて、データウェアハウスの顧客スキーマにロードするために抽出データをモデルフォーマットに変更する変換処理を開始できる。
【0297】
プロビジョニングコンポーネントを利用して、顧客は、データウェアハウス内の顧客スキーマ1864のプロビジョニングを要求できる。また、顧客は、必須属性(たとえば、ログイン認証情報)およびオプション属性(たとえば、サイズ、速度、またはシートの数)を含む、データウェアハウスに対応付けられた複数の属性をコンソールインターフェースを介して供給し得る。その後、要求されたデータウェアハウス(たとえば、データウェアハウスの顧客スキーマ)をプロビジョニングコンポーネントがプロビジョニングして、顧客が供給する必要な情報を当該ウェアハウスに追加し得る。
【0298】
このようなプロビジョニングは、たとえば、シートの数、およびデータベースサイズならびに計算装置の数を含む、発注に基づき得る。このようなプロビジョニングされたコンポーネントは、システムの各テナントにタグ付けされ得る。
【0299】
実施の形態によると、複数のデータウェアハウスインスタンス1860を(たとえば、データウェアハウスまたはコントロールプレーンにおいて)サポートする1つの監視エージェント1880が提供され得る。当該1つの監視エージェント1880は、タグベースのリソース1881を監視することによってデータウェアハウスの複数のインスタンスを監視することができる。ここで、タグは、リソースがプロビジョニングされる顧客/テナントを示す。これに加えて、1つの監視エージェント1883をコントロールプレーンにおいて提供することができる。ここで、監視エージェントは、複数の顧客/テナントインスタンスをサポートする。1つの監視エージェント1883は、タグベースのリソース1884を監視することによってデータウェアハウスの複数のインスタンスを監視することができる。ここで、タグは、リソースがプロビジョニングされる顧客/テナントを示す。(実施の形態によると、図内では2つの別個のコンポーネントとして示しているが、監視エージェント1880および1883の各インスタンスは、1つのエンティティであり得、1880と1883との間の通信線は、SaaSとPaaSとの関係の性質を示している)。
【0300】
実施の形態によると、監視エージェント(複数可)は、(たとえば、監視されているメトリクスのタグに基づいて)監視エージェントが対応付けられているテナント/顧客に対応付けられたプロビジョニングされたメトリクスへのアクセスを有し得る。監視エージェント1880、1883は、たとえば、システムの各テナントによってタグ付けされたリソースを監視することによって、データウェアハウスにおけるテナント/顧客によるリソースの使用状況(たとえば、対応付けられたデータウェアハウスインスタンスにおいて顧客/テナントが利用するストレージを監視する)、およびコントロールプレーンにおけるテナント/顧客によるリソースの使用状況(たとえば、アナリティクスにおいて使用するための顧客/テナントによる計算装置の使用状況を監視する)を(たとえば、動的に、設定された構成可能な間隔で、毎時、毎日など)監視する(1882/1885)役割を担い得る。これは、たとえば、顧客の計算装置の使用状況をプロビジョニングされたメトリクスに関連して監視および測ること、または、顧客が使用中であるシートの数をプロビジョニングされたメトリクスに関連して測ることを含み得る。
【0301】
実施の形態によると、顧客のプロビジョニングは、アナリティクス環境およびデータウェアハウス1860の両方にアクセスするために顧客が欲しいシート/ユーザの数を指定する発注に一部基づき得る。顧客が購入したユーザ/シートの数(加えて、アナリティクスまたはデータウェアハウス用のデータベースサイズの増減、または計算装置の増減など、オプション属性)に基づいて、複数のタグ付けされたプロビジョニングされたメトリクス1881および1884が顧客スキーマに関連して設定され得る。このような最初の発注は、設定料金1891という形で請求モデル1890の一部を形成し得る。この設定料金は、顧客/テナントの最初のサブスクリプションと考えることができる。
【0302】
実施の形態によると、監視エージェント1880および/または1883(いくつかの実施の形態では、これらは1つの論理エンティティとして考えられ得る)は、たとえば、顧客/テナントに追加リソースがプロビジョニングされた場合に、請求システム1890に報告できる。監視エージェントは、請求1890に通知するだけでなく、過剰供給1892という形で、顧客/テナントにプロビジョニングされた追加リソースの量についての情報も加えて提供できる。請求システムは、このような過剰供給を設定料金1891と組み合わせて利用し、監視に基づいてプロビジョニングされた1つ以上の追加のリソースと最初のサブスクリプションとを組み合わせた請求書を自動的に作成できる。
【0303】
実施の形態によると、従来のSaaS(Software as a Service)/PaaS(Platform as a Service)請求システムは、一般に、SaaS/PaaSの最初の購入/ライセンス契約中に顧客/テナントが選択したシート(たとえば、SaaSにいつでもアクセスできるユーザ)の数に基づいて顧客/テナントにSaaS/PaaSの利用に対して金額を請求する。このモデルは、SaaS/PaaSに対してこれまでうまく機能しているが、顧客/テナントが購入済のリソースよりも多くのリソースを求めたり必要としたりする場合、問題が生じる可能性がある。このような状況では、たとえば、顧客/テナントが利用可能な唯一の仕組みは、たとえば、SaaS/PaaSの追加のシートをいくつも購入することである。
【0304】
実施の形態によると、顧客/テナントがSaaS/PaaSアナリティクスデータウェアハウス(たとえば、Oracle(登録商標)のFusion Analytics Warehouse)を発注した場合、顧客/テナント(ここでは、顧客という用語とテナントという用語は、同義で用いられている)のためのデータウェアハウス(たとえば、自律型データウェアハウス)のインスタンスがプロビジョニングされ得る。自律型データウェアハウスのプロビジョニングは、顧客/テナントが購入/ライセンス契約時に選択した基準に基づき得る。たとえば、顧客が出した販売注文は、顧客が購入したシートの数を指定し得る。シート数に基づいて、上述したコントロールプレーンは、データウェアハウスにおいて顧客スキーマをプロビジョニングし得る。プロビジョニングされたデータウェアハウスは、アナリティクスクラウドならびに自律型データウェアハウスの両方についての計算装置(たとえば、OCPU(Oracle(登録商標)Compute Unit))の数、およびデータベースサイズを含む、プロビジョニングされたデータウェアハウスについての複数の項目を指定し得る。たとえば、顧客が20~100個のシートを購入した場合、システムは、アナリティクスクラウドに対して4個の計算装置(たとえば、プロセッサ、またはプロセッサのコアに関連する計算能力の最大限度)をプロビジョニングし、自律型データウェアハウスに対して4個の計算装置をプロビジョニングし、1テラバイトのデータベースをプロビジョニングするであろう。
【0305】
実施の形態によると、本明細書に記載のシステムおよび方法は、単にさらに多くのシートを購入するのではなく、顧客が自身の発注に関連するプロビジョニングされた計算リソースを要求に基づいて調整する方法を提供する。加えて、このオンデマンド調整の請求は、現金払いモデルで行うことができる。この請求モデルは、サブスクリプションベースのモデルを現金払いモデルと組み合わせたモデルである。
【0306】
図19は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaS請求モデルのフローチャートを示す。
【0307】
実施の形態によると、発注/ライセンス契約1900を受信し得る。発注は、シート数1901を指定し得る。シート数1901は、テーブルルックアップに基づいて、顧客のライセンス契約に含まれるリソースの種類および量を示し得る。これらのリソースは、データウェアハウス計算装置、データベースサイズ、およびアナリティクス計算装置を含み得る。
【0308】
実施の形態によると、この情報は、顧客固有の情報とともに、テナンシ管理システム(TAS)1910に渡され得る。TAS1910は、上述したように、プロビジョニングシステムによって構成され得る。TASは、サービスマネージャ1915と通信できる。サービスマネージャ1915は、(たとえば、指定されたシート数およびアナリティクス計算リソース数に基づいて)、アナリティクスのエンタイトルメントを処理することができる。その後、これは、アナリティクスコントロールプレーンに渡され得る。アナリティクスコントロールプレーンは、(たとえば、指定されたシートの数およびアナリティクス計算リソースの数に基づいて)アナリティクス環境をプロビジョニングし得る。このプロビジョニングの一部として、最小限のプロビジョニングされたメトリクス(データベースサイズ、データウェアハウス計算装置)とともに情報がデータウェアハウスコントロールプレーン1920に渡され得る。次に、データウェアハウスコントロールプレーンは、ADWインスタンスを作成し得る。
【0309】
実施の形態によると、上述したように、データウェアハウスは、使用状況を測り、過剰供給を請求システム1930に報告する役割を担う。次に、請求システム1930が、サブスクリプション料金1931およびデータウェアハウスによって報告された過剰供給1932に基づいて請求書を作成する。
【0310】
図20は、実施の形態に係る、分析アプリケーション環境におけるSaaS/PaaSリソースの利用および割り当てのための方法のフローチャートである。
【0311】
実施の形態によると、ステップ2010において、方法は、分析アプリケーション環境を提供し得る。
【0312】
実施の形態によると、ステップ2020において、方法は、サーバから構成されるコントロールプレーンを提供し得る。コントロールプレーンは、さらに、プロビジョニングコンポーネントおよびコンソールインターフェースから構成される。
【0313】
実施の形態によると、ステップ2030において、方法は、データウェアハウスを提供し得る。
【0314】
実施の形態によると、ステップ2040において、方法は、監視エージェントを提供し得る。
【0315】
実施の形態によると、ステップ2050において、方法は、データウェアハウスのインスタンスをテナントに関係してプロビジョニングすることができる。プロビジョニングされたデータウェアハウスのインスタンスは、初期サイズを有する。
【0316】
実施の形態によると、ステップ2060において、データウェアハウスのインスタンスをプロビジョニングすると、方法は、監視エージェントのメトリクスリポジトリにエントリを追加し得る。追加されたエントリは、プロビジョニングされたデータウェアハウスのインスタンスの初期サイズを示す。追加されたエントリは、タグ付けされており、タグは、テナントを示す。
【0317】
実施の形態によると、ステップ2070において、方法は、プロビジョニングされたデータウェアハウスのインスタンスに格納されたデータの量を、監視エージェントによって監視し得る。
【0318】
様々な実施の形態によると、本明細書における教示は、本開示の教示に従ってプログラムされた1つ以上のプロセッサ、メモリ、および/またはコンピュータ読み取り可能な記憶媒体を含む、1つ以上の従来の汎用または専用のデジタルコンピュータ、コンピューティングデバイス、機械、またはマイクロプロセッサによって好都合に実現されてもよい。当業者であるプログラマーは、ソフトウェア技術を身につけた者に明らかなように、本開示の教示に基づいて、適切なソフトウェアコーディングを容易に用意できる。
【0319】
いくつかの実施の形態において、本発明は、指示を格納した非一時的なコンピュータ読み取り可能な記憶媒体(複数のコンピュータ読み取り可能な記憶媒体)であるコンピュータプログラムプロダクトを含む。コンピュータプログラムプロダクトを使用して、本教示のいずれの処理も実行できるようにコンピュータをプログラムすることができる。たとえば、このような記憶媒体は、ハードディスクドライブ、ハードディスク、固定ディスク、またはその他の電気機械式データ記憶装置、フロッピー(登録商標)ディスク、光ディスク、DVD、CD-ROM、マイクロドライブ、および光磁気ディスクを含む任意の種類のディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリデバイス、磁気カードもしくは光カード、ナノシステム、または指示ならびに/もしくはデータを一時的に格納するのに適したその他の種類の記憶媒体もしくはバイスを含み得るが、これらに限定されない。
【0320】
上記の説明は、例示および説明のために提供されている。これは、包括的であったり、開示した厳密な形態に保護範囲を限定したりすることを意図していない。多くの変更および変形が当業者に明らかになるであろう。
【0321】
たとえば、本明細書において提供した例のうちのいくつかでは、たとえば、Oracle Fusion Applications環境などのエンタープライズソフトウェアアプリケーション/データ環境との分析アプリケーション環境の動作、または、たとえば、Oracle Analytics CloudまたはOracle Cloud Infrastructure環境など、SaaS(Software-As-A-Service)またはクラウド環境のコンテキスト内での分析アプリケーション環境の動作を例示したが、様々な実施の形態によると、本明細書に記載のシステムおよび方法は、その他の種類のエンタープライズソフトウェアアプリケーション/データ環境、クラウド環境、クラウドサービス、クラウドコンピューティング、またはその他のコンピューティング環境とともに用いることができる。
【0322】
本教示の原理およびその実際の適用例を最もよく説明するために実施の形態を選んで説明した。これにより、様々な実施の形態、およびこれらに加えて考えられる特定の用途に適した様々な変更例を当業者が理解することが可能になる。本開示の範囲は、添付の特許請求の範囲およびその均等物によって示される。
【国際調査報告】