JP5873078B2 - ビジネスインテリジェンスサーバとともに用いられるデータに対する多言語サポートを提供するためのシステムおよび方法 - Google Patents

ビジネスインテリジェンスサーバとともに用いられるデータに対する多言語サポートを提供するためのシステムおよび方法 Download PDF

Info

Publication number
JP5873078B2
JP5873078B2 JP2013512647A JP2013512647A JP5873078B2 JP 5873078 B2 JP5873078 B2 JP 5873078B2 JP 2013512647 A JP2013512647 A JP 2013512647A JP 2013512647 A JP2013512647 A JP 2013512647A JP 5873078 B2 JP5873078 B2 JP 5873078B2
Authority
JP
Japan
Prior art keywords
base table
lookup
data
query
processor
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
JP2013512647A
Other languages
English (en)
Other versions
JP2013527540A (ja
JP2013527540A5 (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 JP2013527540A publication Critical patent/JP2013527540A/ja
Publication of JP2013527540A5 publication Critical patent/JP2013527540A5/ja
Application granted granted Critical
Publication of JP5873078B2 publication Critical patent/JP5873078B2/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/24Querying
    • G06F16/245Query processing

Landscapes

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

Description

著作権表示
この特許文書の開示の一部は、著作権保護の対象である内容を含む。著作権者は、何人によるこの特許文書または特許開示の複写も、それが特許商標庁の特許のファイルまたは記録に現われるように行うことには反対しないが、そうでない場合には、いかなる著作権であってもすべてを所有する。
発明の分野
この発明は、一般に、ビジネスインテリジェンスに関し、特にビジネスインテリジェンスサーバにおいてデータに対する多言語サポートを提供することに関する。
背景
近年、ビジネスインテリジェンスソフトウェアは、大企業および他の組織によってますます利用されるようになってきている。ビジネスインテリジェンスは、組織の内部の構造化データおよびビジネス過程を分析することによって、ビジネス活動の現在および歴史的な見解を提供する。それは、よりよいビジネス的意思決定をサポートするために、将来のモデルおよび予測を形成するためにしばしば利用される。したがって、ビジネスインテリジェンスツールは、多くの企業に対するコストの低減、ならびに効率性、生産性および利ざやの増大に至ることができる。
ビジネスインテリジェンスは、通常はソフトウェアおよび/またはハードウェアツールとして実現され、それらを用いて、データを収集および分析し、生データを、有意味かつ有用な情報に変換し、その情報を用いて、効果的な、戦略上、戦術上、ならびに運営上の洞察および意思決定を可能にする。したがって、典型的なビジネスインテリジェンスサーバは、リレーショナルデータベース、オンライン分析型処理(OLAP)ツール、リポジトリおよびコンテンツ管理システム、アプリケーションサーバ、ならびに多くの他のソースを含むが、これらに限定されない様々な場所にあり得るデータに依存する。
典型的なビジネスインテリジェンス(BI)サーバでは、データはこれらのデータソースのすべて(またはいくつか)から収集され、(仮想または物理)データウェアハウスまたはデータマートに入れられ、次いで、そこでモデル化および分析された後、ユーザに呈示することができる。たとえば、1つの方策はビジネスインテリジェンスサーバ内に物理層を実現することであり、そこで、データは、データソース層においてオブジェクトを映す、統合されたテーブルとしてモデル化される。アプリケーション開発者は、これらの複合オブジェクトを、ドメインに関連するエンティティのサブセットを用いて、手動でアセンブルすることができ、合成されたオブジェクトは、続いて、ビジネスインテリジェンスサーバのメタデータ内にインポートされ、次元と事実とに分解されることができる。
しかしながら、多くの制限および潜在的な改善の領域が、ビジネスインテリジェンスサーバ内おけるデータのモデル化の分野において依然として存在する。たとえば、異なる言語にわたってクエリを用いて作業することは、ユーザにとって役立つことが多い。日本語でBIサーバにログインしているユーザは、データ列が英語で格納されている場合、クエリに対するフィルタを指定するのに苦労するかもしれない。加えて、ある大きなオブジェクトタイプを格納する列は多くの場合、データベースによって、"group by(単位でグループ化)"クエリ節においてサポートされないことがしばしばである。したがって、BIサーバが、多言語データを含むスキーマをサポートでき、管理を単純化し多言語ルックアップテーブルのクエリパフォーマンスを改善できることが望ましい。
発明の概要
さまざまな実施例に従って、多言語二重コラムサポートがBIサーバのために提供される。多言語サポートは、BIサーバが、ベーステーブルに格納された値の翻訳を格納するためにルックアップテーブルを用いることを可能にする。次いで、多言語データを必要とするクエリが、ベーステーブルとルックアップテーブルとを結合して、これらの翻訳を得ることができる。
ある実施例に従うと、BIサーバは、ルックアップテーブルを、ユーザが異なる言語を用いるクエリで作業することを可能にする関連するルックアップ関数とともに実現することによって、多言語サポートを可能にする。ユーザがBIサーバにログインすると、セッションオブジェクトがユーザのために生成される。それは、ユーザのセッションに対する状態情報を維持する。そのようなセッションの変数の1つは、ユーザによって現在用いられている言語を指定する。ある実施例に従うと、BIサーバは、このセッション変数を検査して、ユーザの言語を判断し、必要に応じてルックアップ翻訳を実行することができる。たとえば、セッションによって用いられる言語が、必要な情報を格納するベーステーブルの言語とは異なる場合、BIサーバは、ルックアップ関数を呼び出すことによって翻訳を実行することができる。ルックアップの実行は、クエリによって要求された、翻訳された値をもたらすために、ベーステーブルとルックアップテーブルとの結合動作を実行することを含み得る。
この発明のさまざまな実施例に従うBIサーバの図である。 この発明のさまざまな実施例に従うBIリポジトリの層を横断するクエリの図である。 この発明のさまざまな実施例に従う、1つのルックアップテーブル実現例の図である。 この発明のさまざまな実施例に従う、別のルックアップテーブル実現例の図である。 この発明のさまざまな実施例に従う、クエリの翻訳を実行するためにルックアップテーブルを用いるビジネスインテリジェンスサーバの図である。 この発明のさまざまな実施例に従う、ビジネスインテリジェンスサーバにおいて用いられる多言語サポートのフローチャート図である。 ここに記載されるこの発明のさまざまな実施例を実行するよう利用され得る電算処理装置の図である。
詳細な説明
この発明は、同様の参照符号が同様の要素を示す添付の図面において、限定としてではなく、例として示される。この開示における実施例への参照は、必ずしも同じ実施例に対してではなく、そのような参照は少なくとも1つを意味する。具体的な実現例が論じられるが、それは例示の目的のためにのみなされることが理解される。関連する技術分野の当業者は、他の構成要素および構成が、この発明の範囲および精神から逸脱せずに用いられてもよいことを認識するだろう。
以下の説明では、多数の具体的な詳細が、この発明の十分な記載を提供するために述べられる。しかしながら、この発明がこれらの具体的な詳細なしで実施されてもよいことは、当業者には明らかであろう。他の例では、この発明を不明瞭にしないよう、周知の特徴は詳細には記載されない。
この開示の全体にわたって記載されるさまざまな実施例に従うと、ビジネスインテリジェンス(BI)サーバが、データクエリ用に多言語サポートで拡張される。ビジネスインテリジェンスクエリは、典型的には複数のテーブルを結合することを伴う。これは、さまざまな、技術的/パフォーマンス/機能上の挑戦を呈する。たとえば、1)ユーザは、異なる言語にわたってユーザのために働く態様でフィルタ(Product = 'coke'(製品=「コーク」))を形成することができることを望む。フィルタが'Product = coke'として表現される場合、これは日本人ユーザのためには働かないかもしれない;2)さらに他の、関係のあるデータが、データベースCLOB/BLOB列(パワーポイントファイル、エクセルファイル、PDFファイル、患者X線など)に格納されることが一般的である。データベースは、通常、これらの列が'group by'に参加することを可能にしない;および3)ラベルローカリゼーションニーズは、典型的には、あるテーブルが複数のテーブルと結合(join)されることを必要とする。しかし、任意の所与のクエリに対して、これらの1つだけがアクティブかもしれない。加えて、結合(join)は最適になされる後集計(post-aggregation)で有り得る。多言語サポート特徴は、BIサーバがこれらのニーズに対処することを可能にする。
ある実施例に従うと、BIサーバは、ルックアップテーブルを、ユーザが異なる言語を用いるクエリで作業することを可能にする関連するルックアップ関数とともに実現することによって、多言語サポートを可能にする。ユーザがBIサーバにログインすると、セッションオブジェクトがユーザのために生成される。それは、ユーザのセッションに対する状態情報を維持する。そのようなセッションの変数の1つは、ユーザによって現在用いられている言語を指定する。ある実施例に従うと、BIサーバは、このセッション変数を検査して、ユーザの言語を判断し、必要に応じてルックアップ翻訳を実行することができる。たとえば、セッションによって用いられる言語が、必要な情報を格納するベーステーブルの言語とは異なる場合、BIサーバはルックアップ関数を呼び出すことによって翻訳を実行することができる。他方、セッションの言語がベーステーブルの言語と同じである場合には、翻訳は必要ではなく、クエリは、いかなるルックアップもなしで直接答えられ得る。
ある実施例に従うと、ルックアップテーブルは少なくとも1つの値列を含む。それは、データを格納するために用いられるベーステーブルにおける列の実際の翻訳値を含む列である。加えて、ルックアップテーブルは、ルックアップを実行するために用いられるルックアップキー(たとえば主キー)を有する。
ある実施例に従うと、ルックアップ関数は、特定のデータ片の翻訳を得るために用いられるパラメータのセットを含む。たとえば、ルックアップ関数は、翻訳を含むルックアップテーブルの値列を指定するパラメータを含む。加えて、ルックアップ関数は、データ項目の識別子を指定するパラメータ、および翻訳に対して必要とされる特定の言語を識別するパラメータ(これはセッション変数から得ることができる)を含む。いくつかの場合では、以下にさらに詳述されるように、ルックアップ関数は、さらに、必要とされるデータ片に関して基本言語で値を格納するベーステーブルの列を指定するためのパラメータを含んでもよい。
ある実施例に従うと、BIサーバは、ルックアップテーブルとベーステーブルとの結合動作を実行するよう用いられる適切な構造化照会言語(SQL)ステートメントに、ルックアップ関数を書き換える。結合動作は、クエリによって要求されたベーステーブルの行に対して翻訳された値を(ユーザのセッション言語で)もたらす。
図1は、この発明のさまざまな実施例に従うBIサーバの図である。この図は構成要素を論理上別々のものとして示すが、そのような図示は単に例示のためである。この図において示された構成要素を組み合わせることができるか、または別のソフトウェア、ファームウェアおよび/もしくはハードウェアに分割することができることは、当業者に明らかであろう。さらに、そのような構成要素が、それらがどのように組み合わせられるかまたは分割されるかにかかわらず、同じ電算処理装置で実行することができるか、または1つ以上のネットワークもしくは他の好適な通信手段によって接続される異なる電算処理装置間に分散することができることも当業者には明らかであろう。
例示されるように、BIサーバ104およびBIリポジトリ108は、ユーザ100に複雑な共用データソース106に対して単純な論理的な構造化照会言語(SQL)クエリを送らせる抽象化の層を提供する。ある実施例に従うと、BIサーバ104はユーザ要求を処理し、基礎となるデータソースに問い合わせる。BIサーバは論理データモデルを維持し、オープンデータベースコネクティビティ(ODBC)を介してこのモデルに対してクライアントアクセスをあたえることができる。
ある実施例に従うと、BIサーバは、リポジトリ108においてメタデータを用いて、2つのタスクを実行して、(1)論理SQLクエリを解釈し、対応する物理クエリを適切なデータソース106に対して書込み;(2)物理的な結果の組を変換し組み合わせて、最終計算を実行する。BIサーバは、ODBCを介して、または基礎となるデータソースのネイティブアプリケーションプログラミングインタフェース(API)を通じて、該データソースに対して接続することができる。
ある実施例に従うと、管理ツール102はBIリポジトリ108を形成および編集するよう用いることができるアプリケーションである。管理ツールはオフラインモードでリポジトリに接続することができる。または、それはBIサーバを介してリポジトリに接続することができる(オンラインモード)。さまざまな実施例に従って、BIサーバによって提供されるさらなる機能性はオンラインモードで利用可能にできる。
図2は、この発明のさまざまな実施例に従うBIリポジトリの層を横断するクエリの図である。この図は構成要素を論理上別々のものとして示すが、そのような図示は単に例示のためである。この図において示された構成要素を組み合わせることができるか、または別のソフトウェア、ファームウェアおよび/もしくはハードウェアに分割することができることは、当業者には明らかであろう。さらに、そのような構成要素が、それらがどのように組み合わせられるかまたは分割されるかにかかわらず、同じ電算処理装置で実行することができるか、または1つ以上のネットワークもしくは他の好適な通信手段によって接続される異なる電算処理装置間に分散することができることも当業者には明らかであろう。
上に述べられるように、BIサーバは複雑な共用データソースに対して送信される、入来するクライアント要求200を処理することができる。ある実施例に従うと、BIリポジトリは3層、つまり物理層206、論理マッピング層204およびプレゼンテーション層202で構成される。
ある実施例に従うと、物理層206は、BIサーバが各物理データソース208に対してネイティブクエリを書き込むのに必要とするオブジェクトおよび関係を定義する。ある実施例に従うと、ユーザまたは管理者は、データソースから、テーブル、キューブおよびフラットファイルをインポートすることによって、この層を形成する。たとえば、この図において示されるように、物理層において用いられるフォーマットおよびスキーマのいくつかは、スターおよびスノーフレーク214、正規化216および非正規化218データ、拡張マークアップ言語(XML)およびファイル記憶データ220、多次元データ222、アプリケーション開発フレームワーク(ADF)データ224、ならびに他のフォーマットを含むことができる。物理モデルからアプリケーションの論理的な挙動を分離することは、複数の物理データソースを同じ論理オブジェクトに統合する能力をあたえ、集計ナビゲーションおよび区分化、ならびに物理ソースにおける変化からの次元適合および分離を可能にする。この分離は、さらに、ポータブルBIアプリケーションの生成も可能にする。
ある実施例に従うと、論理ビジネスモデルおよびマッピング層204は、データのビジネスまたは論理モデルを定義し、ビジネスモデルと物理スキーマとの間のマッピングを指定する。この層は、さらに、ユーザによって見られる分析的な挙動を判断し、ユーザに利用可能なオブジェクトおよび関係のスーパーセットを定義する。それは、さらに、ソースデータモデルの複雑さを隠す。
ある実施例に従うと、プレゼンテーション層202は、ユーザに対して、ビジネスモデルの、カスタマイズされた、安全な、役割に基づいたビュー210を呈示する態様を提供する。それは、あるレベルの抽象化をビジネスモデルおよびマッピング層204上に追加し、プレゼンテーションサービスおよび他のクライアント200で要求を構築するユーザによって見られるデータのビューを提供する。
ある実施例に従うと、エンタープライズにとってBIリポジトリを構築する典型的なオーダは、まず物理層オブジェクト、次に論理モデルおよびマッピング層オブジェクト、最後にプレゼンテーション層オブジェクトを生成することである。しかしながら、代替的実施例においては、ユーザは任意の段階で各層に取り組むことができる。
大抵の場合、ビジネスモデルを計画することは、意思決定サポートに対して使用可能なデータモデルを開発することにおける第1のステップである。あるビジネスモデルでは、次元は、論理列(属性)の階層的組織を表す。1つ以上の論理次元テーブルを、多くて1つの次元と関連付けることができる。一般的な次元の例は、期間、製品、市場、顧客、供給者、促進条件、原料、製造プラント、輸送方法、媒体の種類、および時刻である。ある実施例に従うと、次元は、論理モデルおよびマッピング層204ならびにプレゼンテーション層202に存在する。
各次元では、属性を階層的レベルに組織化することができる。これらの論理レベルは、BIサーバを展開する組織のビジネスによって要求される組織的規則および報告ニーズを表わす。それらは、データのより詳細なビューを得るために、次元内および次元にわたってたたき込むようBIサーバが用いる構造(メタデータ)を提供する。
図3Aはこの発明のさまざまな実施例に従う、1つのルックアップテーブル実現例の図である。ここに記載される実施例はこの特定の実現例に必ずしも限定されず、他の実現例がこの発明の範囲内で可能であることが注記されるべきである。特に、この図は、1つのルックアップテーブルが各ベーステーブル毎に維持される、ルックアップテーブルの設計を示す。図3Bにおいて示される代替的設計では、以下にさらに詳述されるように、1つのルックアップテーブルが、ベーステーブルの各フィールドにつき、維持され得る。
図3Aに示されるように、各ベーステーブル300につき、別のルックアップテーブル302がある。ある実施例に従うと、ルックアップテーブルは、ベーステーブルにおけるレコードへの外国キー参照を含み、別の列に各翻訳されたフィールド毎の値を含む。完全に密なルックアップテーブルを仮定した場合、ある特定の言語に対するルックアップテーブルにおける行の数は、ベーステーブルにおける行の数と等しい。図3Aに示される例では、ルックアップテーブル302における各レコードはベーステーブル300においてたった1つの行と一致する。
図3Bはこの発明のさまざまな実施例に従う、別のルックアップテーブル実現例の図である。ここに記載される実施例はこの特定の実現例に必ずしも限定されず、ルックアップテーブルの他の実現例も可能であることを、もう一度注記する。
例示されるように、代替的設計は、ベーステーブル302の各翻訳されたフィールドにつき、別のルックアップテーブル306を実現することである。ある実施例に従うと、各フィールドの翻訳された値を得ることは、次いで、ルックアップテーブルに対する別の結合を必要とするだろう。実際には、複数のフィールドに対する翻訳を含むわずか1つの物理テーブルがあることが多い。単一のテーブルが複数のフィールドに対する翻訳を含むとき、ルックアップテーブルにフィルタを置いて、ベーステーブルにおける特定の列に関係する値のみにデータを限定することが必要になり得る。
この発明のさまざまな実施例に従って、BIサーバは、図3Aおよび図3Bに例示された両方のルックアップテーブル設計をサポートすることができる。
さまざまな実施例に従って、疎および密なルックアップテーブルの両方がBIサーバによってサポートされ得る。いくつかのスキーマでは、ルックアップテーブルは、ベーステーブルにおけるレコードのいくつかのみに対する翻訳を含み、疎である。疎であるルックアップテーブルは、ベーステーブルからの行が維持されるように、ベーステーブルとの外部結合を必要とする。通常、翻訳が特定のレコードに対して見当たらないとき、ベース翻訳はNULL値の代わりに置換されるべきである。密なルックアップテーブルは、ベーステーブルにおけるすべてのレコードに対して、すべての言語で翻訳を含む。密なルックアップテーブルはすべてのベースレコードに対して一致するレコードを含むので、ルックアップテーブルはベーステーブルと内部結合することができ、それによって、外部結合および基本言語置換のオーバヘッドを回避する。いくつかの場合では、あるルックアップテーブルは密および疎の両方であり得る。たとえば、図3Bのルックアップテーブルは、「Description(記述)」フィールドに対しては完全な翻訳を含むが、「Category(カテゴリ)」フィールドに対しては部分的な翻訳を含んでもよい。したがって、ある実施例に従うと、BIサーバは、テーブルの属性である代わりに、ルックアップ動作の属性として、「密」および「疎」を扱う。疎であるルックアップはベーステーブルを翻訳テーブルと外部結合で接続することになり、一方、密なルックアップは結果としてベーステーブルと翻訳テーブルとの間の内部結合になることになる。
ある実施例に従うと、記述子列はBIサーバによってサポートすることができる。記述子列は、1対1の関係が記述子列となんらかのキー列との間にある場合にそのキー列に対してテキスト記述を提供する列である。実際には、1対1の関係はしばしば実施されないかもしれないが、クエリ目的に対しては、列は、あたかもそのような1対1の関係があるかのように扱われ得る。
記述子列の一例はProduct_Name(製品_名称)であってもよく、それは、Product_Key(製品_キー)列に対してテキスト記述をあたえる。多くの場合において2つの製品が同じ名称を有することが考えられ得るが、それは起こりそうにもなく、たとえ同じ名称を有する製品があっても、それらの製品は、集計およびフィルタにおいて依然として別個のエンティティとして扱うことができる。
ある実施例に従うと、記述子列を生成する1つの理由は、言語非依存フィルタを定義することにおける補助にある。ユーザが記述子列に基づいたフィルタを生成するとき、クエリツールは、記述子列から選択される値のリストをユーザに対して表示する。内部では、BIサーバは、さらに、キー列を、LOVにおいて隠されたフィールドとして格納することができる。ユーザがLOVから値を選択するとき、ツールは、フィルタにおいて選択された記述子値を、隠されたキー値と置換し、キー列に関してフィルタを書き換える。フィルタは、翻訳されないキー列しか参照しない形式に変換されるので、フィルタは、言語に依存せず、他の言語のユーザと共有することができる。
記述子列はしばしば複数の言語に翻訳されるが、これは必ずしも必要ではない。記述子列は単に1つの言語で記述をあたえてもよい。上に記載されたキー値への同じフィルタ変換は、翻訳されない記述子列に等しく当てはまる。これは、集計およびフィルタ処理の際に、異なるキー値を有するが同じテキスト記述を共有する行が別々に扱われることを保証することができる。
ある実施例に従うと、この記述子列技術は、キャラクタ・ラージ・オブジェクト(CLOB)、バイナリ・ラージ・オブジェクト(BLOB)のような大きなオブジェクト(LOB)データ型、およびCOUNT()またはSUM()のような集計関数を伴っているクエリに対処するときも、有用である。あるデータソースは、LOB列がGROUP BY節において用いられることを可能にしない。したがって、LOB列をGROUP BYに追加する代わりに、LOB列と1対1の関係を有する他のなんらかの列によってグループ化し、次いで、集計が電算処理された後、LOB列を結合することが必要となり得る。
図4は、この発明のさまざまな実施例に従う、クエリの翻訳を実行するためにルックアップテーブルを用いるビジネスインテリジェンスサーバの図である。この図は、構成要素を論理上別々のものとして示すが、そのような図示は単に例示のためである。この図において示された構成要素を組み合わせることができるか、または別のソフトウェア、ファームウェアおよび/もしくはハードウェアに分割することができることは、当業者に明らかであろう。さらに、そのような構成要素が、それらがどのように組み合わせられるかまたは分割されるかにかかわらず、同じ電算処理装置で実行することができるか、または1つ以上のネットワークもしくは他の好適な通信手段によって接続される異なる電算処理装置間に分散することができることも当業者には明らかであろう。
示されるように、一旦セッション424がユーザに対して確立されると、ユーザ400はBIサーバ404に対して論理SQLクエリ402を出すことができる。クエリ402を受け取ると、BIサーバは、セッション424を検査して、ユーザのセッションの言語を判断することができる。言語が、ベーステーブル416においてデータを格納するために用いられる言語とは異なる場合、ルックアップ関数414を呼び出して、ベーステーブル416における値を、セッションの対応する言語に翻訳することができる。
ある実施例に従うと、ルックアップ関数414を実行するために、BIサーバは、ベーステーブルにおいて格納されたデータの翻訳された値を得るよう実行される物理SQLステートメント412を生成することができる。ある実施例に従うと、この物理SQLステートメント412は、翻訳を得るためにベーステーブルとルックアップテーブルとの結合動作を実行することができる。特に、示された例示ステートメントにおいては、BIサーバによって生成されたSQLは、和(QtySold)408の計算をまず実行し(ステップ1)、次いでステップ2で、ルックアップテーブルをステップ1の結果と結合する。
さまざまな実施例に従って、BIサーバは翻訳されたルックアップテーブルをサポートすることができる。たとえば、BIサーバの解析論管理者は、複数の言語に翻訳されたデータを含むスキーマの上にビジネスモデルを生成することができる。ユーザがログインの際にどの言語を指定するかに依って、ユーザはクエリ結果を自身の言語において見出すはずである。ユーザが、異なる言語を用いてログし、再び同じクエリを実行する場合、ユーザは翻訳されたデータを現在の言語について見るはずである。
ある実施例に従うと、スキーマは、英語における記述を含むProduct(製品)テーブルを含んでもよい。Productテーブルは、さらに、各言語依存列毎に言語非依存コードを含むことができる。たとえば、Category(カテゴリ)列は、対応するCategory_Code(カテゴリ_コード)列を有する。以下は、Productテーブルの内容の例である:
ある実施例に従うと、他の言語に対する記述は別の翻訳テーブル(ルックアップテーブル)に格納することができる。以下は、Product_Translations(製品_翻訳)テーブルおよびCategory_Translations(カテゴリ_翻訳)テーブルの内容の例である:
ある実施例に従うと、ユーザがログインの際に英語を指定する場合、Productテーブルが関与するクエリは、翻訳テーブルと結合すべきでなく、なぜならば、基本言語翻訳が、Product.Description(製品.記述)列およびProduct.Category(製品.カテゴリ)列に既にあるからである。しかしながらユーザがログインの際にドイツ語を指定する場合、Descriptionの論理列を参照するクエリは、ProductテーブルをProduct_Translationsテーブルと結合して、ドイツ語に対する翻訳された製品記述を得るべきである。Product_Translationsテーブルは、さらに、フィルタ処理されて、Language_Key = 'DE'を伴う行のみを選択しなければならない。同様に、Categoryの論理列が要求される場合、ProductテーブルはCategory_Translationsテーブルと結合されるべきである。DescriptionもCategoryも参照されない場合、物理SQLステートメントはどの翻訳テーブルも結合すべきではない。
ある実施例に従うと、BIサーバは言語セッション変数をサポートすることができる。たとえば、ある場合においては、オプションの2桁の国コードをともなう2桁のISO言語コード(たとえばzh−tw.)を含む、WEBLANGUAGEと呼ばれる、システム定義されたセッション変数をあたえることができる。このセッション変数は、ユーザがログオンするときに選択される言語に基づいて設定され得る。
いくつかの場合では、言語ルックアップテーブルにおいて用いられる言語コードは、WEBLANGUAGEセッション変数において格納された値とは異なり得る。その場合、管理者は、新しいセッション変数を生成して、WEBLANGUAGE変数におけるISO言語コードを、スキーマで用いられるすべての言語コードにマッピングすることができる。次いで、管理者は、翻訳ルックアップテーブルをフィルタ処理するとき、この新しいセッション変数を参照するだろう。
ある実施例に従うと、基本言語は所与のスキーマのデフォルト言語である。頻繁には、基本言語における翻訳は、残りの翻訳とは異なるテーブルに格納される。ある実施例に従うと、BIサーバは、基本言語が要求されるかどうかに依存して、クエリを最適化する。たとえば、ユーザの現在の言語が基本言語で、基本言語翻訳がベーステーブルに格納される場合、サーバはルックアップテーブルへの不必要な結合を生成すべきではない。他方、ユーザの現在の言語が基本言語でない場合、サーバは、ユーザの言語で翻訳を得るためにルックアップテーブルと結合する以外に、選択の余地はない。
ある実施例に従うと、BIサーバは、ユーザが翻訳された列でフィルタを生成することを可能にする。好ましくは、翻訳された列上の任意のフィルタが集計の前に評価されることになる。これは、翻訳ルックアップ結合が集計の前に実行されるだろうということを意味する。しかしながら、代替的実施例においては、フィルタは、集計前に、翻訳された列において評価されなくてもよい。代わりに、サーバは、フィルタをサブクエリに変換することを試みることができる。
ある実施例に従うと、あるルックアップテーブルオブジェクトは、管理者によって、BIサーバのビジネスモデルにおいて定義することができ、それは、翻訳ルックアップテーブルに対して必要なメタデータを定義することになる。1つの特定の実施例に従うと、ルックアップテーブルは以下の特別な属性をともなう論理テーブルである:
1)各ルックアップテーブルの主キーは、ルックアップを実行する'Lookup Key'(「ルックアップキー」)と見なされることになる。この特定の実施例に従うと、ルックアップは、すべてのルックアップキー列に対する値があたえられるときしか実行できない。
2)ルックアップキーは、通常の論理テーブルキーに匹敵する特別な属性を有する。ルックアップキーの列はオーダに敏感である。つまり、(Product_Code, Language_Key)および(Language_Key, Product_Code)は、2つの異なるルックアップキーと見なされることになる。ルックアップキー列のオーダは管理ツールUIにおいて指定することができる。ルックアップキーの列はすべてルックアップ関数において結合されるよう要求され得る。
3)ルックアップテーブルはルックアップキーを1つだけ有する。
4)ルックアップテーブルは少なくとも1つの値列を有する。たとえば、先に記載されたProduct_Translations_Tableにおいては、’Description’は値列であり、それは製品記述に対する実際の翻訳値を含む列である。
5)ルックアップキーから各値列への関数依存性がなければならない。言いかえれば、ルックアップキーを用いて値列を識別することができる。それは、さらに、ルックアップキーおよび値列は両方とも同じ物理テーブルに属すべきであることを示唆する。
6)ルックアップテーブルは、任意の他の論理テーブルに結合せずに、スタンドアロンであり得る。
ある実施例に従うと、ルックアップ関数は、ビジネスマッピング層において、翻訳された論理テーブル列の式の一部として用いることができる。1つの特定の実施例に従うと、ルックアップ関数の構文は、以下のとおりであり得る:
上記の実施例の構文に従って、ルックアップ関数を呼び出すいくつかの例が以下に示される:
1つの特定の実施例に従うと、ルックアップ関数は以下の属性を有する:
1)ルックアップ動作はDense(密)かまたはSparse(疎)のいずれかであり、それはキーワードDenseまたはSparseによって指定され得る。DenseまたはSparseのどれもあたえられない場合、デフォルト挙動は密なルックアップである。Denseルックアップについては、翻訳テーブルは内部結合を介してベーステーブルに結合されることになり、一方、SPARSE(疎)ルックアップについては、残された外部結合が実行されることになる。
2)第1のパラメータ(Dense/Sparseのキーワードの後のパラメータ)は、論理層において定義される有効なルックアップテーブルからの有効な値列でなければならない。
3)Sparseのキーワードがあたえられる場合、第2のパラメータはvalue_column(値_列)のベース値をあたえる列でなければならない。密なルックアップについては、このベース列は必要ではない。
4)expression_list(式_リスト)の式の数は、value_columnによって定義されるルックアップテーブルにおいて定義されるルックアップキー列の数と等しくあるべきである。式リストにおいて指定された式は、さらに、オーダに従って1つずつルックアップキー列と一致すべきである。たとえば、ルックアップテーブルProductName_TRANS(製品名_TRANS)に対するルックアップキーは(Product_code, Language_Key)であり、expression_listにおける式は(SnowflakeSales.Product.ProductID, VALUEOF(NQ_SESSION."LANGUAGE"))であり、ルックアップの意味は次のとおりである:Product_code = SnowflakeSales.Product.ProductID およびLanguage_Key = VALUEOF(NQ_SESSION."LANGUAGE")の条件で翻訳テーブルからProductNameの翻訳された値を返す。
ある実施例に従うと、BIサーバは、論理要求生成の後の方の段階においてルックアップ関数の呼出しを書き換えることができる。以下のテーブルは、1つの考えられ得る、非限定的なSQL生成方策を示す:
SQL生成方策上のさらなる詳細、および関連する資料は、米国仮特許出願第61/349,754号において見出すことができ、その全体を、それとともに提出された付録のすべてを含み、ここに引用により援用する。
図5は、この発明のさまざまな実施例に従うビジネスインテリジェンスサーバにおいて用いられる多言語サポートのフローチャート図である。この図は例示のために特定のシーケンスで機能上のステップを示すが、プロセスは必ずしもこの特定のオーダまたはステップに限定されない。当業者は、この図において示されたさまざまなステップは、並列して変更、再構成、実行され得るか、またはさまざまな態様で適合され得ることを十分に理解するだろう。さらに、あるステップまたはステップのシーケンスは、この発明の精神および範囲から逸脱することなく、このプロセスに追加するか、またはこのプロセスから省略することができることが理解される。
ステップ500において示されるように、BIサーバは、ベーステーブルに格納されるデータのセットにアクセスするようクエリを受け取る。クエリはユーザに対して確立されたセッション中に受け取られる。ステップ502において、BIサーバはセッション変数を検査し、セッションの言語は、ベーステーブルにデータを格納するよう用いられる言語とは異なる、と判断する。言語がベーステーブルにおいて用いられる言語と同じである場合には、翻訳またはルックアップは必要ではない。しかしながら、言語が異なる場合は、ルックアップ関数がステップ504において呼び出される。ルックアップ関数は、パラメータとして、ベーステーブルの列、ルックアップテーブルにおける値、およびデータを選択する式をとる。ステップ506において、BIサーバは、ルックアップ関数をSQLに書き換え、ベーステーブルとルックアップテーブルとの結合動作を実行する。結合動作は、セッションに対する言語において、ベーステーブルの行に対する翻訳された値をもたらす。
この開示に記載されるさまざまな前後関係の全体にわたって、この発明の実施例は、前述のシステムおよび方法を実施するよう構成された、コンピュータ装置、電算処理システムおよび機械読取可能媒体もさらに包含する。具体的に設計された集積回路または他の電子機器からなる実施例に加えて、この発明は、コンピュータ技術の熟練者には明らかであろうように、従来の汎用もしくはこの開示の教示に従ってプログラミングされた特殊化されたデジタルコンピュータまたはマイクロプロセッサを用いて、簡便に実施されてもよい。
適切なソフトウェアコーディングが、ソフトウェア技術の熟練者には明らかであろうように、この開示の教示に基づいて、熟練したプログラマによって容易に準備することができる。この発明は、さらに、当業者には容易に明らかであろうように、特定用途向け集積回路の準備によって、または従来の構成要素回路の適切なネットワークを相互接続することによって、実現されてもよい。
さまざまな実施例は、ここに呈示された特徴のいずれかを実行するように汎用または特殊化された電算処理プロセッサ/装置をプログラミングするよう用いることができる命令を格納した記憶媒体であるコンピュータプログラムプロダクトを含む。記憶媒体は:フロッピー(登録商標)ディスク、光ディスク、DVD、CD−ROM、マイクロドライブ、光磁気ディスク、ホログラフィストレージ、ROM、RAM、PRAMS、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリ装置、磁気または光カード、ナノシステム(分子メモリICを含む)を含む任意の種類の物理的媒体;ならびに命令および/もしくは情報を記憶するのに好適な任意の種類の媒体または装置の1つ以上含むことができるが、それらに限定はされない。コンピュータプログラムプロダクトは、全体または一部を、1つ以上の公共および/または私設ネットワークを介して送信することができ、その送信は、ここに呈示された特徴のいずれかを実行するために1つ以上のプロセッサによって用いることができる命令を含む。さまざまな実施例においては、送信は、複数個の別々の送信を含んでもよい。一実施例においては、コンピュータ読取可能記憶媒体は短期的ではない。
図6はここに記載されたこの発明のさまざまな実施例を実行するよう利用することができる電算処理装置の図である。ある実施例に従うと、コンピュータ600は、1つ以上のハードウェアプロセッサ610、ならびにリードオンリメモリ(ROM)620、ランダムアクセスメモリ(RAM)622、ハードディスクドライブ624、光ディスクドライブ626、632、および外部記憶へのユニバーサルシリアルバス(USB)インタフェース628を含むがそれらに限定はされない物理メモリを含むことができる。ある実施例に従うと、コンピュータ600は、さらに、キーボード612およびマウス614の組合せのような入力手段、ならびにモニタ616のような表示装置を利用することができる。さらに、コンピュータ610は、モデム、イーサネット(登録商標)カードまたは他の通信装置のような通信用インタフェース618により、他のコンピュータおよび同様の装置と通信することができる。図6に示された電算処理装置は、考えられ得るコンピュータのほんの一例であり、他の多くのそのような例がこれら実施例の範囲内で可能であることが注記される。
この発明の好ましい実施例の前述の記載は、例示および記載の目的に対してあたえられた。それは、網羅的であったり、またはこの発明を開示されたまさにその形態に限定することは、意図しない。多くの修正および変形が当業者には明らかになり得る。実施例はこの発明およびその実用化の原理について最もよく説明するために選択および記載され、それによって、関連する技術分野の他の当業者がこの発明を理解することを可能にする。

Claims (13)

  1. プロセッサと前記プロセッサに接続されるメモリとを含むコンピュータによって、データ照会および処理環境において多言語サポートをあたえるための方法であって、
    前記メモリに含まれるベーステーブルに格納されるデータのセットにアクセスするよう、クエリを、前記プロセッサによって受け取るステップを含み、前記クエリは少なくとも1人のユーザに対して確立されたセッション中に受け取られ、前記方法はさらに、
    前記セッションと関連付けられる言語は、前記ベーステーブルに前記データのセットを格納するよう用いられる言語とは異なる、と前記プロセッサによって判断するステップと、
    前記プロセッサによって前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行するステップとを含み、前記結合動作は、前記ベーステーブルの少なくとも1つの行に対する翻訳された値をもたらし、前記翻訳された値は、前記セッションと関連付けられる前記言語におけるものであり、
    前記プロセッサによってビジネスインテリジェンスサーバにおいてルックアップ関数を実行するステップをさらに含み、前記ルックアップ関数は、前記結合動作を実行する構造化照会言語(SQL)ステートメントに翻訳される、方法。
  2. プロセッサと前記プロセッサに接続されるメモリとを含むコンピュータによって、データ照会および処理環境において多言語サポートをあたえるための方法であって、
    前記メモリに含まれるベーステーブルに格納されるデータのセットにアクセスするよう、クエリを、前記プロセッサによって受け取るステップを含み、前記クエリは少なくとも1人のユーザに対して確立されたセッション中に受け取られ、前記方法はさらに、
    前記セッションと関連付けられる言語は、前記ベーステーブルに前記データのセットを格納するよう用いられる言語とは異なる、と前記プロセッサによって判断するステップと、
    前記プロセッサによって前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行するステップとを含み、前記結合動作は、前記ベーステーブルの少なくとも1つの行に対する翻訳された値をもたらし、前記翻訳された値は、前記セッションと関連付けられる前記言語におけるものであり、
    前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行するステップは、
    前記ルックアップテーブルは前記ベーステーブルにおけるすべてのレコードに対する翻訳を含む密なルックアップテーブルである、と前記プロセッサによって判断するステップと、
    前記プロセッサによって前記ベーステーブルと前記ルックアップテーブルとの内部結合を実行するステップとをさらに含む、方法。
  3. プロセッサと前記プロセッサに接続されるメモリとを含むコンピュータによって、データ照会および処理環境において多言語サポートをあたえるための方法であって、
    前記メモリに含まれるベーステーブルに格納されるデータのセットにアクセスするよう、クエリを、前記プロセッサによって受け取るステップを含み、前記クエリは少なくとも1人のユーザに対して確立されたセッション中に受け取られ、前記方法はさらに、
    前記セッションと関連付けられる言語は、前記ベーステーブルに前記データのセットを格納するよう用いられる言語とは異なる、と前記プロセッサによって判断するステップと、
    前記プロセッサによって前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行するステップとを含み、前記結合動作は、前記ベーステーブルの少なくとも1つの行に対する翻訳された値をもたらし、前記翻訳された値は、前記セッションと関連付けられる前記言語におけるものであり、
    前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行するステップは、
    前記ルックアップテーブルは、前記ベーステーブルにおけるレコードのサブセットのみに対する翻訳を含む、疎であるルックアップテーブルである、と前記プロセッサによって判断するステップと、
    前記プロセッサによって前記ベーステーブルと前記ルックアップテーブルとの外部結合を実行するステップとをさらに含み、前記ベーステーブルからの行は維持される、方法。
  4. プロセッサと前記プロセッサに接続されるメモリとを含むコンピュータによって、データ照会および処理環境において多言語サポートをあたえるための方法であって、
    前記メモリに含まれるベーステーブルに格納されるデータのセットにアクセスするよう、クエリを、前記プロセッサによって受け取るステップを含み、前記クエリは少なくとも1人のユーザに対して確立されたセッション中に受け取られ、前記方法はさらに、
    前記セッションと関連付けられる言語は、前記ベーステーブルに前記データのセットを格納するよう用いられる言語とは異なる、と前記プロセッサによって判断するステップと、
    前記プロセッサによって前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行するステップとを含み、前記結合動作は、前記ベーステーブルの少なくとも1つの行に対する翻訳された値をもたらし、前記翻訳された値は、前記セッションと関連付けられる前記言語におけるものであり、
    前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行するステップは、
    前記ルックアップテーブルは、前記ベーステーブルの少なくとも1つの特定のフィールドについては完全な翻訳を含むが、前記ベーステーブルのフィールドの少なくとも1つの他のフィールドについては部分的な翻訳のみを含む、密および疎の両方であるルックアップテーブルである、と前記プロセッサによって判断するステップと、
    前記プロセッサによって、疎または密の1つを指定するようルックアップ動作の属性を選定するステップとをさらに含み、疎であるルックアップは外部結合を介して前記ベーステーブルを前記ルックアップテーブルと接続し、密なルックアップは内部結合を介して前記ベーステーブルを前記ルックアップテーブルと接続する、方法。
  5. 前記プロセッサによって、前記ユーザの現在の言語によって前記ベーステーブルからの前記データを要求する前記クエリをフィルタ処理し、前記ユーザの現在の言語を適用して前記ルックアップテーブルから翻訳された値を検索するステップをさらに含む、請求項1〜4のいずれかに記載の方法。
  6. 別のルックアップテーブルが各ベーステーブルにつき実現され、前記ルックアップテーブルは、前記ベーステーブルにおけるレコードへの外国キー参照を含む、請求項1〜5のいずれかに記載の方法。
  7. 別のルックアップテーブルが前記ベーステーブルの各フィールドにつき実現される、請求項1〜6のいずれかに記載の方法。
  8. ビジネスインテリジェンス(BI)サーバが、複数の言語に翻訳されたデータを含むスキーマを実現し、どの言語がログインでユーザに関連付けられるかによって、クエリは、前記言語に従って、前記ルックアップテーブルを用いることにより、フィルタ処理される、請求項1〜7のいずれかに記載の方法。
  9. データ照会および処理環境において多言語サポートをあたえるためのシステムであって、
    データのセットを格納するためのデータソース、および
    ベーステーブルに格納されるデータのセットにアクセスするようクエリを受け取るビジネスインテリジェンス(BI)サーバを含み、前記クエリは前記BIサーバと少なくとも1人のユーザとの間において確立されたセッション中に受け取られ、
    前記BIサーバは、前記セッションと関連付けられる言語は、前記ベーステーブルに前記データのセットを格納するよう用いられる言語とは異なる、と判断して、前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行し、前記結合動作は、前記ベーステーブルの少なくとも1つの行に対する翻訳された値をもたらし、前記翻訳された値は、前記セッションと関連付けられる前記言語におけるものであり、
    前記ビジネスインテリジェンスサーバは、ルックアップ関数を実行し、前記ルックアップ関数は、前記結合動作を実行する構造化照会言語(SQL)ステートメントに翻訳される、システム。
  10. データ照会および処理環境において多言語サポートをあたえるためのシステムであって、
    データのセットを格納するためのデータソース、および
    ベーステーブルに格納されるデータのセットにアクセスするようクエリを受け取るビジネスインテリジェンス(BI)サーバを含み、前記クエリは前記BIサーバと少なくとも1人のユーザとの間において確立されたセッション中に受け取られ、
    前記BIサーバは、前記セッションと関連付けられる言語は、前記ベーステーブルに前記データのセットを格納するよう用いられる言語とは異なる、と判断して、前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行し、前記結合動作は、前記ベーステーブルの少なくとも1つの行に対する翻訳された値をもたらし、前記翻訳された値は、前記セッションと関連付けられる前記言語におけるものであり、
    前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行することは、
    前記ルックアップテーブルは前記ベーステーブルにおけるすべてのレコードに対する翻訳を含む密なルックアップテーブルである、判断することと、
    前記ベーステーブルと前記ルックアップテーブルとの内部結合を実行することとをさらに含む、システム。
  11. データ照会および処理環境において多言語サポートをあたえるためのシステムであって、
    データのセットを格納するためのデータソース、および
    ベーステーブルに格納されるデータのセットにアクセスするようクエリを受け取るビジネスインテリジェンス(BI)サーバを含み、前記クエリは前記BIサーバと少なくとも1人のユーザとの間において確立されたセッション中に受け取られ、
    前記BIサーバは、前記セッションと関連付けられる言語は、前記ベーステーブルに前記データのセットを格納するよう用いられる言語とは異なる、と判断して、前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行し、前記結合動作は、前記ベーステーブルの少なくとも1つの行に対する翻訳された値をもたらし、前記翻訳された値は、前記セッションと関連付けられる前記言語におけるものであり、
    前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行することは、
    前記ルックアップテーブルは、前記ベーステーブルにおけるレコードのサブセットのみに対する翻訳を含む、疎であるルックアップテーブルである、と判断することと、
    前記ベーステーブルと前記ルックアップテーブルとの外部結合を実行することとをさらに含み、前記ベーステーブルからの行は維持される、システム。
  12. データ照会および処理環境において多言語サポートをあたえるためのシステムであって、
    データのセットを格納するためのデータソース、および
    ベーステーブルに格納されるデータのセットにアクセスするようクエリを受け取るビジネスインテリジェンス(BI)サーバを含み、前記クエリは前記BIサーバと少なくとも1人のユーザとの間において確立されたセッション中に受け取られ、
    前記BIサーバは、前記セッションと関連付けられる言語は、前記ベーステーブルに前記データのセットを格納するよう用いられる言語とは異なる、と判断して、前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行し、前記結合動作は、前記ベーステーブルの少なくとも1つの行に対する翻訳された値をもたらし、前記翻訳された値は、前記セッションと関連付けられる前記言語におけるものであり、
    前記ベーステーブルと少なくとも1つのルックアップテーブルとの結合動作を実行することは、
    前記ルックアップテーブルは、前記ベーステーブルの少なくとも1つの特定のフィールドについては完全な翻訳を含むが、前記ベーステーブルのフィールドの少なくとも1つの他のフィールドについては部分的な翻訳のみを含む、密および疎の両方であるルックアップテーブルである、と判断することと、
    疎または密の1つを指定するようルックアップ動作の属性を選定することとをさらに含み、疎であるルックアップは外部結合を介して前記ベーステーブルを前記ルックアップテーブルと接続し、密なルックアップは内部結合を介して前記ベーステーブルを前記ルックアップテーブルと接続する、システム。
  13. 請求項1〜のいずれかに記載される方法をコンピュータに実行させるためのプログラム。
JP2013512647A 2010-05-28 2011-05-12 ビジネスインテリジェンスサーバとともに用いられるデータに対する多言語サポートを提供するためのシステムおよび方法 Active JP5873078B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US34975410P 2010-05-28 2010-05-28
US61/349,754 2010-05-28
US13/038,252 US11100098B2 (en) 2010-05-28 2011-03-01 Systems and methods for providing multilingual support for data used with a business intelligence server
US13/038,252 2011-03-01
PCT/US2011/036294 WO2011149681A1 (en) 2010-05-28 2011-05-12 Systems and methods for providing multilingual support for data used with a business intelligence server

Publications (3)

Publication Number Publication Date
JP2013527540A JP2013527540A (ja) 2013-06-27
JP2013527540A5 JP2013527540A5 (ja) 2014-06-26
JP5873078B2 true JP5873078B2 (ja) 2016-03-01

Family

ID=44121224

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013512647A Active JP5873078B2 (ja) 2010-05-28 2011-05-12 ビジネスインテリジェンスサーバとともに用いられるデータに対する多言語サポートを提供するためのシステムおよび方法

Country Status (5)

Country Link
US (1) US11100098B2 (ja)
EP (1) EP2577508B1 (ja)
JP (1) JP5873078B2 (ja)
CN (1) CN102918531B (ja)
WO (1) WO2011149681A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103218691B (zh) * 2013-04-26 2016-09-07 吉林市赢科信息技术有限责任公司 一种嵌入式商业智能信息管理系统及管理方法
JP5847344B1 (ja) 2015-03-24 2016-01-20 株式会社ギックス データ処理システム、データ処理方法、プログラム及びコンピュータ記憶媒体
JP6430642B2 (ja) * 2015-07-15 2018-11-28 三菱電機株式会社 表示制御装置および表示制御方法
US10460277B2 (en) * 2016-12-14 2019-10-29 Business Objects Software Limited Business intelligence language macros
US11036730B2 (en) * 2016-12-19 2021-06-15 Business Objects Software Limited Business intelligence language type representing result structure
CN110245267B (zh) * 2019-05-17 2023-08-11 天津大学 多用户视频流深度学习共享计算复用方法
CN111966727A (zh) * 2020-08-12 2020-11-20 北京海致网聚信息技术有限公司 基于Spark和Hive的分布式OLAP即席查询方法
CN113626465B (zh) * 2021-08-09 2023-06-20 瀚高基础软件股份有限公司 数据库及在postgresql数据库中实现会话级变量的方法

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5477451A (en) * 1991-07-25 1995-12-19 International Business Machines Corp. Method and system for natural language translation
JPH05233696A (ja) 1992-02-19 1993-09-10 Nippon Telegr & Teleph Corp <Ntt> データベース検索方法
US5528491A (en) 1992-08-31 1996-06-18 Language Engineering Corporation Apparatus and method for automated natural language translation
US5442782A (en) * 1993-08-13 1995-08-15 Peoplesoft, Inc. Providing information from a multilingual database of language-independent and language-dependent items
US5787410A (en) * 1996-02-20 1998-07-28 Oracle Corporation Method and apparatus for storing and retrieving data in multiple languages simultaneously using a fully-populated sub-table
US5956740A (en) 1996-10-23 1999-09-21 Iti, Inc. Document searching system for multilingual documents
US6018742A (en) * 1998-07-07 2000-01-25 Perigis Corporation Constructing a bifurcated database of context-dependent and context-independent data items
US7013289B2 (en) * 2001-02-21 2006-03-14 Michel Horn Global electronic commerce system
US20030056192A1 (en) 2001-05-24 2003-03-20 Burgess Allen G. Source code analysis system and method
US6952691B2 (en) * 2002-02-01 2005-10-04 International Business Machines Corporation Method and system for searching a multi-lingual database
US7853557B2 (en) * 2002-06-14 2010-12-14 Siebel Systems, Inc. Method and computer for responding to a query according to the language used
JP4355138B2 (ja) * 2002-12-13 2009-10-28 インターナショナル・ビジネス・マシーンズ・コーポレーション 翻訳サーバ、コラボレーションサーバ及びプログラム
US7151438B1 (en) 2003-08-06 2006-12-19 Unisys Corporation System and wireless device for providing real-time alerts in response to changes in business operational data
US20050044065A1 (en) * 2003-08-21 2005-02-24 International Business Machines Corporation Method and apparatus for enabling national language support of a database engine
US7444342B1 (en) 2004-08-06 2008-10-28 Unisys Corporation System for accessing and transforming data, information and data relational rules in a multi-dimensional database
US7440888B2 (en) * 2004-09-02 2008-10-21 International Business Machines Corporation Methods, systems and computer program products for national language support using a multi-language property file
US7373341B2 (en) * 2004-12-30 2008-05-13 Business Objects, S.A. Computer readable medium, method and apparatus for preserving filtering conditions to query multilingual data sources at various locales when regenerating a report
US7757227B2 (en) * 2005-03-18 2010-07-13 Microsoft Corporation Dynamic multilingual resource support for applications
US7991608B2 (en) * 2006-04-19 2011-08-02 Raytheon Company Multilingual data querying
US7853555B2 (en) * 2006-04-19 2010-12-14 Raytheon Company Enhancing multilingual data querying
WO2007133625A2 (en) * 2006-05-12 2007-11-22 Eij Group Llc Multi-lingual information retrieval
US7783724B2 (en) 2006-06-23 2010-08-24 International Business Machines Corporation System and method for delivering business intelligence data in a client/server architecture
US20080059412A1 (en) * 2006-08-31 2008-03-06 Tarin Stephen A Value-instance connectivity computer-implemented database
CA2576703C (en) 2007-02-02 2014-08-12 Cognos Incorporated System and method for optimizing business intelligence data queries within a client-server architecture
US7680780B2 (en) * 2007-04-06 2010-03-16 International Business Machines Corporation Techniques for processing data from a multilingual database
US7698264B2 (en) 2007-05-14 2010-04-13 International Business Machines Corporation System and method for sparsity removal
US8234298B2 (en) 2007-07-25 2012-07-31 International Business Machines Corporation System and method for determining driving factor in a data cube
US8200618B2 (en) 2007-11-02 2012-06-12 International Business Machines Corporation System and method for analyzing data in a report
US8078612B2 (en) * 2008-04-07 2011-12-13 Microsoft Corporation Providing data based on language choice

Also Published As

Publication number Publication date
EP2577508A1 (en) 2013-04-10
JP2013527540A (ja) 2013-06-27
WO2011149681A1 (en) 2011-12-01
CN102918531B (zh) 2016-11-16
US11100098B2 (en) 2021-08-24
EP2577508B1 (en) 2019-05-01
US20110295837A1 (en) 2011-12-01
CN102918531A (zh) 2013-02-06

Similar Documents

Publication Publication Date Title
JP5873078B2 (ja) ビジネスインテリジェンスサーバとともに用いられるデータに対する多言語サポートを提供するためのシステムおよび方法
US7836078B2 (en) Techniques for managing access to physical data via a data abstraction model
US20190251284A1 (en) Efficient data query and utilization through a semantic storage model
US20180060410A1 (en) System and method of applying globally unique identifiers to relate distributed data sources
US8762428B2 (en) Rapidly deploying virtual database applications using data model analysis
US7734657B2 (en) Containment hierarchy in a database system
US20160328406A1 (en) Interactive recommendation of data sets for data analysis
US20080016048A1 (en) Intelligent condition pruning for size minimization of dynamic, just in time tables
US20040093559A1 (en) Web client for viewing and interrogating enterprise data semantically
US8452808B2 (en) Automatic generation of virtual database schemas
US20070112586A1 (en) Clinical genomics merged repository and partial episode support with support abstract and semantic meaning preserving data sniffers
US20080228716A1 (en) System and method for accessing unstructured data using a structured database query environment
KR20090100425A (ko) 데이터베이스 관리 시스템에서 데이터 및 관련 온톨로지를 질의하는 방법, 장치 및 컴퓨터 프로그램 제품
US7099727B2 (en) Knowledge repository system for computing devices
US20080016047A1 (en) System and method for creating and populating dynamic, just in time, database tables
AU2020380139A1 (en) Data preparation using semantic roles
US7814127B2 (en) Natural language support for database applications
US20150058363A1 (en) Cloud-based enterprise content management system
US7130856B2 (en) Map and data location provider
Vasilyeva et al. Leveraging flexible data management with graph databases
US9047338B2 (en) Managing drill-through targets
Thirifays et al. E‐ARK Dissemination Information Package (DIP) Final Specification
Chung Effective Indexed Data for Mobile Service Management
Seligman et al. Galaxy: Encouraging Data Sharing Among Sources with Schema Variants
Zhang Mining Multiple Related Tables Using Object-Oriented Model

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140509

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140509

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150303

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150703

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150825

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151124

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: 20160105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160114

R150 Certificate of patent or registration of utility model

Ref document number: 5873078

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250