JP7454643B2 - 多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法 - Google Patents

多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法 Download PDF

Info

Publication number
JP7454643B2
JP7454643B2 JP2022206971A JP2022206971A JP7454643B2 JP 7454643 B2 JP7454643 B2 JP 7454643B2 JP 2022206971 A JP2022206971 A JP 2022206971A JP 2022206971 A JP2022206971 A JP 2022206971A JP 7454643 B2 JP7454643 B2 JP 7454643B2
Authority
JP
Japan
Prior art keywords
data
multidimensional database
real
time data
source
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022206971A
Other languages
English (en)
Other versions
JP2023040076A (ja
Inventor
ラマイヤー,クマール
ベルヤエフ,ビクター
ロイトマン,アレクセイ
ライヒマン,ナターシャ
Original Assignee
オラクル・インターナショナル・コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2023040076A publication Critical patent/JP2023040076A/ja
Application granted granted Critical
Publication of JP7454643B2 publication Critical patent/JP7454643B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

著作権表示
この特許文献の開示の一部は、著作権保護の対象となる題材を含んでいる。著作権保有者は、この特許文献または特許開示が特許商標庁の包袋または記録に掲載されているため、この特許文献または特許開示を誰でも複写複製できることに対して異議はないが、その他の点では全ての如何なる著作権をも保有する。
優先権の主張:
本願は、2019年4月3日に出願された出願番号第16/374,402号である「多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法(SYSTEM AND METHOD FOR REAL TIME DATA AGGREGATION IN A VIRTUAL CUBE IN A MULTIDIMENSIONAL DATABASE ENVIRONMENT)」と題される米国特許出願、および
、2018年7月19日に出願された出願番号第62/700,762号である「多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法(SYSTEM AND METHOD FOR REAL TIME DATA AGGREGATION IN A VIRTUAL CUBE IN A MULTIDIMENSIONAL DATABASE ENVIRONMENT)」と題される米国仮特許出願に対する優先
権を主張し、これらの出願は引用によって本明細書に援用される。
発明の分野:
本発明の実施形態は、一般にデータベースおよびデータウェアハウジングに関し、特に多次元データベース環境における根本原因分析および重要なメトリクスの自動生成のためのシステムおよび方法に関する。
背景:
多次元データベースコンピューティング環境は、企業が重要なビジネス情報を適切な人々に必要なときに届けることを可能にし、複数の既存のデータソースからのデータを活用および統合し、フィルタリングされた情報をエンドユーザコミュニティに、それらのユーザのニーズに最も適合する形式で配信する能力を含む。ユーザは、リアルタイムで、なじみのあるビジネス次元に沿ってデータと対話して利用することができ、思考スピードアナリティクスが可能になる。これらは、本発明の実施形態を使用することができるタイプの環境のいくつかの例である。
概要:
ある実施形態に従うと、ある実施形態に係る多次元データベースにおける仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法が本明細書に記載されている。方法は、1つまたは複数のマイクロプロセッサを含むコンピュータにおいて、上記コンピュータ上で実行される多次元データベースサーバを提供することができ、上記多次元データベースサーバは、少なくとも1つの多次元キューブをサポートし、上記方法はさらに、1つまたは複数のマイクロプロセッサを含むコンピュータにおいて、上記多次元キューブに関連付けられたデータソースを提供することができる。上記方法は、上記多次元キューブによって、上記データソースに対してクエリを行うことができ、上記クエリは、上記データソースにアクセス可能なリアルタイムデータの少なくとも1つのソースの識別情報を備える。上記方法は、上記データソースによって、上記多次元キューブへのオンデマンド
アクセスを上記リアルタイムデータの少なくとも1つのソースに提供することができる。上記方法は、上記多次元キューブ内の上記リアルタイムデータの少なくとも1つのソースからの対象データを、内部に格納することなく使用することができる。
ある実施形態に係る、多次元データベース環境の一例を示す図である。 ある実施形態に係る、例示的な多次元データベース環境を示す図である。 ある実施形態に係る、動的計算のための例示的な実施形態を示す図である。 ある実施形態に係る、多次元データベース環境における外部データに対する動的計算を示す図である。 ある実施形態に係る、多次元データベース環境における外部データに対する動的計算を示す図である。 ある実施形態に係る、動的計算連続体を示す図である。 ある実施形態に係る、仮想キューブでのリアルタイムデータ集約のためのシステムを示す図である。 ある実施形態に係る、仮想キューブでのリアルタイムデータ集約のためのシステムを示す図である。 多次元データベースにおける仮想キューブでのリアルタイムデータ集約のための方法のフローチャートである。
詳細な説明:
上記は、他の特徴とともに、同封の明細書、特許請求の範囲および図面を参照すると明らかになるであろう。具体的詳細は、さまざまな実施形態を理解できるようにするために記載されている。しかし、これらの具体的詳細がなくてもさまざまな実施形態を実施できることは明らかであろう。同封の明細書および図面は、限定的であるよう意図されてはいない。
多次元データベース環境は、その一例がOracle Essbaseを含んでいるのだが、この多次元データベース環境を使用して、場合によっては複数のデータソースからの大量のデータを統合して、フィルタリングされた情報をエンドユーザに、それらのユーザの特定の要求に応えるような態様で配信することができる。
図1は、ある実施形態に係る、多次元データベース環境100の一例を示す図である。
図1に示されるように、ある実施形態に従うと、データベース層として動作する多次元データベース環境は、1つまたは複数の多次元データベースサーバシステム102を含み得て、1つまたは複数の多次元データベースサーバシステム102の各々は、物理コンピュータリソースまたはコンポーネント104(たとえば、マイクロプロセッサ/CPU、物理メモリ、ネットワークコンポーネント)と、オペレーティングシステム106と、1つまたは複数の多次元データベースサーバ110(たとえば、Essbaseサーバ)とを含み得る。
ある実施形態に従うと、中間層120は、たとえばプロバイダサービス122(たとえば、ハイペリオンプロバイダサービス)、管理サービス124(たとえば、Essbase管理サービス)またはスタジオ/統合サービス126(たとえば、Essbaseスタジオ/Essbase統合サービス)などの1つまたは複数のサービスを含み得る。中間層は、多次元データベース環境とともに使用するために、ODBC/JDBC127,128または他のタイプのインターフェイスを介して、メタデータカタログ129および/または1つまたは複数のデータソース130(たとえば、リレーショナルデータベース)へのアクセスを提供することができる。
ある実施形態に従うと、1つまたは複数のデータソースは、多次元データベースの提供に使用するために、ODBC/JDBC132または他のタイプのインターフェイスを介して、1つまたは複数の多次元データベースサーバによってアクセス可能でもある。
ある実施形態に従うと、クライアント層140は、多次元データベース(たとえば、スマートビュー、スプレッドシートアドイン、スマートサーチ、管理サービス、MaxL、XMLA、CAPIまたはVB APIアプリケーション、オラクル・ビジネス・インテリジェンス・エンタープライズ・エディション・プラス、または他のタイプの多次元データベースクライアントなど)へのアクセスを可能にする1つまたは複数の多次元データベースクライアント142(たとえば、Essbaseサーバクライアント)を含み得る。クライアント層は、たとえば管理サービスコンソール144またはスタジオ/統合サービスコンソール146などの、中間層におけるサービスとともに使用するためのコンソールも含み得る。
ある実施形態に従うと、クライアント層と中間層とデータベース層との間の通信は、TCP/IP、HTTPまたは他のタイプのネットワーク通信プロトコルのうちの1つ以上によって提供することができる。
ある実施形態に従うと、多次元データベースサーバは、1つまたは複数のデータソースからのデータを統合して、多次元データベース、データ構造またはキューブ150を提供することができ、次いで、多次元データベース、データ構造またはキューブ150にアクセスして、フィルタリングされた情報をエンドユーザに提供することができる。
一般に、多次元データベースにおける各データ値は、キューブの1つのセルに格納され、特定のデータ値は、その座標をキューブの次元に沿って指定することによって参照可能である。1つの次元からのメンバの、1つまたは複数の他の次元の各々からのメンバとの交点がデータ値を表す。
たとえば、売上げ志向型ビジネスアプリケーションで使用され得るキューブ162を示す図1に示されるように、クエリが「売上高」を示す場合、システムは、このクエリを、全ての「売上高」データ値を含むデータベース内のデータ値164のスライスまたは層として解釈することができ、「売上高」は、「実際」および「予算」と交差している。多次元データベースにおける特定のデータ値166を参照するために、クエリは、たとえば「売上高、実際、1月」を指定することによって各次元上のメンバを指定することができる。データベースをさまざまにスライスすることによって、データのさまざまな観点が提供される。たとえば、「2月」のデータ値のスライス168は、時間/年次元が「2月」に固定されたそれらのデータ値の全てを検討する。
データベースアウトライン
ある実施形態に従うと、多次元データベースの開発は、データベースアウトラインの作成から始まり、このデータベースアウトラインは、データベース内のメンバ間の構造的関係を定義し、データベース内のデータを編成し、連結および数学的関係を定義する。データベースアウトラインの階層木またはデータ構造内に、各次元は、1つまたは複数のメンバを備え、これらの1つまたは複数のメンバは、他のメンバをさらに備えていてもよい。次元の仕様は、その個々のメンバの値をどのように連結するかをシステムに指示する。連結は、木のブランチの中の一群のメンバである。
次元およびメンバ
ある実施形態に従うと、次元は、データベースアウトラインにおける最も高い連結レベ
ルを表す。部門機能(たとえば、時間、勘定、製品ライン、市場、事業部)に関連するビジネスプランの構成要素を表すために標準次元が選択されてもよい。標準次元に関連付けられる属性次元は、ユーザがメンバ属性または特徴に基づいて標準次元のメンバをグループ化して分析することを可能にする。メンバ(たとえば、製品A、製品B、製品C)は、次元の個々の構成要素である。
次元およびメンバ関係
ある実施形態に従うと、多次元データベースは、家族に関する用語(親、子、兄弟、子孫および先祖)および階層に関する用語(世代およびレベル、ルートおよびリーフ)を使用して、データベースアウトライン内のメンバの役割および関係を説明する。
ある実施形態に従うと、親は、その下にブランチを有するメンバである。たとえば、「利幅」は、「売上高」および「売上原価」(COGS)の親であってもよい。子は、その上に親を有するメンバである。上記の例では、「売上高」および「売上原価」が、親である「利幅」の子である。兄弟は、同一世代内の同一の直接の親の子である。
ある実施形態に従うと、子孫は、親の下のブランチの中のメンバである。たとえば、「利益」、「在庫」および「比率」は、尺度の子孫であってもよく、この場合、「利益」、「在庫」および「比率」の子も尺度の子孫である。先祖は、メンバの上のブランチの中のメンバである。上記の例では、「利幅」、「利益」および尺度が「売上高」の先祖であってもよい。
ある実施形態に従うと、ルートは、ブランチの中の最上位のメンバである。たとえば、尺度は、「利益」、「在庫」および「比率」のルートであってもよく、したがって、「利益」、「在庫」および「比率」の子のルートであってもよい。リーフ(レベル0)メンバは、子を持たない。たとえば、期首「在庫」、追加および期末「在庫」がリーフメンバであってもよい。
ある実施形態に従うと、世代とは、次元内の連結レベルのことをいう。木のルートブランチは、「世代1」であると考えられ、世代番号は、ルートからリーフメンバに向かって大きくなっていく。レベルとは、次元内のブランチのことをいい、世代で使用された番号順序とは逆に番号付けられ、レベル番号は、リーフメンバからそのルートに向かって小さくなっていく。
ある実施形態に従うと、ユーザは、世代またはレベルに名前を割り当てて、その名前をその世代またはレベル内の全てのメンバの省略表現として使用することができる。
疎および密な次元
多次元データベース内のデータセットは、多くの場合、2つの特徴を共有する。すなわち、データがスムーズかつ均一に配信されないこと、および、メンバの組み合わせの大部分についてはデータが存在しないことである。
ある実施形態に従うと、これに対処するために、システムは、2つのタイプの標準次元、すなわち疎な次元および密な次元を認識することができる。疎な次元は、利用可能なデータ位置が埋められる割合が比較的低い次元であり、密な次元は、次元のあらゆる組み合わせにおいて1つまたは複数のセルが占められる確率が比較的高い次元である。多くの多次元データベースは、メンバの組み合わせの大部分についてデータ値を欠いているという点において、元来疎である。
データブロックおよびインデックスシステム
ある実施形態に従うと、多次元データベースは、データブロックおよびインデックスを使用して、データを格納してデータにアクセスする。このシステムは、疎な標準次元のメンバの固有の各組み合わせについて多次元アレイまたはデータブロックを作成することができ、各データブロックは、その疎な次元のメンバの組み合わせのための密な次元のメンバを表す。各データブロックについてインデックスが作成され、このインデックスは、疎な標準次元のメンバの組み合わせを表し、少なくとも1つのデータ値が存在する疎な標準次元のメンバの固有の各組み合わせについて入力またはポインタを含む。
ある実施形態に従うと、多次元データベースサーバは、データ値を検索する際、インデックスによって提供されるポインタを使用して、適切なデータブロックを突き止め、そのデータブロック内でデータ値を含むセルを突き止めることができる。
管理サービス
ある実施形態に従うと、管理サービス(たとえば、Essbase管理サービス)は、ユーザがサーバ、アプリケーションおよびデータベースを設計、開発、維持および管理することを可能にする単一アクセスポイントを提供する。
スタジオ
ある実施形態に従うと、スタジオ(たとえば、Essbaseスタジオ)は、データモデル化、キューブ設計および分析アプリケーション構築に関連するタスクを実行するためのウィザード方式のユーザインターフェイスを提供する。
スプレッドシートアドイン
ある実施形態に従うと、スプレッドシートアドインは、多次元データベースをスプレッドシートと統合して、接続、ピボット、ドリルダウンおよび計算などの高度なコマンドをサポートする。
統合サービス
ある実施形態に従うと、統合サービス(たとえば、Essbase統合サービス)は、多次元データベースに格納されたデータとリレーショナルデータベースに格納されたデータとの間の統合に使用するためのメタデータ方式の環境を提供する。
プロバイダサービス
ある実施形態に従うと、プロバイダサービス(たとえば、ハイペリオンプロバイダサービス)は、Java(登録商標)API、スマートビューおよびXMLAクライアントのためのデータソースプロバイダとして動作する。
スマートビュー
ある実施形態に従うと、スマートビューは、たとえばハイペリオン・フィナンシャル・マネジメント(Hyperion Financial Management)、ハイペリオン・プランニング(Hyperion Planning)およびハイペリオン・エンタープライズ・パフォーマンス・マネジメント・ワークスペース(Hyperion Enterprise Performance Management Workspace)データのための共通のインターフェイスを提供する。
開発者製品
ある実施形態に従うと、開発者製品は、カスタマイズされた企業分析アプリケーションの迅速な作成、管理およびデプロイを可能にする。
ライフサイクル管理
ある実施形態に従うと、ライフサイクル管理(たとえば、ハイペリオン・エンタープラ
イズ・パフォーマンス・マネジメント・システム・ライフサイクル・マネジメント(Hyperion Enterprise Performance Management System Lifecycle Management))は、企業パフォーマンス管理製品がアプリケーション、リポジトリまたは個々の人工物を製品環境全体にわたって移動させることを可能にするための手段を提供する。
OLAP
ある実施形態に従うと、オンライン分析処理(OLAP)は、ユーザが企業データを分析することを可能にする環境を提供する。たとえば、財務部門は、予算編成、活動基準原価計算、財務成績分析および財務モデリングなどのアプリケーションにOLAPを使用して、「ジャストインタイム」の情報を提供することができる。
ある実施形態に従うと、OLAPシステムは、複数の次元においてデータを編成することができ、データセットの検索者/ユーザがさまざまな次元を横断する有向検索を行って最終的に対象の結果に到達することを可能にする。OLAPシステムは、データを次元の交点にあるものと見なすことができる。言い換えれば、OLAPシステムの根底にあるデータは、全ての次元のクロス積の具体例である多次元データベースとして編成されて格納されることができる。これにより、ユーザ/検索者は、アドホックな態様で対象の次元に沿って詳細の階層を横断して、特定の対象データに到達することができる。緩やかに変化するデータは、現在のデータセット内のメタデータとして表すことができる。
仮想キューブでのリアルタイムデータ集約
ある実施形態に従うと、従来のシステムでは、多次元データベースキューブの利点のうちの1つは、基になる全てのデータ(たとえば、ソースデータ)が多次元データベースにロードされるというものであった。これにより、多次元データベースが各々の要求された分析についてデータを取り出さなくてもよいので分析の高速化が可能になり、また、データが多次元データベースの箇所でロードされるので計算が高速化された。しかし、ビッグデータの傾向が続いているので、全てのソースデータを多次元データベースにロードすることが厄介になり、状況によっては、パフォーマンスの低下につながる場合もある。リアルタイムデータ集約をサポートすることによって、多次元データベースは、全てが同一のリレーショナルデータベース(たとえば、ソースデータ)を参照する(分散された)複数のキューブを有することができる能力を有する。ロードされたソースからデータを取り出す代わりに、多次元データベースは、ソースデータ位置または複数のソースデータ位置を照会して、リアルタイムでデータを集約することができる。
図2は、ある実施形態に係る、例示的な多次元データベース環境を示す図である。
ある実施形態に従うと、多次元データベースサーバ200内には1つまたは複数のデータベースキューブ210があり得る。これらのキューブの各々から、1つまたは複数のパーティション211を生成することができる。パーティションを使用して、複数のキューブにわたるデータへのユーザ220のアクセスを簡略化することができる。パーティションは、ユーザおよび管理者が、複製パーティション化スキーム、透過性パーティション化スキームまたはリンクパーティション化スキームを使用して、分析のためにデータおよびメタデータの特定のサブセットを選択することを可能にする。
ある実施形態に従うと、キューブ210には、別のキューブ202、データベース203、データ204(たとえば、カンマ区切り可変シートの形態)および/またはスプレッドシート205などの、いくつかの外部データソースからのデータを格納することができる。(特定の外部データソースのみが図に示されているが、さらなるおよびさまざまな他のデータソースにアクセスして、キューブ210にロードすることができるということを当業者は認識するであろう。)しかし、従来のシステムでは、全ての外部データは、別のキューブ202からのものであろうと、データベース203からのものであろうと、CS
Vファイル204からのものであろうと、スプレッドシート205からのものであろうと、まずキューブ210にロードされなければならない。
ある実施形態に従うと、ソースデータが比較的小さい従来のシステムでは、多次元データベースサーバへのソースデータのロードは、これがデータ集約も計算も可能にするので、多次元データベース環境の強みであると考えることができる。計算および集約は、多次元データベース環境内にあるデータに対して行われる。このデータは、それ自体のリポジトリにおいてロードされ、集約され、計算される。
図3は、ある実施形態に係る、動的計算のための例示的な実施形態を示す図である。
ある実施形態に従うと、図3は、多次元データベース環境を利用した場合に得られるさらなる利点を示している。これは、動的計算と集約とを混成させるという考え方である。
ある実施形態に従うと、動的計算300は、いくつかのロードされた値を備え、データベースのサイズを小さくすることができる。動的計算において、ロードされた値A 301,B 302,C 303,D 304およびE 305(外部ソース320(または、2つ以上の外部ソース)から、動的計算300をホストしている多次元データベースにロードされる)をリアルタイムで動的計算に使用することができる。これは、ロードされて格納された値の上でメトリクスを計算することができるリアルタイムの能力をユーザに提供する。これらのメトリクスは、たとえばF 306,G 307,H 308,I 309およびJ 310を備え得る。しかし、計算は、格納された値(すなわち、既に外部ソースからロードされてキューブに格納された値)の上で行われる。さらに、これらのメトリクスは、多次元データベース内に格納することができ、多次元データベースのフットプリントをさらに増加させる。
ある実施形態に従うと、次いで、動的計算300に示されるような依存関係分析に基づいて、キューブにロードされたデータのサイズを小さくすることができる。このように、キューブにロードされるかまたはユーザによって供給される必要があるデータ次元の数が少なくなるので、キューブ内に格納されるデータが少なくなる。
ある実施形態に従うと、ロードされた値に対する動的計算は、データベースのサイズを小さくすることができる。また、それは、ロードされて格納された値の上でメトリクスを計算することができるリアルタイムの能力を提供する。しかし、多次元データベースにロードされて格納された値(たとえば、リーフ値)の上で計算が行われるので、データベースの全体サイズは依然としてかなり大きいであろう。なぜなら、外部ソースからの全ての値がロードされて格納され、これらの値の上で動的計算が実行される(しかし、それら自体は格納されない)からである。
図4は、ある実施形態に係る、多次元データベース環境における外部データに対する動的計算を示す図である。
ある実施形態に従うと、動的計算400は、図3に示されるような格納された値に依拠する代わりに、(SQLデータベースインターフェイスなどのデータベースインターフェイスを介して)外部ソース420(または、他の記憶場所タイプ)に及ぶことができ、外部ソース420には、値A 401,B 402,C 403,D 404およびE 405が位置しており、オンデマンドで(動的に)それらが引っ張り出される。このようなフェッチ動作は、たとえば動的計算メトリクスが実行される場合に起こり得る。たとえば、メトリクスF 406の実行が望まれるまたは呼び出される場合、システムおよび方法は、外部ソース420から値A 401およびB 402をオンデマンドでフェッチすることができ、次いでこれらの値A 401およびB 402をメトリクスFの判断に使用
し、このメトリクスFを動的計算400内で使用することができる。しかし、AおよびBの値は、格納されず、その代わりに使用後に廃棄されるため、多次元データベースサーバ環境において動的計算が利用するストレージフットプリントを最小化する。
ある実施形態に従うと、外部ソース420から引っ張り出される値は、ユーザクエリまたはキューブ(動的計算の位置)からのクエリに基づいて判断される。このように、要求された/対象のデータのみがアクセスされ、当該外部ソースにあり得る他のデータは、そのソースにおけるそのデータに依拠する呼び出しまたは要求がなされるまで無視される(たとえば、ロードされない)。
ある実施形態に従うと、このようにして、キューブ内の全ての値が動的に計算されて、全てのデータがデータソースから直接引っ張り出される場合、キューブはゼロフットプリントを有する。すなわち、全てのデータは、リアルタイムでテーブルから直接やって来て、いかなる動的計算も、ロードおよび格納されないこれらの値の上で行われる。このようなシステムおよび方法は、ゼロフットプリントを有する(値がロードおよび格納されない)ことに加えて、高可用性ならびにゼロダウンタイムバックアップおよびパッチングのメリットも提供する。
ある実施形態に従うと、値が外部ソースからフェッチされる場合、これらの値は、多次元データベースサーバにおいて格納またはキャッシュされない。その代わりに、これらの値は、キューブにおいて直接(たとえば、動的計算に)使用される。
他の実施形態に従うと、システムおよび方法は、外部ソースからフェッチされた値のキャッシングをサポートすることができる。これは、たとえば一定の時間間隔で行うことができる。このような状況では、一例として、リアルタイムでフェッチされたデータは、多次元データベース環境においてキャッシュされたデータに、構成された時間間隔で保存/上書きされることができる。これは、たとえばキャッシュされたバックアップを有することが望ましい場合または履歴傾向を見ることが望ましい場合に行うことができる。このような状況では、依然として、多次元データベースキューブがゼロフットプリントを有していると言うことができる。なぜなら、多次元データベースキューブがクラッシュするかまたは壊れた場合に、全てのキャッシュされたデータをパージすることができ、新たな多次元データベースキューブは、以前の多次元データベースキューブを参照することなく新たなキャッシュを開始させるように構成され得るからである。
図5は、ある実施形態に係る、多次元データベース環境における外部データに対する動的計算を示す図である。
ある実施形態に従うと、動的計算500は、図3に示されるような格納された値のみに依拠する代わりに、および外部ソース520からの値のフェッチのみに依拠する代わりに、ハイブリッドアプローチを利用することができ、このハイブリッドアプローチでは、値C 503およびE 505などの頻繁に使用される値はロードされる一方、A 501,B 502およびD 504などのそれほど頻繁に使用されない他の値は、外部ソースにとどまって、外部ソース520(または、他の記憶場所タイプ)におけるフェッチ動作を介して(たとえば、SQLデータベースインターフェイスなどのデータベースインターフェイスを介して)到達される。このハイブリッドアプローチにより、特定の値をロードする一方で他の値をオンデマンドで(動的に)外部ソースから引っ張り出すことができる。このようなフェッチ動作は、たとえば動的計算メトリクスが実行される場合に起こり得る。たとえば、メトリクスG 507の実行が望まれるまたは呼び出される場合、システムおよび方法は、外部ソースから値D 504をオンデマンドでフェッチして、ローカルストレージからの値E 505をメトリクスGの判断に使用されるように利用することが
でき、このメトリクスGを動的計算500内で使用することができる。しかし、Dの値は、格納されず、その代わりに使用後に廃棄されるため、多次元データベースサーバ環境において動的計算が利用するストレージフットプリントを減少させる。
ある実施形態に従うと、外部ソース520から引っ張り出される値は、ユーザクエリまたはキューブ(動的算出の位置)からのクエリに基づいて判断される。このように、要求された/対象のデータのみがアクセスされ、当該外部ソースにあり得る他のデータは、そのソースにおけるそのデータに依拠する呼び出しまたは要求がなされるまで無視される(たとえば、ロードされない)。
ある実施形態に従うと、このようにして、キューブ内の全ての値が動的に計算され、いくつかの値は格納され、いくつかはデータソースから直接引っ張り出される場合、キューブは、全てのデータが格納されていた場合よりも小さいフットプリントを有する。また、どの値がロードされて格納されるかおよびどの値がソースに保持されているだけであるかをアクティブにおよび自動的に選択することによって、多次元データベースのパフォーマンスを向上させることができ、これは、ロードおよび格納されないそれらの値のサイズを小さくし、またロードされて格納されたそれらの値について同一のパフォーマンスレベルを保持することによって可能である。
図6は、ある実施形態に係る、動的計算連続体を示す図である。
ある実施形態に従うと、動的計算連続体600内では、一方の側(左側)に、全てのデータが多次元データベースキューブ内にロードされて格納されるキューブが存在する。これは、データが比較的小さく、頻繁な変更または更新を受けない(たとえば、ユーザが1日1回それらのデータをリフレッシュする必要がある)場合に望ましい。連続体の他方の側(右端側)には、全てのデータが外部からロードされたリーフデータであるキューブが存在する。これらの状況は、大量のリーフデータがある組織において、またはソースデータが1日に複数回変化するかまたは絶えずリフレッシュされる場合(たとえば、ユーザが通貨データなどの動的に変更されるデータの影響を見る必要がある場合)に望ましい。
ある実施形態に従うと、全てのデータが外部からロードされる場合には、多次元データベースキューブは、ディザスタリカバリについて心配しなくてもよい。キューブがクラッシュして全ての動的計算を失っても、外部データソースは影響を受けず、キューブは、外部データソースから引っ張り出された値で再開することができる。
ある実施形態に従うと、これら2つの極端な場合の組み合わせが存在する。たとえば、ユーザは、構成可能な期間ごとに、キューブが外部ソースからデータに到達して引っ張り出して、このデータをキャッシュすることを要求することができる。しかし、データはキャッシュされる(および、使用後に捨てられる)ため、値が格納されないので、データキューブのフットプリントは依然として最小化される。
図7は、ある実施形態に係る、仮想キューブでのリアルタイムデータ集約のためのシステムを示す図である。
ある実施形態に従うと、多次元データベースサーバ707(たとえば、Essbaseサーバ)。多次元データベースサーバ707は、ドリルスルー703、データおよび次元ロード704、セキュリティフィルタ705およびパーティション706などのいくつかのサービスを提供する。このようなサービスは、データソース702に対して提供されることができ、データソース702は、接続701に基づく/接続701の上にデプロイされた抽象テーブル表現であり得る。
ある実施形態に従うと、たとえば、接続701は、外部データソース(たとえば、CSVファイル710、データベース711(たとえば、クラウドもしくはオンプレミス)、ビジネスインテリジェンスもしくはデータ視覚化ソース712、別の多次元データベースキューブ713(たとえば、Essbase)、SQLデータベース714、HIVE715、または他のデータベース(SQLサーバ、DB2、Teradataなど)716)に合わせて定義されることができる。この接続は、たとえば、Essbase接続、ファイル接続、JDBC接続、物理的接続、または、選択された外部データソースと連携して通信することができる他の任意のタイプの接続を備え得る。この接続の上にデータソース702を定義することができる。このデータソースは、たとえば、選択された外部データソースに基づくデータ構造を備え得る。たとえば、エクセルシートが、選択された外部データソースである場合、ファイル接続の上に、データソースは、エクセルシートのいくつかの列、行、タブおよびパラメータを備えるデータ構造を定義することができる。そして、これは、多次元データベースサーバがこれらのサービスを介して作用し得るデータソースを定義する。同様に、1つの接続に対して複数のデータソースを定義することもできる。
ある実施形態に従うと、多次元データベースサーバは、次いで、たとえばデータソースに対してパーティションサービスを利用することができ、パーティションサービスは、上記のように、ユーザおよび管理者が、複製パーティション化スキーム、透過性パーティション化スキームまたはリンクパーティション化スキームを使用して、分析のためにデータおよびメタデータの特定のサブセットをデータソースから選択することを可能にし得る。
ある実施形態に従うと、多次元データベースサーバは、たとえばデータ次元およびロードサービスを利用して、選択されたデータを多次元データベースサーバにロードすることもできる(たとえば、上記の図3に図示)。
ある実施形態に従うと、多次元データベースサーバは、たとえばドリルスルーサービスを利用して、多次元データベースサーバのフットプリントを最小化するように、選択されたデータをリアルタイムで動的にフェッチすることもできる(たとえば、上記の図4に図示)。
ある実施形態に従うと、多次元データベースサーバは、複数のサービスを互いに連携して利用することもできる。たとえば、多次元データベースサーバは、1つのデータソースに対してパーティションサービスならびにデータ次元およびロードサービスおよびドリルスルーサービスを利用することができる。これにより、たとえば一部のデータをロードして格納し、他のデータを動的にフェッチすることができ、それらのデータについてのみ、構成されたパーティションに次元を適用可能である。
ある実施形態に従うと、接続は、任意の数の外部データソース(CSVファイル710、データベース711(たとえば、クラウドもしくはオンプレミス)、ビジネスインテリジェンスもしくはデータ視覚化ソース712、別の多次元データベースキューブ713(たとえば、Essbase)、SQLデータベース714、HIVE715、または他のデータベース(SQLサーバ、DB2、Teradataなど)716など)であり得る。
ある実施形態に従うと、このようにして、これは、キューブ707が接続に対して直接的にデータソースをドリルスルーすることを可能にし、これは、任意の数のデータリポジトリであり得る。次いで、要求された/対象のデータをリアルタイムでキューブ707に引き込むことができ、次いで、キューブ707は、リアルタイムデータをキューブ707内に格納することなく、データを動的計算に使用することができる。
ビッグデータの上の仮想キューブでのリアルタイムデータ集約
ある実施形態に従うと、ますます多くの外部データが「ビッグデータ」(たとえば、ペタバイトの情報)の文脈においてコンパイルされている。ビッグデータクラスタの上の仮想キューブでリアルタイムデータ集約を行うために、ソース集約エージェントがビッグデータクラスタ内にデプロイされることができる。次いで、ビッグデータクラスタ内のそれらの集約クライアントについて、リアルタイムのパーティション化された多次元データベースキューブを開始することができる(たとえば、集約エージェント当たり1つのキューブ、複数の集約クライアントのための1つのキューブ、または1つの集約クライアントのための複数のキューブであり、全てシステムの要件に依存する)。
ある実施形態に従うと、次いで、リアルタイムのパーティション化された多次元データベースキューブの上に透過性パーティションが存在し得る。これにより、クエリを分散させることによるスケーリング、ソース集約、動的計算、およびソースデータへのリアルタイムアクセスが可能になる(すなわち、ソースデータをロードおよび格納しない)。
図8は、ある実施形態に係る、仮想キューブでのリアルタイムデータ集約のためのシステムを示す図である。
ある実施形態に従うと、ソース集約エージェント(図示せず)は、ビッグデータクラスタ820内にデプロイされることができる。ソース集約クライアントは、たとえばソースデータのサイズを(たとえば、ペタバイトからテラバイトまたはギガバイトに)指数関数的に小さくすることができる。集約されたビッグデータの上での集約のためのリアルタイムのパーティション化された多次元キューブ810,811,812,813は、集約エージェントを有するソースデータよりも上のレベルに位置することができ、各々のリアルタイムのパーティション化された多次元キューブは、データのサイズをさらに減少させ、各キューブは、ビッグデータソースまたはソース集約エージェントのうちの1つまたは複数のソース集約エージェントのいずれかからデータを動的にフェッチすることを担当する。1つまたは複数の透過性パーティション800は、リアルタイムキューブ810,811,812,813の上に位置することができる。このように、システムおよび方法は、クエリを分散させることによるスケーリング、ソース集約、動的計算、およびソースデータへのリアルタイムアクセスを実現することができる。
ある実施形態に従うと、ソース集約エージェントを有するデータレイクは、ビッグデータセットのサイズを非常に小さくすることができる。そして、リアルタイムのパーティション化された多次元データベースキューブ810,811,812および813は、集約されたデータの上に位置し、(上記のように)リアルタイムでデータにアクセスし、データをより管理可能なサイズにさらに小さくすることができる。これらのパーティション化された多次元データベースキューブの各々は、地理的属性などの1つまたは複数の属性に関連付けられることができる。たとえば、アグリゲータを有するビッグデータセットが世界各地からのデータを備え得る場合、各キューブ810,811,812,813は、たとえば、その割り当てられた地理的範囲(たとえば、北アメリカ、南アメリカ、アフリカ、ヨーロッパなど)に関連付けられたデータのみを動的にフェッチすることができる。
ある実施形態に従うと、パーティション化されたキューブ810,811,812,813においてデータがキャッシュ/計算されると、上記のように、別のパーティション化された多次元データベースキューブ(たとえば、透過性パーティション)800は、パーティション化されたキューブ810,811,812,813からのデータにリアルタイムでアクセスすることができる。
ある実施形態に従うと、このようにして、ビッグデータソースからのデータは、キューブ700に動的に引き込まれることができ、キューブ700では、ユーザは、はるかに効率的な態様で所望の計算を処理して実行することができる。
ある実施形態に従うと、仮想キューブでのリアルタイムデータ集約から生じるいくつかの利点がある。たとえば、このようなシステムおよび方法は、式の中のテーブルデータへのリアルタイムアクセスおよび集約を提供する。その上、ソースデータに対する更新はすぐに実施され、これは、制約付きの実行可能な計画をユーザが実現することを手助けする「揮発性の」データドライバ(たとえば、通貨)をモデル化する際に重要である。
上記のように、ある実施形態では、仮想キューブでのリアルタイムデータ集約は、ゼロフットプリントも提供する。これは、ひいては、バックアップの必要性をなくし、ゼロダウンタイムパッチングも提供する。複数のキューブが同一の表形式データによって駆動され得るので、高可用性も提供される。
ある実施形態に従うと、仮想キューブでのリアルタイムデータ集約は、同一キューブから複数の地理的位置およびデータセンタへのアクティブ-アクティブスケーリングを提供する。これにより、多数のユーザへのスケーリング、このようなユーザに対するレイテンシの減少が可能になる。再構築も高速化される。なぜなら、現在のところ、ほとんど全ての再構築時間がデータリシェイプに費やされているからである。これは、リシェイプすべき格納されたデータがないときにはそれを回避する。その上、上記の計算連続体により、ユーザは、どのデータ集約および格納モデルがそれらにとって適切であるかを選択することができ、個別化を向上させることができる。
図9は、多次元データベースにおける仮想キューブでのリアルタイムデータ集約のための方法のフローチャートである。
ステップ910において、この方法は、1つまたは複数のマイクロプロセッサを含むコンピュータにおいて、コンピュータ上で実行される多次元データベースサーバを提供することができ、多次元データベースサーバは、少なくとも1つの多次元キューブをサポートし、この方法はさらに、1つまたは複数のマイクロプロセッサを含むコンピュータにおいて、多次元キューブに関連付けられたデータソースを提供することができる。
ステップ920において、この方法は、多次元キューブによって、データソースに対してクエリを行うことができ、クエリは、データソースにアクセス可能なリアルタイムデータの少なくとも1つのソースの識別情報を備える。
ステップ930において、この方法は、多次元キューブによって、データソースに対してクエリを行うことができ、クエリは、データソースにアクセス可能なリアルタイムデータの少なくとも1つのソースの識別情報を備える。
ステップ940において、この方法は、多次元キューブによって、データソースに対してクエリを行うことができ、クエリは、データソースにアクセス可能なリアルタイムデータの少なくとも1つのソースの識別情報を備える。
本発明のさまざまな実施形態について上記したが、それらは限定ではなく例として提示されているということが理解されるべきである。これらの実施形態は、本発明の原理およびその実際的用途を説明するために選択されて説明された。これらの実施形態は、本発明が利用されるシステムおよび方法を示しており、新たなおよび/または改良された特徴を提供することによって、および/または、リソース利用の減少、容量の増加、効率の向上
およびレイテンシの減少などのメリットを提供することによってシステムおよび方法のパフォーマンスを向上させる。
いくつかの実施形態では、本発明の特徴は、全体または一部が、プロセッサと、メモリなどの記憶媒体と、他のコンピュータと通信するためのネットワークカードとを含むコンピュータにおいて実現される。いくつかの実施形態では、本発明の特徴は、コンピュータの1つまたは複数のクラスタが、ローカルエリアネットワーク(LAN)、スイッチファブリックネットワーク(たとえば、インフィニバンド)またはワイドエリアネットワーク(WAN)などのネットワークによって接続される分散コンピューティング環境において実現される。分散コンピューティング環境は、単一の位置に全てのコンピュータを有していてもよく、またはWANによって接続されたさまざまな遠隔の地理的位置にコンピュータのクラスタを有していてもよい。
いくつかの実施形態では、本発明の特徴は、全体または一部が、ウェブ技術を使用してセルフサービスの計量の態様でユーザに届けられる共有の融通性のあるリソースに基づいて、クラウドコンピューティングシステムの一部として、またはクラウドコンピューティングシステムのサービスとして、クラウドにおいて実現される。(アメリカ国立標準技術研究所によって定義されるように)クラウドの特徴は5つある。すなわち、オンデマンド・セルフサービス、幅広いネットワークアクセス、リソースの共用、スピーディな拡張性、およびサービスが計測可能であること、である。クラウド実装モデルは、パブリック、プライベートおよびハイブリッドを含む。クラウドサービスモデルは、ソフトウェア・アズ・ア・サービス(SaaS)、プラットフォーム・アズ・ア・サービス(PaaS)、データベース・アズ・ア・サービス(DBaaS)、およびインフラストラクチャ・アズ・ア・サービス(IaaS)を含む。本明細書におけるクラウドは、ハードウェアと、ソフトウェアと、ネットワークと、共有の融通性のあるリソースをセルフサービスの計量の態様でユーザに届けるウェブ技術との組み合わせである。本明細書におけるクラウドは、別段の定めがない限り、パブリッククラウドの実施形態、プライベートクラウドの実施形態、ハイブリッドクラウドの実施形態、ならびにクラウドSaaS、クラウドDBaaS、クラウドPaaSおよびクラウドIaaSを含むがこれらに限定されない全てのクラウド実装モデルを包含する。
いくつかの実施形態では、本発明の特徴は、ハードウェア、ソフトウェア、ファームウェアもしくはそれらの組み合わせを使用して、またはハードウェア、ソフトウェア、ファームウェアもしくはそれらの組み合わせの助けを借りて、実現される。いくつかの実施形態では、本発明の特徴は、本発明の1つまたは複数の機能を実行するように構成またはプログラムされたプロセッサを使用して実現される。いくつかの実施形態では、プロセッサは、本明細書に記載されている機能を実行するように設計されたシングルチップもしくはマルチチッププロセッサ、デジタル信号プロセッサ(DSP)、システムオンチップ(SOC)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブルロジックデバイス、ステートマシン、ディスクリートのゲートもしくはトランジスタロジック、ディスクリートのハードウェアコンポーネント、またはそれらの任意の組み合わせである。いくつかの実現例では、本発明の特徴は、所与の機能に特有の回路によって実現されてもよい。他の実現例では、これらの特徴は、たとえばコンピュータ読取可能記憶媒体上に格納された命令を使用して特定の機能を実行するように構成されたプロセッサにおいて実現されてもよい。
いくつかの実施形態では、本発明の特徴は、処理システムおよび/またはネットワーキングシステムのハードウェアを制御するため、ならびに、プロセッサおよび/またはネットワークが本発明の特徴を利用する他のシステムと対話することを可能にするためのソフトウェアおよび/またはファームウェアに組み込まれる。このようなソフトウェアまたは
ファームウェアは、アプリケーションコード、デバイスドライバ、オペレーティングシステム、仮想マシン、ハイパーバイザ、アプリケーションプログラミングインターフェイス、プログラミング言語および実行環境/コンテナを含み得るが、これらに限定されるものではない。適切なソフトウェアコーディングは、ソフトウェア分野における当業者に明らかであるように、本開示の教示に基づいて熟練のプログラマによって容易に準備することができる。
いくつかの実施形態では、本発明は、命令が格納された記憶媒体またはコンピュータ読取可能媒体であるコンピュータプログラム製品を含み、これらの命令を使用して、本発明のプロセスまたは機能のうちのいずれかを実行するようにコンピュータなどのシステムをプログラムまたはそうでなければ構成することができる。記憶媒体またはコンピュータ読取可能媒体は、フロッピー(登録商標)ディスク、光ディスク、DVD、CD-ROM、マイクロドライブおよび光磁気ディスクを含む任意のタイプのディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリデバイス、磁気もしくは光カード、ナノシステム(分子メモリICを含む)、または、命令および/もしくはデータを格納するのに適した任意のタイプの媒体もしくはデバイスを含み得るが、これらに限定されるものではない。特定の実施形態では、記憶媒体またはコンピュータ読取可能媒体は、非一時的な記憶媒体または非一時的なコンピュータ読取可能媒体である。
したがって、多次元データベースにおける仮想キューブでのリアルタイムデータ集約をサポートするためのシステムおよび方法について1つの観点から説明してきた。ある実施形態に従うと、本明細書に記載されているシステムおよび方法は、多次元データベースにおいてリアルタイムデータ集約をサポートすることができる能力を提供する。多次元データベースは、全てが同一のリレーショナルデータベース(たとえば、ソースデータ)を参照する(分散された)複数のキューブを有することができる能力を有している。ロードされたソースからデータを取り出す代わりに、多次元データベースは、ソースデータ位置または複数のソースデータ位置を照会して、リアルタイムでデータを集約することができる。
上記の説明は、網羅的であるよう意図されたものではなく、本発明を開示されている厳密な形態に限定するよう意図したものでもない。また、特定の一連のトランザクションおよびステップを使用して本発明の実施形態を説明してきたが、本発明の範囲が記載されている一連のトランザクションおよびステップに限定されないということは当業者に明らかであるべきである。さらに、ハードウェアおよびソフトウェアの特定の組み合わせを使用して本発明の実施形態を説明してきたが、ハードウェアおよびソフトウェアの他の組み合わせも本発明の範囲内であるということが認識されるべきである。さらに、さまざまな実施形態は、本発明の特徴の特定の組み合わせを説明しているが、特徴の異なる組み合わせが本発明の範囲内であって1つの実施形態の特徴を別の実施形態に組み込むことができるものとして当業者に明らかであるということが理解されるべきである。さらに、形状、詳細、実現および用途の点でのさまざまな追加、削減、削除、変化、ならびに他の変形および変更が本発明の精神および範囲から逸脱することなく本明細書においてなされてもよいということが当業者に明らかであろう。本発明のより広い精神および範囲は、以下の特許請求の範囲およびそれらの等価物によって定義されるよう意図される。

Claims (15)

  1. 多次元データベースにおける仮想キューブでのリアルタイムデータ集約のためのシステムであって、
    1つまたは複数のマイクロプロセッサを含むコンピュータと、
    前記コンピュータ上で実行される多次元データベースサーバと
    前記多次元データベースサーバに記憶された多次元データベースと、
    前記多次元データベースの複数のリアルタイムデータキューブとを備え、前記複数のリアルタイムデータキューブの各々は、データ属性と関連付けられ、
    前記システムはさらに、
    前記多次元データベースの透過性パーティションを備え、前記透過性パーティションは、前記複数のリアルタイムデータキューブの上に存在し、
    前記システムはさらに、
    前記多次元データベースサーバのプロバイダサービスを備え、前記プロバイダサービスは、前記多次元データベースの外部のリアルタイムデータのソースを含むデータベースへの複数の接続を含み、前記リアルタイムデータのソースは、複数のソースデータ集約クライアントを含み、
    前記多次元データベースに向けられたクエリに応答して、前記複数のリアルタイムデータキューブの各々は、前記プロバイダサービスに対してクエリを行なうように構成され、前記クエリは、前記多次元データベースの外部の前記リアルタイムデータのソースの識別情報を含み、
    前記プロバイダサービスは、前記複数のリアルタイムデータキューブの各々へ、前記多次元データベースの外部の前記リアルタイムデータのソースを含む前記データベースへの前記複数の接続および前記複数のソースデータ集約クライアントを介して、オンデマンドアクセスを提供し、
    前記クエリに応答したデータは、前記リアルタイムデータのソースから取り出されて、前記クエリに応答した前記データが前記多次元データベース内に格納されることなく前記多次元データベース内で使用される、システム。
  2. 前記クエリに応答した前記データは、前記クエリの実行時に、前プロバイダサービスによってフェッチされる、請求項1に記載のシステム。
  3. 前記クエリに応答した前記データは、前記プロバイダサービスによってフェッチされる際に、前記多次元データベースによって1つまたは複数の動的計算に利用される、請求項2に記載のシステム。
  4. 前記1つまたは複数の動的計算は、前記クエリに基づく、請求項3に記載のシステム。
  5. 前記透過性パーティションは、前記複数のリアルタイムデータキューブおよび前記多次元データベース内に格納された1つまたは複数のデータキューブの上に存在する、請求項1~4のいずれか1項に記載のシステム。
  6. 前記複数のソースデータ集約クライアントの各々は、前記多次元データベースの前記複数のリアルタイムデータキューブの独立した1つと関連付けられている、請求項1~5のいずれか1項に記載のシステム。
  7. 前記複数のソースデータ集約クライアントは、ビッグプロバイダサービスのビッグデータクラスタの内部に配置される、請求項1~5のいずれか1項に記載のシステム。
  8. 多次元データベースにおける仮想キューブでのリアルタイムデータ集約のための方法であって、
    1つまたは複数のマイクロプロセッサを含むコンピュータを提供するステップ
    前記コンピュータ上で多次元データベースサーバを動作させるステップと、
    前記多次元データベースサーバに多次元データベースを記憶するステップと、
    前記多次元データベースサーバ上に前記多次元データベースの複数のリアルタイムデータキューブを作成するステップとを備え、前記複数のリアルタイムデータキューブの各々は、データ属性と関連付けられ、
    前記方法はさらに、
    前記多次元データベースサーバ上に前記多次元データベースの透過性パーティションを作成するステップを備え、前記透過性パーティションは、前記複数のリアルタイムデータキューブの上に存在し、
    前記方法はさらに、
    前記多次元データベースサーバのプロバイダサービスを動作させて、前記多次元データベースの外部のリアルタイムデータのソースを含むデータベースへの複数の接続を提供するステップを備え、前記リアルタイムデータのソースは、複数のソースデータ集約クライアントを含み、
    前記方法はさらに、
    前記多次元データベースに向けられたクエリを受けるステップと、
    前記複数のリアルタイムデータキューブ、前記プロバイダサービスに対してクエリを行なうステップとを備え、前記クエリは、前記多次元データベースの外部の前記リアルタイムデータのソースの識別情報を含み
    前記方法はさらに、
    前記複数のリアルタイムデータキューブの各々に、前記多次元データベースの外部の前記リアルタイムデータのソースを含む前記データベースへの前記複数の接続を介して、オンデマンドアクセスを提供するステップと、
    前記多次元データベース内の前記リアルタイムデータのソースからの前記クエリに応答したデータを、前記クエリに応答した前記データが前記多次元データベース内に格納されることなく使用するステップとを備える、方法。
  9. 前記クエリに応答した前記データは、前記クエリの実行時に、前プロバイダサービスによってフェッチされる、請求項8に記載の方法。
  10. 前記クエリに応答した前記データは、前記プロバイダサービスによってフェッチされる際に、前記多次元データベースによって1つまたは複数の動的計算に利用される、請求項9に記載の方法。
  11. 前記1つまたは複数の動的計算は、前記クエリに基づく、請求項10に記載の方法。
  12. 前記透過性パーティションは、前記複数のリアルタイムデータキューブおよび前記多次元データベース内に格納された1つまたは複数のデータキューブの上に存在する、請求項8~11のいずれか1項に記載の方法。
  13. 前記複数のソースデータ集約クライアントの各々は、前記多次元データベースの前記複数のリアルタイムデータキューブの独立した1つと関連付けられている、請求項8~12のいずれか1項に記載の方法。
  14. 前記複数のソースデータ集約クライアントは、ビッグプロバイダサービスのビッグデータクラスタの内部に配置される、請求項8~12のいずれか1項に記載の方法。
  15. コンピュータに請求項8~14のいずれか1項に記載の方法を実行させる、プログラム。
JP2022206971A 2018-07-19 2022-12-23 多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法 Active JP7454643B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201862700762P 2018-07-19 2018-07-19
US62/700,762 2018-07-19
US16/374,402 2019-04-03
US16/374,402 US11188554B2 (en) 2018-07-19 2019-04-03 System and method for real time data aggregation in a virtual cube in a multidimensional database environment
PCT/US2019/027952 WO2020018162A1 (en) 2018-07-19 2019-04-17 System and method for real time data aggregation in a virtual cube in a multidimensional database environment
JP2021502778A JP7202442B2 (ja) 2018-07-19 2019-04-17 多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021502778A Division JP7202442B2 (ja) 2018-07-19 2019-04-17 多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法

Publications (2)

Publication Number Publication Date
JP2023040076A JP2023040076A (ja) 2023-03-22
JP7454643B2 true JP7454643B2 (ja) 2024-03-22

Family

ID=69161317

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021502778A Active JP7202442B2 (ja) 2018-07-19 2019-04-17 多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法
JP2022206971A Active JP7454643B2 (ja) 2018-07-19 2022-12-23 多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2021502778A Active JP7202442B2 (ja) 2018-07-19 2019-04-17 多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法

Country Status (5)

Country Link
US (2) US11188554B2 (ja)
EP (1) EP3824399A1 (ja)
JP (2) JP7202442B2 (ja)
CN (1) CN112424767A (ja)
WO (1) WO2020018162A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11188554B2 (en) 2018-07-19 2021-11-30 Oracle International Corporation System and method for real time data aggregation in a virtual cube in a multidimensional database environment
WO2020149865A1 (en) * 2019-01-15 2020-07-23 Google Llc Systems and methods for specifying olap cube at query time
CN113535844B (zh) * 2021-09-15 2021-12-07 山东耕元数据科技有限公司 一种数据汇聚方法及系统
CN114048260B (zh) * 2022-01-12 2022-09-09 南湖实验室 一种数据湖与关系型数据库互联的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108896A (ja) 2000-09-29 2002-04-12 Hitachi Kokusai Electric Inc データベースアクセス方法及び多次元データベースアクセスシステム
JP2010539616A (ja) 2007-09-21 2010-12-16 ハッソ−プラトナー−インスティテュート フュア ソフトバレシステムテヒニク ゲゼルシャフト ミット ベシュレンクテル ハフツング Oltpデータをレポートするための、重複がないetlレスシステム及びその方法
US20170116411A1 (en) 2015-10-23 2017-04-27 Oracle International Corporation System and method for sandboxing support in a multidimensional database environment

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5574952A (en) 1994-05-11 1996-11-12 International Business Machines Corporation Data storage system and method for operating a disk controller including allocating disk space for compressed data
US5915129A (en) 1994-06-27 1999-06-22 Microsoft Corporation Method and system for storing uncompressed data in a memory cache that is destined for a compressed file system
WO1996016375A1 (en) 1994-11-21 1996-05-30 Oracle Corporation Method and apparatus for multidimensional database using binary hyperspatial code
US6574720B1 (en) 1997-05-30 2003-06-03 Oracle International Corporation System for maintaining a buffer pool
US9208213B2 (en) 1999-05-28 2015-12-08 Microstrategy, Incorporated System and method for network user interface OLAP report formatting
US6766325B1 (en) 1999-12-02 2004-07-20 Microsoft Corporation System and method for maintaining data for performing “what if” analysis
US20020029207A1 (en) * 2000-02-28 2002-03-07 Hyperroll, Inc. Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein
US6629102B1 (en) 2000-07-28 2003-09-30 International Business Machines Corporation Efficiently updating a key table during outline restructure of a multi-dimensional database
US7133876B2 (en) 2001-06-12 2006-11-07 The University Of Maryland College Park Dwarf cube architecture for reducing storage sizes of multidimensional data
US6880154B2 (en) 2001-06-29 2005-04-12 Intel Corporation Alias-free test for dynamic array structures
US6873994B2 (en) 2001-08-31 2005-03-29 I2 Technologies Us, Inc. Conflict detection and resolution in association with data allocation
US8386296B2 (en) 2002-03-08 2013-02-26 Agile Software Corporation System and method for managing and monitoring supply costs
US7058783B2 (en) 2002-09-18 2006-06-06 Oracle International Corporation Method and mechanism for on-line data compression and in-place updates
US7392242B1 (en) 2004-02-27 2008-06-24 Hyperion Solutions Corporation Query costing in a multidimensional database
US7702718B2 (en) 2004-03-30 2010-04-20 Cisco Technology, Inc. Providing enterprise information
US7647356B2 (en) 2004-05-07 2010-01-12 Oracle International Corporation Methods and apparatus for facilitating analysis of large data sets
US7562086B2 (en) 2004-07-09 2009-07-14 Microsoft Corporation Custom grouping for dimension members
US20060106769A1 (en) 2004-11-12 2006-05-18 Gibbs Kevin A Method and system for autocompletion for languages having ideographs and phonetic characters
US8510329B2 (en) 2005-05-25 2013-08-13 Experian Marketing Solutions, Inc. Distributed and interactive database architecture for parallel and asynchronous data processing of complex data and for real-time query processing
WO2006136789A2 (en) 2005-06-20 2006-12-28 Future Route Limited Analytical system for discovery and generation of rules to predict and detect anomalies in data and financial fraud
US7792847B2 (en) 2005-09-09 2010-09-07 Microsoft Corporation Converting structured reports to formulas
US7805433B2 (en) 2005-10-14 2010-09-28 Microsoft Corporation Multidimensional cube functions
US20070094668A1 (en) 2005-10-17 2007-04-26 Jacquot Bryan J Method and apparatus for dynamically allocating resources used by software
US8099383B2 (en) * 2005-11-07 2012-01-17 Business Objects Software Limited Apparatus and method for defining report parts
US8156083B2 (en) 2005-12-01 2012-04-10 Oracle International Corporation Database system that provides for history-enabled tables
US8108399B2 (en) 2007-05-18 2012-01-31 Microsoft Corporation Filtering of multi attribute data via on-demand indexing
US7792784B2 (en) * 2007-05-31 2010-09-07 International Business Machines Corporation Streaming multidimensional data by bypassing multidimensional query processor
US8108335B2 (en) 2007-07-17 2012-01-31 Teradata Us, Inc. Techniques for integrating disparate data access mechanisms
US8234298B2 (en) * 2007-07-25 2012-07-31 International Business Machines Corporation System and method for determining driving factor in a data cube
US8005818B2 (en) 2008-03-31 2011-08-23 Business Objects, S.A. Apparatus and method for maintaining metadata version awareness during set evaluation for OLAP hierarchies
US8606803B2 (en) 2008-04-01 2013-12-10 Microsoft Corporation Translating a relational query to a multidimensional query
US8169481B2 (en) 2008-05-05 2012-05-01 Panasonic Corporation System architecture and process for assessing multi-perspective multi-context abnormal behavior
US8024287B2 (en) * 2008-06-27 2011-09-20 SAP France S.A. Apparatus and method for dynamically materializing a multi-dimensional data stream cube
JP4925143B2 (ja) 2009-08-12 2012-04-25 株式会社日立製作所 ストリームデータ処理システム、ストリームデータ処理方法及びストリームデータ処理プログラム
US10242406B2 (en) 2009-09-14 2019-03-26 International Business Machines Corporation Analytics integration workbench within a comprehensive framework for composing and executing analytics applications in business level languages
US10360527B2 (en) 2010-11-10 2019-07-23 International Business Machines Corporation Casual modeling of multi-dimensional hierarchical metric cubes
US9020991B2 (en) 2012-08-10 2015-04-28 Ca, Inc. System and method for analyzing available space in data blocks
US20140122413A1 (en) 2012-10-29 2014-05-01 Paris Technologies, Inc. Bulk read and write between multi-dimensional data structures
WO2015131961A1 (en) 2014-03-07 2015-09-11 Systema Systementwicklung Dip.-Inf. Manfred Austen Gmbh Real-time information systems and methodology based on continuous homomorphic processing in linear information spaces
US10083195B2 (en) 2014-04-24 2018-09-25 Futurewei Technologies, Inc. System and method for composing a multidimensional index key in data blocks
US10685042B2 (en) * 2014-12-22 2020-06-16 Amazon Technologies, Inc. Identifying join relationships based on transactional access patterns
US11163498B2 (en) 2015-07-01 2021-11-02 Oracle International Corporation System and method for rare copy-on-write in a distributed computing environment
US11226987B2 (en) 2015-10-23 2022-01-18 Oracle International Corporation System and method for in-place data writes to reduce fragmentation in a multidimensional database environment
US10628451B2 (en) 2015-10-23 2020-04-21 Oracle International Corporation System and method for supporting queries having sub-select constructs in a multidimensional database environment
US10346435B2 (en) 2015-10-23 2019-07-09 Oracle International Corporation System and method for improved performance in a multidimensional database environment
US10467251B2 (en) 2015-10-23 2019-11-05 Oracle International Corporation System and method for automatic dependency analysis for use with a multidimensional database
US11520760B2 (en) 2015-10-23 2022-12-06 Oracle International Corporation System and method for providing bottom-up aggregation in a multidimensional database environment
US10984020B2 (en) 2015-10-23 2021-04-20 Oracle International Corporation System and method for supporting large queries in a multidimensional database environment
US10838982B2 (en) 2015-10-23 2020-11-17 Oracle International Corporation System and method for aggregating values through risk dimension hierarchies in a multidimensional database environment
US10318498B2 (en) 2015-10-23 2019-06-11 Oracle International Corporation System and method for parallel support of multidimensional slices with a multidimensional database
US20170116311A1 (en) 2015-10-23 2017-04-27 Oracle International Corporation System and method for use of automatic slice merge in a multidimensional database environment
US10909134B2 (en) 2017-09-01 2021-02-02 Oracle International Corporation System and method for client-side calculation in a multidimensional database environment
US10983972B2 (en) 2017-09-08 2021-04-20 Oracle International Corporation System and method for slowing changing dimension and metadata versioning in a multidimensional database environment
US20190102447A1 (en) 2017-09-29 2019-04-04 Oracle International Corporation System and method for metadata sandboxing and what-if analysis in a multidimensional database environment
US11593402B2 (en) 2017-09-29 2023-02-28 Oracle International Corporation System and method for enabling multiple parents with weights in a multidimensional database environment
US11042569B2 (en) 2017-09-29 2021-06-22 Oracle International Corporation System and method for load, aggregate and batch calculation in one scan in a multidimensional database environment
US11188554B2 (en) 2018-07-19 2021-11-30 Oracle International Corporation System and method for real time data aggregation in a virtual cube in a multidimensional database environment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108896A (ja) 2000-09-29 2002-04-12 Hitachi Kokusai Electric Inc データベースアクセス方法及び多次元データベースアクセスシステム
JP2010539616A (ja) 2007-09-21 2010-12-16 ハッソ−プラトナー−インスティテュート フュア ソフトバレシステムテヒニク ゲゼルシャフト ミット ベシュレンクテル ハフツング Oltpデータをレポートするための、重複がないetlレスシステム及びその方法
US20170116411A1 (en) 2015-10-23 2017-04-27 Oracle International Corporation System and method for sandboxing support in a multidimensional database environment

Also Published As

Publication number Publication date
US20200026709A1 (en) 2020-01-23
US20220027381A1 (en) 2022-01-27
JP2021531579A (ja) 2021-11-18
CN112424767A (zh) 2021-02-26
EP3824399A1 (en) 2021-05-26
US11797559B2 (en) 2023-10-24
US11188554B2 (en) 2021-11-30
JP2023040076A (ja) 2023-03-22
JP7202442B2 (ja) 2023-01-11
WO2020018162A1 (en) 2020-01-23

Similar Documents

Publication Publication Date Title
JP6827127B2 (ja) 多次元データベース環境において1回のスキャンでロード、集約、およびバッチ計算を行なうためのシステムおよび方法
US11263211B2 (en) Data partitioning and ordering
US20230334030A1 (en) System and method for slowly changing dimension and metadata versioning in a multidimensional database environment
JP7454643B2 (ja) 多次元データベース環境における仮想キューブでのリアルタイムデータ集約のためのシステムおよび方法
US20210240735A1 (en) System and method for supporting large queries in a multidimensional database environment
US20230084389A1 (en) System and method for providing bottom-up aggregation in a multidimensional database environment
US20190102447A1 (en) System and method for metadata sandboxing and what-if analysis in a multidimensional database environment
US20170116311A1 (en) System and method for use of automatic slice merge in a multidimensional database environment
US20220138226A1 (en) System and method for sandboxing support in a multidimensional database environment
US11422881B2 (en) System and method for automatic root cause analysis and automatic generation of key metrics in a multidimensional database environment
US9898501B2 (en) Method and system for performing transactional updates in a key-value store
US20100235344A1 (en) Mechanism for utilizing partitioning pruning techniques for xml indexes
US10936574B2 (en) System and method for use of lock-less techniques with a multidimensional database
US11734308B2 (en) Autonomous caching for views

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230110

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240117

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240311

R150 Certificate of patent or registration of utility model

Ref document number: 7454643

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150