Nothing Special   »   [go: up one dir, main page]

JP2009146350A - サービス管理装置及びデータアクセス制御装置及びデータ検索方法 - Google Patents

サービス管理装置及びデータアクセス制御装置及びデータ検索方法 Download PDF

Info

Publication number
JP2009146350A
JP2009146350A JP2007325969A JP2007325969A JP2009146350A JP 2009146350 A JP2009146350 A JP 2009146350A JP 2007325969 A JP2007325969 A JP 2007325969A JP 2007325969 A JP2007325969 A JP 2007325969A JP 2009146350 A JP2009146350 A JP 2009146350A
Authority
JP
Japan
Prior art keywords
server
acl
store
drill
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007325969A
Other languages
English (en)
Inventor
Yoshiaki Takeda
義聡 竹田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2007325969A priority Critical patent/JP2009146350A/ja
Publication of JP2009146350A publication Critical patent/JP2009146350A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】マルチテナントのSaaSシステムにおいて、各テナントが個別にDBやDWHを持っている場合、あるテナントがシステム全体のデータ集計結果から各テナントの個別のデータへのドリルスルーを実行する際の処理効率を向上させることを目的とする。
【解決手段】サービス管理装置117は複数の店舗用SaaSサーバ101から収集した明細データを集計して全体集計結果115を生成し、当該明細データのうち、共通ACL126で全体集計結果115の要求元からのアクセスを許可することが示された明細データを蓄積する店舗用SaaSサーバ101を示すACLサブセット116を生成する。全体集計結果115の要求元の店舗用SaaSサーバ101は、全体集計結果115の一部からACLサブセット116で示された店舗用SaaSサーバ101に蓄積された明細データへのドリルスルーを実行する。
【選択図】図4

Description

本発明は、サービス管理装置及びデータアクセス制御装置及びデータ検索システム及びデータ検索方法に関するものである。
従来のパッケージS/W(ソフトウェア)の代替としてWebブラウザベースのUI(ユーザインタフェース)によりインターネット経由で全ての機能を提供するSaaS(Software・as・a・Service)が注目されている。マルチテナントのSaaSシステム(マルチテナントとは、同一システム内に複数サービスが共存している状態を指し、テナントは個々のサービスを指す)では、各テナントが個別にDB(データベース)やDWH(データウェアハウス)を持っている場合がある。
DBの一種である掲示板システムにおいて、ユーザ、及び、ユーザが属する少なくとも1レベルの階層のグループごとに、データベース、及び、データベースが属する少なくとも1レベルの階層のデータベースグループに対するアクセス権を設定し、データベースアクセス要求に対して、要求元となるユーザの階層構造、アクセス対象となるデータベースの階層構造、及び、上記アクセス権の設定内容を基に、アクセス権のチェックを行うものがある(例えば、特許文献1参照)。
特開平7−64844号公報
マルチテナントのSaaS(Software・as・a・Service)システムにおいて、各テナントが個別にDB(データベース)やDWH(データウェアハウス)を持っているものの一例として、複数の店舗からなるフランチャイズチェーン(FC)におけるSaaS利用を考える。一般にFCでは、店舗ごとに業務内容が異なるため、店舗ごとに別々のSaaSを契約する。一方、FCの親業者や地域のFC店舗管理監督者などにおいては、傘下の店舗の業務内容を把握するため、複数の店舗のSaaSにアクセスし、売上情報などについてテナントを横断して検索・集計を行いたいという要求がある。この際、データ分析を経営に生かすビジネスインテリジェンス(BI)の世界では、テナントを横断するFC全体の集計結果から見出される現象の原因追求のため、集計データ参照画面から個別の明細データを検索して参照するドリルスルー機能(個別明細データ検索機能)を提供するのが一般的である。個々の店舗においては、FC全体の売上などの集計結果を参照したいという要求がある一方、他店舗がFC全体の集計結果からドリルスルーする際、自店舗の詳細情報である明細は同じ管理地区に属さない他店舗には参照されたくないというニーズがある。
しかし、テナントごとにDBやDWHを持っているSaaSにおいては、個々のDBやDWHごとにアクセス制御情報を設定する必要があり、管理が煩雑である。図1に、この場合のSaaSシステム991の構成を示す。図1において、ACL(アクセス制御リスト)は、アクセス制御情報に相当する。ACL1、ACL2、ACL3は、店舗1用SaaSサーバ、店舗2用SaaSサーバ、店舗3用SaaSサーバがそれぞれACLを個別に管理している様子を示す。
これに対し、テナントを横断してのデータの検索・集計に必要なマスタ情報、及び、マスタ情報の要素間の階層構造情報を、FC内で共有するようにすることができる。この際、要素ごと、階層ごとに、アクセス権情報を設定できるようにする。図2に、この場合のSaaSシステム992の構成を示す。図2において、共通ACLは、マスタ情報、マスタ情報の要素間の階層構造情報、及び、マスタ情報に対するアクセス権情報を合わせたものに相当する。同じFCに属する店舗A1、A2、A3、・・・は、SaaSシステム992の提供するSaaSを契約している。このSaaSシステム992は、店舗A1、A2、A3、・・・のそれぞれに対応するSaaSサーバを用意し、サービスを提供する(SaaSサーバは論理的に分かれていればよく、物理的には同一のサーバを仮想マシン(VM)などにより論理的に分割することにより実現されていてもよい)。各店舗の情報を管理するDBはSaaSサーバごとに物理的又は論理的に分けて実現されるのが一般的である。またSaaSシステム992は、SaaS監視管理サーバを用いて各ユーザ対応のSaaSサーバの監視・管理を行う。
このように共通ACLを用いた構成とすることにより、FC全体の横断的な集計結果に対するドリルスルーを行うために、店舗ごとのDBやDWHに対するアクセス制御情報をSaaSサーバごとに個別に管理する必要がなくなり、共通ACLにFC内のアクセス制御情報を集約して管理を簡略化できる。SaaSシステム992において、各店舗のユーザ又は管理者は、端末から、各店舗のSaaSサーバ上にあるDBへの参照アクセス権利を持つSaaS監視管理サーバに対して、FC全体の売上などの集計を要求する。SaaS監視管理サーバは、各店舗のSaaSサーバに対して問い合わせを行った後、各店舗個別の集計結果を受け取り、全体集計を実行する。そして、SaaS監視管理サーバは、FC全体の集計結果を、全体集計要求元の各店舗用SaaSサーバに送り、各店舗のユーザは各店舗用SaaSサーバ上のFC全体の集計結果を参照する。
BIにおいては、FC全体の集計結果を基にした、複数店舗のDBへのドリルスルー時には、リアルタイム性を重視して各店舗からの結果を取得次第ドリルスルー要求元に返したいという要望がある。しかしながら、SaaSシステム992では、SaaS監視管理サーバに結果が集約され、リアルタイム性が落ちるという課題がある。例えば、図2において、店舗A1が、FC全体の集計結果に基づくドリルスルー要求を出すものとすると、店舗A1は、共通ACLを保管しているSaaS監視管理サーバに対して、ドリルスルー要求を出す。ここで、ドリルスルーのリアルタイム性を向上させるためには、各店舗用SaaSサーバ上のDBに対する検索結果を直接ドリルスルー要求元(店舗A1)に戻したいが、各店舗用SaaSサーバに対する検索要求はSaaS監視管理サーバより出されているため、応答もSaaS監視管理サーバに対して返され、SaaS監視管理サーバが全ての店舗の結果をまとめてドリルスルー要求元に返すことになる。
これに対し、店舗A1が、各店舗用SaaSサーバに対して、ドリルスルー要求を出し、共通ACLの確認はドリルスルー要求を受け付けた各店舗用SaaSサーバにて実施する構成をとることにより、ドリルスルーの結果を取得次第、ドリルスルー要求元(店舗A1)に表示することが可能になる。このとき、ドリルスルー要求元のSaaSサーバに結果受取スレッドを生成し、非同期に結果を各店舗用SaaSサーバから受け取り、表示するように実装することができる。図3に、この場合の処理の概略を示す。図3の処理の流れは下記の通りである。
(1)ドリルスルー要求元(店舗A1)は、各店舗に対し、ドリルスルーを要求する。
(2)各店舗は、SaaS監視管理サーバ上の共通ACLを参照し、ドリルスルー要求元(店舗A1)に対し、自己の持つDBへのアクセスを許可してよいか確認する。
(3)SaaS監視管理サーバは、各店舗に対し、各店舗の持つDBへのドリルスルー要求元(店舗A1)のアクセス可否を通知する。
(4)(3)でアクセス可となった店舗は、ドリルスルー要求元(店舗A1)に対し、ドリルスルー結果を送付する。
図3において、ドリルスルー要求元(店舗A1)は共通ACLを持たないため、ドリルスルー要求は全店舗のSaaSサーバに対して行うことになり、無駄な通信トラフィックが発生するという課題がある。仮に、この課題に対処するためにドリルスルー要求元に共通ACLの複製を配置すると、共通ACLの管理コストの問題が発生する。
上記のようなSaaSシステムにおいて、ドリルスルー要求元のサービス契約に対する料金滞納の有無、利用時間・データ量の制限超過の有無など、利用状況に応じてドリルスルーに対する制限をかけることが必要な場合がある。
本発明は、例えば、マルチテナントのSaaSシステムにおいて、各テナントが個別にDBやDWHを持っている場合、あるテナントがシステム全体のデータ集計結果から各テナントの個別のデータへのドリルスルーを実行する際の処理効率を向上させることを目的とする。具体的には、本発明は、ドリルスルーを実行するテナントが、非同期通信により他のテナントからドリルスルーの結果を受け取ることを可能にしつつ、アクセス権を持たない他のテナントへドリルスルーの結果を無駄に問い合わせることを防ぐことを目的とする。また、本発明は、ドリルスルーを実行するテナントが、他のテナントにドリルスルーの結果を要求する際に、サービス契約に対する利用状況に応じた制限をかけることを目的とする。
本発明の一の態様に係るサービス管理装置は、
複数の種類の明細データを蓄積する複数のサーバの1つ(以下、「第1サーバ」という)から、集計対象とする明細データの種類を指定した集計要求をネットワーク経由で受信し、前記複数のサーバから、各サーバに蓄積された当該種類の明細データをネットワーク経由で収集し、当該明細データを処理装置により集計して集計データを生成する集計実行部と、
各サーバから他のサーバに蓄積された明細データへのアクセスの許否をサーバごとに示す共通ACL(アクセス制御リスト)を記憶装置により記憶する共通ACL管理データベースと、
前記集計実行部が集計した明細データのうち、前記共通ACL管理データベースに記憶された共通ACLで前記第1サーバからのアクセスを許可することが示された明細データを蓄積するサーバ(以下、「第2サーバ」という)を示すACLサブセットを処理装置により生成するドリルスルー用ACLサブセット生成部とを備え、
前記集計実行部は、前記第1サーバに対し、生成した集計データと前記ドリルスルー用ACLサブセット生成部が生成したACLサブセットとをネットワーク経由で送信し、当該集計データの一部から当該ACLサブセットで示された第2サーバに蓄積された明細データへのドリルスルーを前記第1サーバに実行させることを特徴とする。
本発明の一の態様によれば、サービス管理装置が、第1サーバから、集計対象とする明細データの種類を指定した集計要求をネットワーク経由で受信し、複数のサーバから、各サーバに蓄積された当該種類の明細データをネットワーク経由で収集し、当該明細データを集計して集計データを生成し、当該明細データのうち、共通ACL管理データベースに記憶された共通ACLで前記第1サーバからのアクセスを許可することが示された明細データを蓄積する第2サーバを示すACLサブセットを生成し、前記第1サーバに対し、生成した集計データとACLサブセットとを送信し、当該集計データの一部から当該ACLサブセットで示された第2サーバに蓄積された明細データへのドリルスルーを前記第1サーバに実行させることにより、例えば、マルチテナントのSaaS(Software・as・a・Service)システムにおいて、各テナントが個別にDB(データベース)やDWH(データウェアハウス)を持っている場合、あるテナントがシステム全体のデータ集計結果から各テナントの個別のデータへのドリルスルーを実行する際の処理効率が向上する。
以下、本発明の実施の形態について、図を用いて説明する。
実施の形態1.
図4は、SaaSシステム100(本実施の形態に係るデータ検索システム)の構成を示すブロック図である。SaaSは、前述したように、Software・as・a・Serviceの略である。
図4において、SaaSシステム100は、複数の店舗用SaaSサーバ101(本実施の形態における複数のサーバ)、少なくとも1つのSaaS監視管理サーバ102、複数のユーザ端末127を備える。これらのサーバ及び端末は、互いにネットワーク200経由でデータ通信を行う。
店舗用SaaSサーバ101は、店舗用SaaS機能を有するデータアクセス制御装置103を具備するサービスサーバである。データアクセス制御装置103は、作業用記憶領域104、サービスコンテンツDB105(データベース)、横断的集計要求部106(本実施の形態における集計要求部)、横断的集計応答部107(本実施の形態における集計応答部)、ドリルスルー要求部108、ACLサブセット管理部109(ACLは、前述したように、アクセス制御リストのことである)、ドリルスルー応答部110を備える。ドリルスルー要求部108は、条件抽出部111、ACLサブセット解釈部112、結果受取部113、結果表示部114を有する。各部の動作については後述する。
図示していないが、店舗用SaaSサーバ101は、記憶装置、処理装置、入力装置、出力装置などのハードウェア資源を備える。データアクセス制御装置103の作業用記憶領域104は、店舗用SaaSサーバ101の記憶装置(例えば、揮発性メモリ)に実装され、後述する全体集計結果115及びACLサブセット116を格納するために用いられる。データアクセス制御装置103のサービスコンテンツDB105は、店舗用SaaSサーバ101の記憶装置(例えば、ハードディスク)に実装され、複数の種類の明細データを蓄積する。明細データは、各店舗用SaaSサーバ101が提供する個別のサービスに係るデータである。本実施の形態では、サービスコンテンツDB105内の1つの表(テーブル)につき、1種類の明細データを記録するものとする。
SaaS監視管理サーバ102は、SaaS監視管理機能を有するサービス管理装置117を具備するサービス監視管理サーバである。サービス管理装置117は、共通ACL管理DB119(データベース)、横断的集計実行部120(本実施の形態における集計実行部)、共通ACL管理部121、ドリルスルー用ACLサブセット生成部122を備える。各部の動作については後述する。
図示していないが、SaaS監視管理サーバ102は、記憶装置、処理装置、入力装置、出力装置などのハードウェア資源を備える。サービス管理装置117の共通ACL管理DB119は、SaaS監視管理サーバ102の記憶装置(例えば、ハードディスク)に実装され、共通ACL126を保管する。サービス管理装置117の共通ACL管理DB119は、複数の種類の共通ACL126を保管してもよい。共通ACL126は、各店舗用SaaSサーバ101から他の店舗用SaaSサーバ101のサービスコンテンツDB105に蓄積された明細データへのアクセスの許否(共通アクセス制御情報)を、店舗用SaaSサーバ101ごとに示すデータである。本実施の形態では、共通ACL管理DB119内の複数の表が、1種類の共通ACL126を記録するものとする。
SaaSシステム100において、SaaS監視管理サーバ102が具備するサービス管理装置117は、全体集計結果115の全体集計要求元(複数の店舗用SaaSサーバ101のいずれか1つが具備するデータアクセス制御装置103)への送付時に、共通ACL126で定義された共通アクセス制御情報のうち、集計条件に応じて絞り込まれる共通アクセス制御情報内の要素(店舗用SaaSサーバ101)よりなるサブセット(ドリルスルー対象となるデータをドリルスルー要求元に対して返すことが許可されている店舗用SaaSサーバ101のリスト)を併せて送付する。これにより、全体集計要求元のデータアクセス制御装置103は、全体集計結果115とともに受け取った共通ACL126のサブセット(全体集計要求元のデータアクセス制御装置103では、作業用記憶領域104にACLサブセット116として保管される)を基に、ドリルスルー要求を送る店舗用SaaSサーバ101(店舗)の数を絞ることができる。全体集計要求元(ドリルスルーの要求元でもある)のデータアクセス制御装置103は、共通ACL126を持たないため、図3のSaaSシステム992と同じ方式を用いるのであれば、図3の(1)のように、ドリルスルー要求を全店舗に対して送らなければならなかった。一方、本実施の形態に係るSaaSシステム100では、上記のように、全体集計要求元のデータアクセス制御装置103は共通ACL126の部分情報(サブセット)であるACLサブセット116を用いて、ドリルスルー要求を送付する店舗を絞り込むことが可能となる。このような構成をとることにより、前述したような非同期通信によるドリルスルー結果の受け取りを可能にしつつ、ドリルスルーの要求元がアクセス権を持たない店舗に対して無駄に送付する要求の数を抑えることができる。また、最小限のアクセス制御情報を店舗用SaaSサーバ101にコピーする構成をとることにより、共通ACL126の複製を各店舗用SaaSサーバ101に配置する構成と比べて管理コストを抑えることができる。
図5は、店舗用SaaSサーバ101、SaaS監視管理サーバ102のハードウェア資源の一例を示す図である。
図5において、店舗用SaaSサーバ101、SaaS監視管理サーバ102は、いずれもコンピュータであり、CRT(Cathode・Ray・Tube)やLCD(液晶ディスプレイ)の表示画面を有する表示装置901、キーボード902(K/B)、マウス903、FDD904(Flexible・Disk・Drive)、CDD905(Compact・Disc・Drive)、プリンタ装置906などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
店舗用SaaSサーバ101、SaaS監視管理サーバ102は、プログラムを実行するCPU911(Central・Processing・Unit)を備えている。CPU911は、処理装置の一例である。CPU911は、バス912を介してROM913(Read・Only・Memory)、RAM914(Random・Access・Memory)、通信ボード915、表示装置901、キーボード902、マウス903、FDD904、CDD905、プリンタ装置906、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920の代わりに、光ディスク装置、メモリカードリーダライタなどの記憶媒体が用いられてもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。通信ボード915、キーボード902、マウス903、FDD904、CDD905などは、入力装置の一例である。また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
通信ボード915は、LAN(ローカルエリアネットワーク)などに接続されている。通信ボード915は、LANに限らず、インターネット、あるいは、IP−VPN(Internet・Protocol・Virtual・Private・Network)、広域LAN、ATM(Asynchronous・Transfer・Mode)ネットワークなどのWAN(ワイドエリアネットワーク)などに接続されていても構わない。LAN、インターネット、WANは、ネットワーク200の一例である。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921、ウィンドウシステム922により実行される。プログラム群923には、本実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。また、ファイル群924には、本実施の形態の説明において、「〜データ」、「〜情報」、「〜ID(識別子)」、「〜フラグ」、「〜結果」として説明するデータや情報や信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」や「〜テーブル」の各項目として記憶されている。「〜ファイル」や「〜データベース」や「〜テーブル」は、ディスクやメモリなどの記憶媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶されたデータや情報や信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・制御・出力・印刷・表示などのCPU911の処理(動作)に用いられる。抽出・検索・参照・比較・演算・計算・制御・出力・印刷・表示などのCPU911の処理中、データや情報や信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、本実施の形態の説明において用いるブロック図やフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号は、RAM914などのメモリ、FDD904のフレキシブルディスク(FD)、CDD905のコンパクトディスク(CD)、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク(MD)、DVD(Digital・Versatile・Disc)などの記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体により伝送される。
また、本実施の形態の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜工程」、「〜手順」、「〜処理」であってもよい。即ち、「〜部」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。あるいは、ソフトウェアのみ、あるいは、素子・デバイス・基板・配線などのハードウェアのみ、あるいは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実現されていても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVDなどの記録媒体に記憶される。このプログラムはCPU911により読み出され、CPU911により実行される。即ち、プログラムは、本実施の形態の説明で述べる「〜部」としてコンピュータを機能させるものである。あるいは、本実施の形態の説明で述べる「〜部」の手順や方法をコンピュータに実行させるものである。
以下では、説明をより具体的にするため、店舗用SaaSサーバ101、SaaS監視管理サーバ102が図5に例示したコンピュータとハードウェア資源により実現されているものとする。
図6に、本実施の形態における横断的集計実行時の処理シーケンスを示す。
図6において、複数の店舗用SaaSサーバ101の1つが全体集計要求元(横断的集計の実行後は、全体集計結果115を基にしたドリルスルーの要求元になる)の店舗用SaaSサーバ101(本実施の形態における第1サーバ)となる。ここでは、この店舗用SaaSサーバ101が設置された店舗を要求元店舗128と呼ぶ。また、他の1つ以上の店舗用SaaSサーバ101がそれぞれ設置された店舗を他店舗129と呼ぶ。
(1)要求元店舗128の店舗用SaaSサーバ101において、データアクセス制御装置103の横断的集計要求部106は、SaaS監視管理サーバ102のサービス管理装置117に対し、集計対象とする明細データの種類(集計対象及び集計条件)を指定した集計要求(全体集計要求)をネットワーク200経由で送信する。SaaS監視管理サーバ102において、サービス管理装置117の横断的集計実行部120は、要求元店舗128の店舗用SaaSサーバ101から集計要求をネットワーク200経由で受信する。即ち、横断的集計要求部106は、SaaS監視管理サーバ102の横断的集計実行部120に対して横断的集計(全体集計)を要求する。
(2)SaaS監視管理サーバ102において、サービス管理装置117の横断的集計実行部120は、各店舗(要求元店舗128及び他店舗129)の店舗用SaaSサーバ101のデータアクセス制御装置103に対し、(1)の集計要求で指定された種類の明細データを要求する明細要求をネットワーク200経由で送信する。各店舗の店舗用SaaSサーバ101において、データアクセス制御装置103の横断的集計応答部107は、SaaS監視管理サーバ102から明細要求をネットワーク200経由で受信する。即ち、(1)で要求元店舗128から全体集計要求を受け取った横断的集計実行部120は、要求元店舗128を含む全ての店舗(図6では、代表として、要求元店舗128からの横断的集計の要求に応答する他店舗129を示している)の横断的集計応答部107に対し、集計実行(既に持っている集計結果でもよい)を要求する。
(3)各店舗の店舗用SaaSサーバ101において、データアクセス制御装置103の横断的集計応答部107は、(2)の明細要求で指定された種類の明細データをサービスコンテンツDB105から取得し、SaaS監視管理サーバ102のサービス管理装置117に対し、ネットワーク200経由で送信する。SaaS監視管理サーバ102において、サービス管理装置117の横断的集計実行部120は、各店舗の店舗用SaaSサーバ101から、明細データをネットワーク200経由で収集する。即ち、要求元店舗128及び他店舗129の横断的集計応答部107は、(2)の明細要求に対し、集計結果(明細データ)を返す。
(4)SaaS監視管理サーバ102において、サービス管理装置117の横断的集計実行部120は、(3)で収集した明細データをCPU911(処理装置)により集計して全体集計結果115(集計データ)を生成する。即ち、SaaS監視管理サーバ102の横断的集計実行部120は、(3)で得られた結果より全体集計結果115を生成する。
(5)SaaS監視管理サーバ102において、サービス管理装置117の横断的集計実行部120は、ドリルスルー用ACLサブセット生成部122に対し、ACLサブセット116の生成を要求する。
(6)SaaS監視管理サーバ102において、サービス管理装置117のドリルスルー用ACLサブセット生成部122は、共通ACL管理部121に対し、(4)の全体集計結果115に関係する共通ACL126の情報を要求する。(4)の全体集計結果115に関係する共通ACL126の情報とは、具体的には、(4)で横断的集計実行部120が集計した明細データのうち、共通ACL管理DB119に記憶された共通ACL126で要求元店舗128の店舗用SaaSサーバ101からのアクセスを許可することが示された明細データを蓄積する店舗用SaaSサーバ101(本実施の形態における第2サーバ)を示す情報である。
(7)SaaS監視管理サーバ102において、サービス管理装置117の共通ACL管理部121は、ドリルスルー用ACLサブセット生成部122に対し、(4)の全体集計結果115に関係する共通ACL126の情報を返す。
(8)SaaS監視管理サーバ102において、サービス管理装置117のドリルスルー用ACLサブセット生成部122は、(7)の情報に基づいて、(4)で横断的集計実行部120が集計した明細データのうち、共通ACL管理DB119に記憶された共通ACL126で要求元店舗128の店舗用SaaSサーバ101からのアクセスを許可することが示された明細データを蓄積する店舗用SaaSサーバ101を示すACLサブセット116をCPU911により生成する。即ち、SaaS監視管理サーバ102のドリルスルー用ACLサブセット生成部122は、(7)で受け取った共通ACL126の情報を基にACLサブセット116を生成する。
(9)SaaS監視管理サーバ102において、サービス管理装置117のドリルスルー用ACLサブセット生成部122は、(8)で生成したACLサブセット116を横断的集計実行部120に返す。
(10)SaaS監視管理サーバ102において、サービス管理装置117の横断的集計実行部120は、(4)の全体集計結果115及び(9)で受け取ったACLサブセット116をマージする。
(11)SaaS監視管理サーバ102において、サービス管理装置117の横断的集計実行部120は、要求元店舗128の店舗用SaaSサーバ101に対し、(4)で生成した全体集計結果115と(8)でドリルスルー用ACLサブセット生成部122が生成したACLサブセット116とをネットワーク200経由で送信する。要求元店舗128の店舗用SaaSサーバ101において、データアクセス制御装置103の横断的集計要求部106は、SaaS監視管理サーバ102から全体集計結果115とACLサブセット116とをネットワーク200経由で受信する。即ち、SaaS監視管理サーバ102の横断的集計実行部120は、(10)で生成したデータを、要求元店舗128の横断的集計要求部106に返す。
(12)要求元店舗128の店舗用SaaSサーバ101において、データアクセス制御装置103の横断的集計要求部106は、(11)で受け取ったデータよりACLサブセット116を取り出し、ACLサブセット管理部109に渡す。
(13)要求元店舗128の店舗用SaaSサーバ101において、データアクセス制御装置103のACLサブセット管理部109は、作業用記憶領域104に(12)のACLサブセット116を格納し、横断的集計要求部106に対して応答を返す。この応答を受け取った横断的集計要求部106は、表示装置901(出力装置)により、例えば全体集計結果115を独自の画面に表示してもよいし、例えば“Microsoft Excel(登録商標)”のような表計算ソフトウェアに対して全体集計結果115を出力することにより、全体集計結果115を表計算ソフトウェアの画面に表示してもよい。
以下、共通ACL126の構造について説明する。
本実施の形態では、SaaS監視管理サーバ102において、サービス管理装置117の共通ACL管理DB119は、複数の店舗用SaaSサーバ101を分類した複数のグループ(具体的には、階層構造において、店舗用SaaSサーバ101より上位の階層中の要素)のうち、各店舗用SaaSサーバ101が所属するグループを店舗用SaaSサーバ101ごとに示す共通ACL126を記憶する。そして、サービス管理装置117のドリルスルー用ACLサブセット生成部122は、図6の(4)で横断的集計実行部120が集計した明細データが蓄積された店舗用SaaSサーバ101のうち、共通ACL管理DB119に記憶された共通ACL126で要求元店舗128の店舗用SaaSサーバ101と同じグループに所属することが示された店舗用SaaSサーバ101を示すACLサブセット116を生成する。
共通ACL126の論理構造の例を図7に示す。図7において、地方別・地区別集計用共通ACL130は、地方・地区・店舗の3つの論理的な階層を持つ共通ACL126である。この地方別・地区別集計用共通ACL130は、例えば、神奈川地区の情報には店舗A1、店舗A2がアクセスできることを示している。このような共通ACL126は、例えば通常のリレーショナルDBの表(テーブル)を用いて実現することができる。図7に示した地方別・地区別集計用共通ACL130を、リレーショナルDBで実現した例を図8に示す。図8において、地方テーブル131、地区テーブル132、店舗テーブル133は、図7に示した地方別・地区別集計用共通ACL130のそれぞれの階層に対応した表である。
以下、SaaS監視管理サーバ102のサービス管理装置117によるACLサブセット116の生成処理の詳細について説明する。
SaaS監視管理サーバ102において、サービス管理装置117のドリルスルー用ACLサブセット生成部122は、共通ACL126の持つ要素である複数の店舗(店舗用SaaSサーバ101)のうち、ドリルスルー要求の対象となり得るサービスコンテンツDB105内の表に対して要求元の店舗用SaaSサーバ101がアクセス可能な店舗の情報だけをACLサブセット116として取り出す。そして、サービス管理装置117の横断的集計実行部120は、このACLサブセット116を全体集計結果115に添付する。ACLサブセット116として取り出される情報は、共通ACL126の階層(図7の例では地方・地区・店舗)を全体集計要求における集計条件と関連付けておき、全体集計実行時において集計条件中に現れる共通ACL126の階層中の要素又は当該要素より下位の階層中の要素だけを評価することにより得られる。本実施の形態では、集計条件で階層が指定されると、その階層中の要素ごとに明細データの数値が集計され、その結果が全体集計結果115となる。集計条件で指定された階層が店舗を要素とする階層であれば、要求元の店舗は、自己の明細データのみに対して全体集計結果115からのドリルスルーが可能である。集計条件で指定された階層が店舗を要素とする階層より上位であれば、要求元の店舗は、自己及び自己と同じ要素に属する店舗の明細データに対して全体集計結果115からのドリルスルーが可能である。
例えば、図7の例で、集計条件に「地区」が指定されている場合、店舗A1がドリルスルーを要求したとすると、集計条件で指定された階層が店舗を要素とする階層より上位であるため、店舗A1が属する地区である「神奈川」に属する店舗のみが、ドリルスルー対象となっているデータをドリルスルー要求元の店舗A1に対して返せることになる。よって、店舗A1、店舗A2のみの情報がACLサブセット116として取り出される。また、例えば、図7の例で、集計条件に「地方」が指定されている場合、店舗A1がドリルスルーを要求したとすると、集計条件で指定された階層が店舗を要素とする階層より上位であるため、店舗A1が属する地方である「関東」に属する店舗のみが、ドリルスルー対象となっているデータをドリルスルー要求元の店舗A1に対して返せることになる。よって、店舗A1、店舗A2、店舗A3のみの情報がACLサブセット116として取り出される。ただし、この例では、集計条件に「地方」が指定されている場合と集計条件に「地区」が指定されている場合とでドリルスルー対象になり得る範囲に差異が生じる。このような差異をなくすため、例えば、図7の例で、集計条件に「地方」が指定されている場合、店舗A1がドリルスルーを要求したとすると、「関東」に属する地区のうち、店舗A1が属する地区である「神奈川」に属する店舗のみが、ドリルスルー対象となっているデータをドリルスルー要求元の店舗A1に対して返せることにしてもよい。この場合は、集計条件に「地区」が指定されている場合と同様に、店舗A1、店舗A2のみの情報がACLサブセット116として取り出される。
ここで、例えば全体集計要求はSQL(Structured・Query・Language)のクエリとして実現でき、このとき、上述の集計条件はSQLの“GROUP BY”句として実現できる。この場合、共通ACL126の階層名を全体集計要求の集計条件(“GROUP BY”句のキー)として用いることができる構成にしておけば、全体集計要求の集計条件より、当該要求に対する全体集計結果115を基にしたドリルスルーにおいてドリルスルー要求元(全体集計要求元でもある)が最大限アクセス可能な店舗のリストを上述のようにACLサブセット116として取り出すことができる。
また、サービスコンテンツDB105内の表と共通ACL126との対応付けは、例えば、それぞれの種類の共通ACL126とサービスコンテンツDB105内のそれぞれの表との関連付け情報を共通ACL126又はサービスコンテンツDB105内の表の一部などとして管理することにより実現できる。あるいは、後述する実施の形態2において図15に示す分析サービスマスタ124のように、サービスコンテンツDB105内の表と共通ACL126との関係付けを示す情報を管理してもよい。逆に、例えば、サービスコンテンツDB105内の表と共通ACL126の一部又は全部について関連付けを行わず、全体集計要求元の指定した集計条件に対応する共通ACL126のみを適用することも可能である。ただし、この場合、ある集計条件を指定するとドリルスルーで検索できなかったデータが別の集計条件を指定するとドリルスルーで検索できるようになることになり、データのアクセス制御としては不都合な場合もある。このため、例えば、ある表に対して最低限適用することが必要な共通ACL126は表と関連付けておき、特別なデータに対する共通ACL126は集計条件とのみ関連付けるように構成してもよい。
また、ある1つの表に対し、複数の共通ACL126を適用する場合、例えば、当該表に適用される各共通ACL126に含まれる共通要素のみアクセス可能として扱うことができる。あるいは、例えば、共通ACL126の当該表への適用の優先度をつけ、優先度の高い共通ACL126のみ適用するように構成することもできる。以下では、前者の構成を前提として説明する。
なお、複数の表に対して同時にドリルスルーを要求する場合は、各表にアクセス可能な店舗の最大範囲を、ACLサブセット116として扱うように構成することができる。これは、ACLサブセット116によって、ドリルスルー要求元が全体集計要求の集計条件に対して最大限アクセス可能な範囲の情報を伝達できればよいからである。
図9は、サービス管理装置117のドリルスルー用ACLサブセット生成部122の動作を示すフローチャートである。
図9において、まず、ドリルスルー用ACLサブセット生成部122は、全体集計要求元の店舗(この後、全体集計結果を基にしたドリルスルーの要求元になる)の要求に含まれ、集計対象となっているサービスコンテンツDB105内の表を抽出する(ステップS101)。例えば、この要求はSQLのクエリとして実現でき、集計対象の表は、当該クエリのうち“FROM”句で指定された表を抽出することにより実現できる。続いて、ドリルスルー用ACLサブセット生成部122は、ステップS101で抽出した全ての表に対して、ステップS103以降の処理を実行する(ステップS102)。
ドリルスルー用ACLサブセット生成部122は、ステップS102以降の処理で対象となっている表に適用する共通ACL126があるかどうかを判断する(ステップS103)。ステップS103で処理対象となっている表に適用する共通ACL126がある場合、ドリルスルー用ACLサブセット生成部122は、当該共通ACL126の階層及び下位の階層に対してステップS105、S106の処理を実行する(ステップS104)。例えば、図7に示した地方別・地区別集計用共通ACL130が処理対象となっている表に適用するものであれば、「地方」、「地区」、「店舗」の順に、ステップS105、S106の処理が実行される。
ドリルスルー用ACLサブセット生成部122は、全体集計要求元が指定した集計条件に、ステップS104で処理対象となっている共通ACL126の階層と対応するものがあるかどうか確認し(ステップS105)、対応するものがある場合は、当該共通ACL126から生成する一時リストに、当該階層の要素で下位にドリルスルー要求元を含むものの最下位層の要素を追加する(ステップS106)。例えば、図7に示した地方別・地区別集計用共通ACL130の「地区」が処理対象となっている階層であり、集計条件で「地区」が指定され、全体集計要求元が店舗A1であれば、一時リストに、「神奈川」の最下位層の要素である店舗A1、店舗A2が追加される。ここで、全体集計要求元が指定する集計条件は、例えばSQLの“GROUP BY”句として実現でき、ステップS105の判断は、この“GROUP BY”句のキーが、処理対象となっている共通ACL126の階層名と一致するかどうかを判断することとして実現できる。ドリルスルー用ACLサブセット生成部122は、前述の一時リストを、表ごと、表に適用される共通ACL126ごとに生成し、後述するステップS107、S108にてマージすることでACLサブセット116を生成する。
ドリルスルー用ACLサブセット生成部122は、ステップS105で、全体集計要求元が指定した集計条件に処理対象となっている共通ACL126の階層と対応するものがない場合は、ステップS104において次の階層の処理に進む。また、ドリルスルー用ACLサブセット生成部122は、ステップS103で、処理対象となっている表に適用する共通ACL126がない場合は、ステップS102において全体集計要求に含まれる次の表の処理に進む。
ステップS104〜S106のループを終えると、ドリルスルー用ACLサブセット生成部122は、処理対象となっている表に適用する各共通ACL126から生成した一時リスト群に共通する要素群を、当該表から生成する一時リストに格納する(ステップS107)。例えば、図7に示した地方別・地区別集計用共通ACL130から生成した一時リストに店舗A1、店舗A2が含まれ、他の共通ACL126から生成した一時リストに店舗A1、店舗A2、店舗A3が含まれていれば、当該表から生成する一時リストには店舗A1、店舗A2のみが格納される。
また、ステップS102〜S107までのループを終えると、ドリルスルー用ACLサブセット生成部122は、各表から生成した一時リストのいずれかに含まれる要素の集合を、ACLサブセット116にする(ステップS108)。例えば、図7の例で、ある表から生成した一時リストに店舗A1、店舗A2が含まれ、他の表から生成した一時リストに店舗A2、店舗A3が含まれていれば、ACLサブセット116には店舗A1、店舗A2、店舗A3が含まれることとなる。
なお、図9では、ACLサブセット116の生成手順として、ドリルスルー要求元店舗が最大限アクセス可能な店舗のリストを生成する処理のフローを示したが、過去に生成したACLサブセット116のキャッシュを用いるなど、より簡便な方法でACLサブセット116を生成することも可能である。また、ACLサブセット116は、ドリルスルー要求元店舗が最大限アクセス可能な店舗を包含する情報を示すものであれば、どのような形態をとっても構わない。
図10に、本実施の形態におけるドリルスルー実行時の処理シーケンスを示す。
図10において、複数の店舗用SaaSサーバ101の1つが全体集計結果115を基にしたドリルスルーの要求元の店舗用SaaSサーバ101(本実施の形態における第1サーバ)となる。ここでは、図6と同様に、この店舗用SaaSサーバ101が設置された店舗を要求元店舗134と呼ぶ。また、図6の(11)で横断的集計要求部106が受信したACLサブセット116に示された店舗用SaaSサーバ101(本実施の形態における第2サーバ)が設置された店舗を他店舗135と呼ぶ。
(1)要求元店舗134の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー要求部108は、図6の(11)で横断的集計要求部106が受信した全体集計結果115のうち、ドリルスルー対象とする部分を指定した入力を通信ボード915(入力装置)によりユーザ端末127からネットワーク200経由で受け付ける。具体的には、ドリルスルー要求部108の条件抽出部111は、ユーザ端末127の入力より、ドリルスルーの条件(選択条件)を抽出し、ACLサブセット解釈部112に送付する。
(2)要求元店舗134の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー要求部108のACLサブセット解釈部112は、ACLサブセット管理部109に対し、ACLサブセット116の取り出しを要求する。
(3)要求元店舗134の店舗用SaaSサーバ101において、データアクセス制御装置103のACLサブセット管理部109は、(2)の要求に対し、ドリルスルーの基となる全体集計結果115に適用するACLサブセット116を取り出し、ドリルスルー要求部108のACLサブセット解釈部112に送る。
(4)要求元店舗134の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー要求部108のACLサブセット解釈部112は、ドリルスルー要求を送付する店舗の数だけ、ドリルスルー要求部108の結果受取部113を呼び出す。これは、例えばスレッドごとに結果受取部113を実行することにより実現することができる。
(5)要求元店舗134の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー要求部108は、他店舗135の店舗用SaaSサーバ101に対し、(1)の入力で指定された部分に対応する明細データを指定したドリルスルー要求をネットワーク200経由で送信する。他店舗135の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー応答部110は、要求元店舗134の店舗用SaaSサーバ101からドリルスルー要求をネットワーク200経由で受信する。具体的には、要求元店舗134のドリルスルー要求部108の結果受取部113は、要求元店舗134からのドリルスルー要求に応答する他店舗135のドリルスルー応答部110に対し、ドリルスルー要求を送付する。
(6)他店舗135の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー応答部110は、SaaS監視管理サーバ102のサービス管理装置117に対し、(5)のドリルスルー要求で指定された明細データを指定した確認要求をネットワーク200経由で送信する。SaaS監視管理サーバ102において、サービス管理装置117の共通ACL管理部121は、他店舗135の店舗用SaaSサーバ101から確認要求をネットワーク200経由で受信する。即ち、他店舗135のドリルスルー応答部110は、SaaS監視管理サーバ102の共通ACL管理部121に対し、要求元店舗134にアクセスを許可してよいか確認する。
(7)SaaS監視管理サーバ102において、サービス管理装置117の共通ACL管理部121は、共通ACL126で(6)の確認要求で指定された明細データへのアクセスを許可することが示されているか否かをCPU911(処理装置)により確認し、他店舗135の店舗用SaaSサーバ101に対し、当該確認結果をネットワーク200経由で送信する。他店舗135の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー応答部110は、SaaS監視管理サーバ102から確認結果をネットワーク200経由で受信する。即ち、SaaS監視管理サーバ102の共通ACL管理部121は、(6)の確認要求で参照される共通ACL126を確認し、要求元店舗134のアクセス可否を他店舗135のドリルスルー応答部110に通知する。
(8)他店舗135の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー応答部110は、(7)の確認結果に基づいて、(5)のドリルスルー要求で指定された明細データをサービスコンテンツDB105から取得する。即ち、(7)でアクセス可となった場合、他店舗135のドリルスルー応答部110は、他店舗135のサービスコンテンツDB105に対し、ドリルスルーのクエリを発行する。
(9)他店舗135の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー応答部110は、要求元店舗134の店舗用SaaSサーバ101に対し、(8)の明細データをネットワーク200経由で送信する。要求元店舗134の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー要求部108は、他店舗135の店舗用SaaSサーバ101から、当該明細データをネットワーク200経由で非同期通信により受信する。具体的には、他店舗135のドリルスルー応答部110は、(8)で1レコードずつクエリの結果を取得すると、要求元店舗134の結果受取部113を呼び出し、クエリの結果を渡す。ここで、非同期的に1レコードずつ渡すために、例えばこの(9)の処理はHTTP(HyperText・Transfer・Protocol)リクエストとして構成することができる。
(10)(9)で他店舗135のドリルスルー応答部110から要求元店舗134の結果受取部113に対する呼び出しが、HTTPリクエストのように呼び出し要求で実現されている場合、要求元店舗134の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー要求部108の結果受取部113は、ダミーの応答(例えばHTTPレスポンス)を返すことにより、非同期的なドリルスルー結果の受け取りを実現できる。
(11)要求元店舗134の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー要求部108の結果受取部113は、(9)で1レコードずつクエリの結果を取得すると、ドリルスルー要求部108の結果表示部114を呼び出す。
(12)要求元店舗134の店舗用SaaSサーバ101において、データアクセス制御装置103のドリルスルー要求部108の結果表示部114は、ドリルスルー結果を表示する。このとき、ドリルスルー要求部108の結果表示部114は、図6の(13)と同様に、表示装置901(出力装置)により、例えばドリルスルー結果を独自の画面に表示してもよいし、例えば“Microsoft Excel(登録商標)”のような表計算ソフトウェアに対してドリルスルー結果を出力することにより、ドリルスルー結果を表計算ソフトウェアの画面に表示してもよい。
図11に、全体集計結果115の例を示す。図6の(13)において、要求元店舗128の店舗用SaaSサーバ101の横断的集計要求部106が、例えば“Microsoft Excel(登録商標)”に対して全体集計結果115を出力した場合、図10の(1)において、要求元店舗134の店舗用SaaSサーバ101の条件抽出部111は、例えば“Microsoft Excel(登録商標)”のマクロやアドインを用いて、ユーザの指定するドリルスルーの条件を抽出することができる。例えば、図11において太枠で示したセルをユーザが選択した場合、条件抽出部111は、そのセルの属する行の値を読み取ることにより、ドリルスルーの条件として「2007年9月の関東地方神奈川地区のスナック菓子の売上」が指定されたことを抽出することができる。
図12は、ドリルスルー要求部108の条件抽出部111の動作を示すフローチャートである。
図12において、条件抽出部111は、ユーザの指定するドリルスルーの条件を抽出する(ステップS201)。例えば、図11において太枠で示したセルに対応する「2007年9月の関東地方神奈川地区のスナック菓子の売上」という条件を抽出する。次に、条件抽出部111は、ドリルスルーの条件をSQLの“FROM”句、“WHERE”句に変換する(ステップS202)。図11の例では、文字列“FROM 売上”、“WHERE 年=2007 & 月=9 & 地方=関東 & 地区=神奈川”を生成する。ここで、通常のドリルスルーでは詳細分析対象となるサービスコンテンツDB105の表の全ての列を選択して表示するため、“SELECT”句を生成する必要はないが、条件抽出部111は、表示する列を選択する処理を行ってもよい。最後に、条件抽出部111は、ステップS202で生成した文字列をACLサブセット解釈部112に送付する(ステップS203)。この文字列は、条件抽出部111が現在参照している全体集計結果115に付随するACLサブセット116中の店舗に対して、ドリルスルー要求部108の結果受取部113がドリルスルー要求の一部として送付する。
以上のように、本実施の形態によれば、例えば、マルチテナントのSaaSシステムにおいて、各テナントが個別にDBやDWH(データウェアハウス)を持っている場合、あるテナントがシステム全体のデータ集計結果から各テナントの個別のデータへのドリルスルー(全体集計結果を基にした詳細なデータの問い合わせ)を実行する際の処理効率が向上する。具体的には、ドリルスルーの実行時に、非同期的なドリルスルー結果の受け取りを可能にしつつ、ドリルスルーの要求元がアクセス権を持たないテナントへ無駄な問い合わせを送付することを防ぐことが可能になる。
上記のように、本実施の形態に係るデータ検索システムは、
個別のサービスを提供するサービスサーバ、複数のサービスサーバを監視管理するためのサービス監視管理サーバを備え、
サービス監視管理サーバにより用いられるサービス管理装置として、
複数のサービスサーバのそれぞれが保有するデータのマスタ情報、マスタ情報の要素間の階層構造情報、マスタ情報に対するアクセス権情報を一体化した情報(共通アクセス制御情報)をサービス監視管理サーバに集約して管理し、サービス利用者によるサービスサーバ上のデータに対するアクセス要求に当たっては、サービス利用者の利用しているサービスサーバに対し、集計条件に対応する共通アクセス制御情報内の階層の下位に属するサービスサーバのリストよりなる部分情報をコピーすることを特徴とするサービス管理装置を有する。
また、上記データ検索システムは、
サービスサーバにより用いられるデータアクセス制御装置として、
当該システムにおいて上記サービス管理装置を利用しているサービス監視管理サーバより受け取った共通アクセス制御情報の部分情報を用いて、サービスサーバ自身又は当該システムを構成する他のサービスサーバに対するアクセス要求を送付することを特徴とするデータアクセス制御装置を有する。
また、上記データ検索システムは、
サービスサーバにおいては上記データアクセス制御装置を用い、サービス監視管理サーバにおいては上記データアクセス制御装置を用いることにより、複数のサービスサーバのそれぞれが保有するデータを横断的に集計した結果を基に、集計結果に付随する共通アクセス制御情報の部分集合を利用して、個別明細データ検索要求を送付するサービスサーバの数を絞り込むことを特徴とする。
また、上記データ検索システムは、
詳細な個別明細データ検索要求に対する結果を、検索要求元のサービスサーバが検索結果を送付するサービスサーバとの間で同期をとらずに表示することを特徴とする。
実施の形態2.
本実施の形態について、主に実施の形態1との差異を説明する。
図13は、SaaSシステム100の構成を示すブロック図である。
図13において、SaaS監視管理サーバ102のサービス管理装置117は、実施の形態1で図4に示した構成要素のほか、サービス管理DB118(データベース)を備える。サービス管理装置117のサービス管理DB118は、SaaS監視管理サーバ102の記憶装置(例えば、ハードディスク)に実装され、少なくとも、分析サービス契約123、分析サービスマスタ124、利用状況125の3つの表を持つ。
本実施の形態における横断的集計実行時の処理シーケンスは、実施の形態1で図6に示したものと同様である。
本実施の形態では、SaaS監視管理サーバ102において、サービス管理装置117の共通ACL管理DB119は、共通ACL129の中に、各店舗用SaaSサーバ101から他の店舗用SaaSサーバ101に蓄積された各種類の明細データへのアクセスの許否を店舗用SaaSサーバ101と明細データの種類との組み合わせごとに示す例外リストを記憶装置により記憶する。そして、サービス管理装置117のドリルスルー用ACLサブセット生成部122は、図6の(4)で横断的集計実行部120が集計した明細データが蓄積された店舗用SaaSサーバ101のうち、共通ACL管理DB119に記憶された共通ACL129で要求元店舗128の店舗用SaaSサーバ101と同じグループに所属することが示された店舗用SaaSサーバ101に加えて、共通ACL管理DB119に記憶された共通ACL129で要求元店舗128の店舗用SaaSサーバ101と異なるグループに所属することが示された店舗用SaaSサーバ101であって、共通ACL管理DB119に記憶された例外リストで要求元店舗128の店舗用SaaSサーバ101からのアクセスを許可することが示された、図6の(4)で横断的集計実行部120が集計した明細データと同じ種類の明細データを蓄積する店舗用SaaSサーバ101を示すACLサブセット116を生成する。
実施の形態1で図7に示した地方別・地区別集計用共通ACL130を、リレーショナルDBで実現した例を図14に示す。図14において、地方テーブル131、地区テーブル132、店舗テーブル133は、実施の形態1の図8と同様に、図7に示した地方別・地区別集計用共通ACL130のそれぞれの階層に対応した表である。本実施の形態では、共通ACL126がそれぞれ例外リストを持ち、地方別・地区別集計用共通ACL130も1つの例外リストを持つ。
例外リストは、ドリルスルー要求元である店舗のサービス契約に対する料金滞納の有無、利用時間・データ量の制限超過の有無など、利用状況により要求元の店舗がドリルスルー可能な場合のみ評価される。例えば、各店舗は、SaaSのサービスにて「地方別・地区別売上分析」を契約している場合のみ、他店舗の管理するDBを参照可能であり、その場合、SaaS監視管理サーバ102は、ドリルスルー時のアクセス制御において、店舗テーブル133の一部である例外リストを評価するものとする。例外リストは、サービスコンテンツDB105の表名のリスト136(本実施の形態における表リスト)、及び、各表に対応づけられた、各店舗がアクセス可能な他店舗のリスト137(本実施の形態における要素リスト)よりなる。
各店舗のサービス契約に関する情報は、SaaS監視管理サーバ102の持つサービス管理DB118により管理する。
図15に、サービス管理DB118の表である分析サービス契約123及び分析サービスマスタ124の例を示す。
図15において、分析サービス契約123は、各店舗が契約している分析サービスの情報を持つ。図15の例では、分析サービス契約123は、店舗A1が「売上分析」、「在庫分析」の各分析サービスを契約していることを示している。また、店舗A2がいずれの分析サービスも契約していないことを示している。分析サービスマスタ24は、各分析サービスが、サービスコンテンツDB105のどの表に対する集計を許可し、ドリルスルー時にどの共通ACL126によるアクセス制御を行うかを示す情報を持つ。図15の例では、分析サービスマスタ24は、「売上分析」サービスについて、図16に例示するサービスコンテンツDB105の売上テーブル138に対する集計を許可し、共通ACL126として「地域」、「商品」、「組織」、「日時」を適用することを示している。また、「在庫分析」サービスについて、図16に例示するサービスコンテンツDB105の在庫テーブル139に対する集計を許可し、共通ACL126として「地域」、「商品」、「組織」、「日時」を適用することを示している。また、分析サービスマスタ24は、「店舗詳細分析」サービスについて、図16に例示するサービスコンテンツDB105の店舗詳細テーブル140に対する集計を許可し、共通ACL126として「地域」、「組織」、「日時」を適用することを示している。
以下では、図16〜図18を利用して、各分析サービスにおけるアクセス制御の例を示す。
図16に、サービスコンテンツDB105の表である売上テーブル138、在庫テーブル139、店舗詳細テーブル140の例を示す。この例では、売上テーブル138は、店舗名、売上日時、商品、単価、個数、金額を保持するよう構成されている。また、在庫テーブル139は、店舗名、商品、購入日、仕入元、個数、保持期限を保持するよう構成されている。また、店舗詳細テーブル140は、店舗名、売場面積、社員数、アルバイト数、住所を保持するよう構成されている。
図17に、共通ACL126の例として、商品別集計用共通ACL141を示す。この例では、商品別集計用共通ACL141は、大分類・小分類・取扱店舗の3階層よりなる。例えば、商品別集計用共通ACL141を、図16に示した売上テーブル138に適用し、ドリルスルー要求元の店舗が扱わない商品については原則として他店舗へのドリルスルーを許可しないような構成をとることができる。図17において、店舗A1は、菓子・パン・アルコールを取り扱っているが、筆記具は取り扱っていないものとする。店舗A2は菓子・パンは取り扱っているが、アルコール・筆記具は取り扱っていないものとする。店舗A3は菓子・筆記具を取り扱っているが、パン・アルコールは取り扱っていないものとする。商品別集計用共通ACL141を、図16に示した売上テーブル138に適用することにより、店舗A1は、店舗A2の菓子・パンの売上情報、店舗A3の菓子の売上情報にアクセス可能となる。また、商品別集計用共通ACL141を、例えば図7に示した地方別・地区別集計用共通ACL130とともに、図16に示した売上テーブル138に適用する場合、店舗A1は店舗A2の菓子・パンの売上情報にアクセス可能となるが、店舗A3の売上情報にはアクセスできなくなる。
図18に、共通ACL126の例として、組織別集計用共通ACL142を示す。この例では、組織別集計用共通ACL142は、事業部・店舗形態・店舗の3階層よりなる。例えば、組織別集計用共通ACL142を、図16に示した売上テーブル138や在庫テーブル139に適用し、所属する事業部の異なる店舗からのドリルスルー要求に対してはアクセスを許可しないような構成をとることができる。図18において、店舗A1と店舗A2とは互いの売上情報、在庫情報に対してドリルスルーできるが、店舗A1及び店舗A2と店舗A3とは互いのデータに対してドリルスルーできないようにすることができる。
図19に、サービス管理DB118の表である利用状況125の例を示す。
図19において、利用状況125は、「契約者名」(店舗、又は、地区や地域の責任者など)、「料金支払日」、「当月利用時間」、「最終利用開始日時」、「最終利用終了日時」の各列により構成されている。SaaS監視管理サーバ102は、ある店舗が全体集計の要求元である場合、当該店舗が図15に示した分析サービス契約123において契約しているサービスに関し、図19に示した利用状況125にて当該店舗のサービス契約に対する料金滞納の有無、利用時間・データ量の制限超過の有無などを確認し、契約条件上サービスを利用可能な場合にのみ、図14に示した例外リストに含まれる対象に対するアクセスを許可する。変形例として、ある店舗がサービス利用時間に基づく従量課金契約をしている場合、サービス管理DB118中に記憶した従量課金契約タイプに関する情報を参照して利用制限を確認するように構成することもできる。
図20は、サービス管理装置117のドリルスルー用ACLサブセット生成部122の動作を示すフローチャートである。
図20において、ステップS301〜S306は、実施の形態1の図9におけるステップS101〜S106と同様である。また、図20において、ステップS309、S310は、実施の形態1の図9におけるステップS107、S108と同様である。
ステップS306の後、ドリルスルー用ACLサブセット生成部122は、全体集計要求元の店舗(ユーザ)のサービス契約状況に応じて、当該ユーザが例外リストを参照可能かどうか判断する(ステップS307)。ドリルスルー用ACLサブセット生成部122は、当該ユーザが例外リストを参照可能であると判断した場合、例外リストの参照処理を実行する(ステップS308)。ドリルスルー用ACLサブセット生成部122は、ステップS307で、当該ユーザが例外リストを参照できないと判断した場合、ステップS302において全体集計要求に含まれる次の表の処理に進む。
図21は、図20におけるステップS307の詳細な動作を示すフローチャートである。
図21において、ドリルスルー用ACLサブセット生成部122は、サービス管理DB118の分析サービス契約123を参照し(ステップS401)、全体集計要求元の店舗(ユーザ)が分析サービスを契約しているかどうか判断する(ステップS402)。当該ユーザが分析サービスを契約している場合、ドリルスルー用ACLサブセット生成部122は、サービス管理DB118の利用状況125を参照し(ステップS403)、契約内容に従って料金滞納、利用時間の超過などがないかどうか確認する(ステップS404)。この判断はSaaSの個別事情により条件を追加・削除してもよい。
ステップS402、S404の両条件が真(YES)の場合、ドリルスルー用ACLサブセット生成部122は、当該ユーザが契約している全ての分析サービスに対してステップS406〜S410の処理をする(ステップS405)。
ドリルスルー用ACLサブセット生成部122は、サービス管理DB118の分析サービスマスタ124を参照し(ステップS406)、列「表」に全体集計対象が含まれているかどうかを判断する(ステップS407)。列「表」に全体集計対象の(全体集計結果115を基にしたドリルスルー要求対象になる)表が含まれている場合、ドリルスルー用ACLサブセット生成部122は、図20のステップS304〜S308の処理対象となっている共通ACL126を含む、契約済の分析サービスがあるかどうかを確認し(ステップS408)、このステップS408の確認結果が真(YES)である場合、図20のステップS304〜S308の処理対象となっている共通ACL126の例外リストが参照可能であると判断する(ステップS409)。
ドリルスルー用ACLサブセット生成部122は、ステップS402でユーザが分析サービスを契約していないと判断した場合、ステップS404で当該ユーザが料金滞納、利用時間の超過などの問題を起こしており、分析サービスを利用させることができないと判断した場合、ステップS407でサービス管理DB118の分析サービスマスタ124の列「表」に全体集計対象が含まれていない場合、ステップS408で当該ユーザが図20のステップS304〜S308の処理対象となっている共通ACL126を含む分析サービスが契約していないと判断した場合、いずれにおいても当該共通ACL126の例外リストが参照不可であるか、又は、参照不要であると判断する(ステップS410)。
例えば、店舗A1の店舗用SaaSサーバ101が、集計対象として図16に示した売上テーブル138を指定し、集計条件として図7の地方別・地区別集計用共通ACL130(図15に示した分析サービスマスタ124の共通ACL126「地域」に相当する)の「地区」を指定して全体集計を要求した場合、ドリルスルー用ACLサブセット生成部122は、店舗A1の利用状況がサービス契約に反しない限り、地方別・地区別集計用共通ACL130の例外リストは参照可能であると判断する。これは、図15に示した分析サービス契約123において、店舗A1が「売上分析」サービスを契約していることが示されており、分析サービスマスタ124において、売上テーブル138が「売上分析」サービスの処理対象であり、地方別・地区別集計用共通ACL130が売上テーブル138に適用される共通ACL126として設定されているからである。一方、例えば、店舗A2の店舗用SaaSサーバ101が、同様の全体集計を要求した場合、ドリルスルー用ACLサブセット生成部122は、店舗A2の利用状況に関わらず、地方別・地区別集計用共通ACL130の例外リストは参照不可であると判断する。これは、図15に示した分析サービス契約123において、店舗A2が「売上分析」サービスを契約していないことが示されているからである。また、例えば、図19に示した利用状況125において、店舗A1の当月利用時間は100時間である。この店舗A1が「1ヵ月の利用時間累計が50時間以内」のサービス契約をしている場合、ドリルスルー用ACLサブセット生成部122は、ステップS404からステップS410に進み、共通ACL126の例外リストは参照不可であると判断する。また、例えば、店舗A1が図15に示した分析サービスマスタ124の列「表」にない借入金テーブルなどに関する全体集計を要求した場合、ドリルスルー用ACLサブセット生成部122は、ステップS407からステップS410に進み、共通ACL126の例外リストは参照不可であると判断する。また、例えば、店舗A1が売上テーブル138に対して図15に示した分析サービスマスタ124に存在しない共通ACL126「営業時間帯」を適用するような全体集計を要求した場合、ドリルスルー用ACLサブセット生成部122は、ステップS408からステップS410に進み、共通ACL126の例外リストは参照不可であると判断する。
図22は、図20におけるステップS308の詳細な動作を示すフローチャートである。
図22において、ドリルスルー用ACLサブセット生成部122は、例外リストの表リストに含まれる各表に対して(ステップS501)、全体集計要求(当該全体集計の対象は、当該全体集計結果115を基にしたドリルスルー要求の対象になる)に含まれる表であるかを判断する(ステップS502)。ドリルスルー用ACLサブセット生成部122は、対象となる表が全体集計要求に含まれる表であると判断した場合、ステップS502〜S505の処理を実行する。
ドリルスルー用ACLサブセット生成部122は、対象となる表に対応する要素リストの持つ要素に対して(ステップS503)、図20のステップS306における一時リストに既に含まれている要素かどうかを確認する(ステップS504)。ドリルスルー用ACLサブセット生成部122は、対象となる要素が当該一時リストに含まれていない場合は、図20のステップS306における一時リストに当該要素を追加する(ステップS505)。ドリルスルー用ACLサブセット生成部122は、ステップS502で対象となる表が全体集計要求に含まれていない表であると判断した場合、あるいは、ステップS504で対象となる要素が既に当該一時リストに含まれていると判断した場合は、ステップS501で次の表に対する処理に進む。なお、図22において、例えば図20のステップS305において集計条件に対応すると判断された共通ACL126の階層において、その下位に全体集計要求元を含む要素に付随する例外リストに対して適用するように構成できる。あるいは、例えば、上記要素及びより下位の要素に付随する例外リストに対して適用するように構成してもよい。
例えば、店舗A1の店舗用SaaSサーバ101が、集計対象として図16に示した売上テーブル138を指定し、集計条件として図14に示した例外リストを含む地方別・地区別集計用共通ACL130の「地区」を指定して全体集計を要求した場合、前述したように、ドリルスルー用ACLサブセット生成部122は、店舗A1の利用状況がサービス契約に反しない限り、地方別・地区別集計用共通ACL130の例外リストは参照可能であると判断する。このとき、例外リストが参照されなければ、店舗A1の店舗用SaaSサーバ101は、店舗A1自身及び店舗A2の明細データのみにアクセス可能である。しかし、例外リストが参照される場合、ステップS502で売上テーブル138が全体集計の対象となっているため、ドリルスルー用ACLサブセット生成部122は、図14に示した例外リストの表名のリスト136から、売上テーブル138に対応する他店舗のリスト137を取得し、ステップS503〜S505の処理を実行する。この他店舗のリスト137には、店舗A2と店舗A4が含まれているが、店舗A2については、ドリルスルー用ACLサブセット生成部122は、ステップS504で図20のステップS306における一時リストに既に含まれている店舗であると判断するため、ステップS505の処理は実行しない。一方、店舗A4については、ドリルスルー用ACLサブセット生成部122は、ステップS503で図20のステップS306における一時リストに含まれていない店舗であると判断するため、ステップS505で店舗A4を当該一時リストに追加する。このように、例外リストが参照された場合、店舗A1の店舗用SaaSサーバ101は、店舗A1及び店舗A2の明細データだけでなく、例外的に、店舗A4の明細データにもアクセス(ドリルスルー)可能となる。
以上のように、本実施の形態によれば、例えば、マルチテナントのSaaSシステムにおいて、各テナントが個別にDBやDWH(データウェアハウス)を持っている場合、各テナントのドリルスルー要求について、サービス契約に対する利用状況に応じた制限をかけることが可能となる。
上記のように、本実施の形態に係るデータ検索システムは、
個別のサービスを提供するサービスサーバ、複数のサービスサーバを監視管理するためのサービス監視管理サーバを備え、
サービス監視管理サーバにより用いられるサービス管理装置として、
複数のサービスサーバのそれぞれが保有するデータのマスタ情報、マスタ情報の要素間の階層構造情報、マスタ情報に対するアクセス権情報を一体化した情報(共通アクセス制御情報)をサービス監視管理サーバに集約して管理し、サービス利用者によるサービスサーバ上のデータに対するアクセス要求に当たっては、サービス利用者の利用しているサービスサーバに対し、集計条件に対応する共通アクセス制御情報内の階層の下位に属するサービスサーバのリストよりなる部分情報をコピーし、
さらに、共通アクセス制御情報において、アクセス制御の例外を例外リストにより管理し、当該例外リストは、当該ユーザが当該例外リストの利用に係るサービス契約を行っており、また当該ユーザのサービス利用状況がサービス利用契約に定める利用規定に従っている場合のみ評価を行うことを特徴とするサービス管理装置を有する。
また、上記データ検索システムは、
サービス監視管理サーバにおいては上記サービス管理装置を用いることにより、集計結果に付随する共通アクセス制御情報の部分集合を利用して、個別明細データ検索要求を送付するサービスサーバの数を絞り込む際に、アクセス制御の例外については、当該ユーザが当該例外の利用に係るサービス契約を行っており、当該ユーザのサービス利用状況がサービス利用契約に定める利用規定に従っている場合のみ可能とすることを特徴とする。
また、上記データ検索システムは、
詳細な個別明細データ検索要求に対する結果を、検索要求元のサービスサーバが検索結果を送付するサービスサーバとの間で同期をとらずに表示することを特徴とする。
以上、本発明の実施の形態について説明したが、これらのうち、2つ以上の実施の形態を組み合わせて実施しても構わない。あるいは、これらのうち、1つの実施の形態を部分的に実施しても構わない。あるいは、これらのうち、2つ以上の実施の形態を部分的に組み合わせて実施しても構わない。
SaaSシステムの構成を示すブロック図である。 SaaSシステムの構成を示すブロック図である。 SaaSシステムにおけるドリルスルー処理手順を示す図である。 実施の形態1に係るSaaSシステムの構成を示すブロック図である。 実施の形態1に係る店舗用SaaSサーバ及びSaaS監視管理サーバのハードウェア資源の一例を示す図である。 実施の形態1における横断的集計実行時の処理シーケンスを示す図である。 実施の形態1における共通ACLの例を示す図である。 実施の形態1における共通ACLのリレーショナルDBによる実現例を示す図である。 実施の形態1におけるドリルスルー用ACLサブセット生成部の動作を示すフローチャートである。 実施の形態1におけるドリルスルー実行時の処理シーケンスを示す図である。 実施の形態1における全体集計結果の例を示す図である。 実施の形態1におけるドリルスルー要求部の動作を示すフローチャートである。 実施の形態2における分析サービス契約及び分析サービスマスタの例を示す表である。 実施の形態2における共通ACLのリレーショナルDBによる実現例を示す図である。 実施の形態2における分析サービス契約及び分析サービスマスタの例を示す図である。 実施の形態2における明細データの例を示す表である。 実施の形態2における共通ACLの例を示す図である。 実施の形態2における共通ACLの例を示す図である。 実施の形態2における利用状況の例を示す表である。 実施の形態2におけるドリルスルー用ACLサブセット生成部の動作を示すフローチャートである。 実施の形態2におけるドリルスルー用ACLサブセット生成部の動作を示すフローチャートである。 実施の形態2におけるドリルスルー用ACLサブセット生成部の動作を示すフローチャートである。
符号の説明
100 SaaSシステム、101 店舗用SaaSサーバ、102 SaaS監視管理サーバ、103 データアクセス制御装置、104 作業用記憶領域、105 サービスコンテンツDB、106 横断的集計要求部、107 横断的集計応答部、108 ドリルスルー要求部、109 ACLサブセット管理部、110 ドリルスルー応答部、111 条件抽出部、112 ACLサブセット解釈部、113 結果受取部、114 結果表示部、115 全体集計結果、116 ACLサブセット、117 サービス管理装置、118 サービス管理DB、119 共通ACL管理DB、120 横断的集計実行部、121 共通ACL管理部、122 ドリルスルー用ACLサブセット生成部、123 分析サービス契約、124 分析サービスマスタ、125 利用状況、126 共通ACL、127 ユーザ端末、128 要求元店舗、129 他店舗、130 地方別・地区別集計用共通ACL、131 地方テーブル、132 地区テーブル、133 店舗テーブル、134 要求元店舗、135 他店舗、136 表名のリスト、137 他店舗のリスト、138 売上テーブル、139 在庫テーブル、140 店舗詳細テーブル、141 商品別集計用共通ACL、142 組織別集計用共通ACL、200 ネットワーク、901 表示装置、902 キーボード、903 マウス、904 FDD、905 CDD、906 プリンタ装置、911 CPU、912 バス、913 ROM、914 RAM、915 通信ボード、920 磁気ディスク装置、921 オペレーティングシステム、922 ウィンドウシステム、923 プログラム群、924 ファイル群、991 SaaSシステム、992 SaaSシステム。

Claims (7)

  1. 複数の種類の明細データを蓄積する複数のサーバの1つ(以下、「第1サーバ」という)から、集計対象とする明細データの種類を指定した集計要求をネットワーク経由で受信し、前記複数のサーバから、各サーバに蓄積された当該種類の明細データをネットワーク経由で収集し、当該明細データを処理装置により集計して集計データを生成する集計実行部と、
    各サーバから他のサーバに蓄積された明細データへのアクセスの許否をサーバごとに示す共通ACL(アクセス制御リスト)を記憶装置により記憶する共通ACL管理データベースと、
    前記集計実行部が集計した明細データのうち、前記共通ACL管理データベースに記憶された共通ACLで前記第1サーバからのアクセスを許可することが示された明細データを蓄積するサーバ(以下、「第2サーバ」という)を示すACLサブセットを処理装置により生成するドリルスルー用ACLサブセット生成部とを備え、
    前記集計実行部は、前記第1サーバに対し、生成した集計データと前記ドリルスルー用ACLサブセット生成部が生成したACLサブセットとをネットワーク経由で送信し、当該集計データの一部から当該ACLサブセットで示された第2サーバに蓄積された明細データへのドリルスルーを前記第1サーバに実行させることを特徴とするサービス管理装置。
  2. 前記共通ACL管理データベースは、前記複数のサーバを分類した複数のグループのうち、各サーバが所属するグループをサーバごとに示す共通ACLを記憶し、
    前記ドリルスルー用ACLサブセット生成部は、前記集計実行部が集計した明細データが蓄積されたサーバのうち、前記共通ACL管理データベースに記憶された共通ACLで前記第1サーバと同じグループに所属することが示されたサーバを前記第2サーバとして示すACLサブセットを生成することを特徴とする請求項1に記載のサービス管理装置。
  3. 前記サービス管理装置は、さらに、
    前記共通ACL管理データベースは、さらに、各サーバから他のサーバに蓄積された各種類の明細データへのアクセスの許否をサーバと明細データの種類との組み合わせごとに示す例外リストを記憶装置により記憶し、
    前記ドリルスルー用ACLサブセット生成部は、前記集計実行部が集計した明細データが蓄積されたサーバのうち、前記共通ACL管理データベースに記憶された共通ACLで前記第1サーバと同じグループに所属することが示されたサーバに加えて、前記共通ACL管理データベースに記憶された共通ACLで前記第1サーバと異なるグループに所属することが示されたサーバであって、前記共通ACL管理データベースに記憶された例外リストで前記第1サーバからのアクセスを許可することが示された、前記集計実行部が集計した明細データと同じ種類の明細データを蓄積するサーバを前記第2サーバとして示すACLサブセットを生成することを特徴とする請求項2に記載のサービス管理装置。
  4. 複数の種類の明細データを蓄積する複数のサーバの1つ(以下、「第1サーバ」という)に具備されるデータアクセス制御装置において、
    前記複数のサーバから各サーバに蓄積された明細データを収集するとともに各サーバから他のサーバに蓄積された明細データへのアクセスの許否をサーバごとに示す共通ACL(アクセス制御リスト)を記憶するサービス管理装置に対し、集計対象とする明細データの種類を指定した集計要求をネットワーク経由で送信し、前記サービス管理装置から、各サーバに蓄積された当該種類の明細データを集計して生成した集計データと、当該明細データのうち前記共通ACLで前記第1サーバからのアクセスを許可することが示された明細データを蓄積するサーバ(以下、「第2サーバ」という)を示すACLサブセットとをネットワーク経由で受信する集計要求部と、
    前記集計要求部が受信した集計データのうち、ドリルスルー対象とする部分を指定した入力を入力装置により受け付け、前記集計要求部が受信したACLサブセットに示された第2サーバに対し、前記入力で指定された部分に対応する明細データを指定したドリルスルー要求をネットワーク経由で送信し、当該第2サーバから、当該明細データをネットワーク経由で受信するドリルスルー要求部とを備えることを特徴とするデータアクセス制御装置。
  5. 前記ドリルスルー要求部は、前記集計要求部が受信したACLサブセットに示された第2サーバから、前記入力で指定された部分に対応する明細データを非同期通信により受信することを特徴とする請求項4に記載のデータアクセス制御装置。
  6. 複数の種類の明細データを蓄積する複数のサーバの1つ(以下、「第1サーバ」という)が、各サーバから他のサーバに蓄積された明細データへのアクセスの許否をサーバごとに示す共通ACL(アクセス制御リスト)を記憶するサービス管理装置に対し、集計対象とする明細データの種類を指定した集計要求を送信し、
    前記サービス管理装置が、前記複数のサーバから、各サーバに蓄積された明細データのうち、前記集計要求で指定された種類の明細データを収集し、当該明細データを処理装置により集計して集計データを生成し、
    前記サービス管理装置が、集計した明細データのうち、前記共通ACLで前記第1サーバからのアクセスを許可することが示された明細データを蓄積するサーバ(以下、「第2サーバ」という)を示すACLサブセットを処理装置により生成し、
    前記サービス管理装置が、前記第1サーバに対し、生成した集計データとACLサブセットとを送信し、
    前記第1サーバが、前記集計データのうち、ドリルスルー対象とする部分を指定した入力を入力装置により受け付け、前記ACLサブセットに示された第2サーバに対し、前記入力で指定された部分に対応する明細データを指定したドリルスルー要求を送信し、
    前記第2サーバが、前記第1サーバに対し、前記ドリルスルー要求で指定された明細データを送信し、
    前記第1サーバが、前記明細データを表示装置により表示することを特徴とするデータ検索方法。
  7. 前記データ検索方法は、さらに、
    前記第2サーバが、前記サービス管理装置に対し、前記ドリルスルー要求で指定された明細データを指定した確認要求を送信し、
    前記サービス管理装置が、前記共通ACLで前記第2サーバから送信された確認要求で指定された明細データへのアクセスを許可することが示されているか否かを処理装置により確認し、当該確認結果を送信し、
    前記第2サーバが、前記確認結果に基づいて、前記第1サーバに対し、前記ドリルスルー要求で指定された明細データを送信することを特徴とする請求項6に記載のデータ検索方法。
JP2007325969A 2007-12-18 2007-12-18 サービス管理装置及びデータアクセス制御装置及びデータ検索方法 Pending JP2009146350A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007325969A JP2009146350A (ja) 2007-12-18 2007-12-18 サービス管理装置及びデータアクセス制御装置及びデータ検索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007325969A JP2009146350A (ja) 2007-12-18 2007-12-18 サービス管理装置及びデータアクセス制御装置及びデータ検索方法

Publications (1)

Publication Number Publication Date
JP2009146350A true JP2009146350A (ja) 2009-07-02

Family

ID=40916849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007325969A Pending JP2009146350A (ja) 2007-12-18 2007-12-18 サービス管理装置及びデータアクセス制御装置及びデータ検索方法

Country Status (1)

Country Link
JP (1) JP2009146350A (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013033449A (ja) * 2011-06-29 2013-02-14 Canon Inc サーバーシステムおよび制御方法およびプログラム
JP2013080299A (ja) * 2011-09-30 2013-05-02 Fujitsu Social Science Laboratory Ltd 情報処理システム、情報処理方法、及び情報処理プログラム
JP2013114614A (ja) * 2011-11-30 2013-06-10 Nippon Telegr & Teleph Corp <Ntt> 情報流通システムとそのアクセス制御方法
JP2013182320A (ja) * 2012-02-29 2013-09-12 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
WO2014016977A1 (ja) * 2012-07-27 2014-01-30 株式会社日立システムズ SaaS決済システム、SaaS利用料金の決済方法、およびプログラム
KR20150119108A (ko) * 2013-02-13 2015-10-23 페이스북, 인크. 하이브 테이블 링크
WO2016194069A1 (ja) * 2015-05-29 2016-12-08 株式会社日立システムズ エビデンス提供システム、エビデンス提供方法
JP2021086403A (ja) * 2019-11-28 2021-06-03 株式会社伊予エンジニアリング 企業内の既存システムを利用した業務改革支援システム
JP7445246B1 (ja) 2023-07-24 2024-03-07 株式会社パトスロゴス データ処理システム、データ処理方法、及びデータ処理プログラム
US12124461B2 (en) 2019-04-30 2024-10-22 Oracle International Corporation System and method for data analytics with an analytic applications environment

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013033449A (ja) * 2011-06-29 2013-02-14 Canon Inc サーバーシステムおよび制御方法およびプログラム
JP2013080299A (ja) * 2011-09-30 2013-05-02 Fujitsu Social Science Laboratory Ltd 情報処理システム、情報処理方法、及び情報処理プログラム
JP2013114614A (ja) * 2011-11-30 2013-06-10 Nippon Telegr & Teleph Corp <Ntt> 情報流通システムとそのアクセス制御方法
JP2013182320A (ja) * 2012-02-29 2013-09-12 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
WO2014016977A1 (ja) * 2012-07-27 2014-01-30 株式会社日立システムズ SaaS決済システム、SaaS利用料金の決済方法、およびプログラム
JP2014026537A (ja) * 2012-07-27 2014-02-06 Hitachi Systems Ltd SaaS決済システム、SaaS利用料金の決済方法、およびプログラム
CN104508698A (zh) * 2012-07-27 2015-04-08 株式会社日立系统 SaaS结算系统、SaaS使用费的结算方法及程序
JP2016511899A (ja) * 2013-02-13 2016-04-21 フェイスブック,インク. Hiveテーブル・リンク
KR20150119108A (ko) * 2013-02-13 2015-10-23 페이스북, 인크. 하이브 테이블 링크
KR101908553B1 (ko) * 2013-02-13 2018-10-16 페이스북, 인크. 하이브 테이블 링크
US10339157B2 (en) 2013-02-13 2019-07-02 Facebook, Inc. Hive table links
WO2016194069A1 (ja) * 2015-05-29 2016-12-08 株式会社日立システムズ エビデンス提供システム、エビデンス提供方法
US12124461B2 (en) 2019-04-30 2024-10-22 Oracle International Corporation System and method for data analytics with an analytic applications environment
JP7611843B2 (ja) 2019-04-30 2025-01-10 オラクル・インターナショナル・コーポレイション 分析アプリケーション環境を用いたデータアナリティクスのためのシステムおよび方法
JP2021086403A (ja) * 2019-11-28 2021-06-03 株式会社伊予エンジニアリング 企業内の既存システムを利用した業務改革支援システム
JP7445246B1 (ja) 2023-07-24 2024-03-07 株式会社パトスロゴス データ処理システム、データ処理方法、及びデータ処理プログラム
WO2025022926A1 (ja) * 2023-07-24 2025-01-30 株式会社パトスロゴス データ処理システム、データ処理方法、及びデータ処理プログラム

Similar Documents

Publication Publication Date Title
JP2009146350A (ja) サービス管理装置及びデータアクセス制御装置及びデータ検索方法
US9158843B1 (en) Addressing mechanism for data at world wide scale
US8555018B1 (en) Techniques for storing data
CN101410836B (zh) 向应用提供对存储在数据库中的数据的访问的方法
US9875272B1 (en) Method and system for designing a database system for high event rate, while maintaining predictable query performance
CN103782295B (zh) 分布式数据管理系统中的查询说明计划
US20040122849A1 (en) Assignment of documents to a user domain
EP2478452A1 (en) File search system and program
US8429673B2 (en) Systems and methods of accessing information across distributed computing components
US20080222112A1 (en) Method and System for Document Searching and Generating to do List
CN107679065A (zh) 数据展示方法、装置及计算机可读存储介质
US20220343198A1 (en) Systems and methods for determining data criticality based on causal evaluation
JPH1097544A (ja) データベース処理システム
CN112348664B (zh) 一种支持自动预警的信贷资信管理系统
US7020564B2 (en) Logical volume administration method, the service using the method and the memory medium storing the service
JP5284064B2 (ja) 商品idサーバ装置、および商品idサーバ装置の制御方法
US8949432B2 (en) Identity management
US10802881B2 (en) Methods and devices for enabling distributed computers to communicate more effectively in an enterprise requiring flexible approval notifications
US11429311B1 (en) Method and system for managing requests in a distributed system
US20160162814A1 (en) Comparative peer analysis for business intelligence
US8726235B2 (en) Telecom business-oriented taxonomy for reusable services
US20040172585A1 (en) System and method for automatically starting a document on a workflow process
CN115718571B (zh) 一种基于多维度特征的数据管理方法和装置
US20190026732A1 (en) Aggregated storage file service
US12169509B2 (en) Arbitrary dimensional resource accounting on N-ary tree of assets in databases