JP2013514565A - 権利者向けデータのキャッシュ管理法 - Google Patents

権利者向けデータのキャッシュ管理法 Download PDF

Info

Publication number
JP2013514565A
JP2013514565A JP2012535262A JP2012535262A JP2013514565A JP 2013514565 A JP2013514565 A JP 2013514565A JP 2012535262 A JP2012535262 A JP 2012535262A JP 2012535262 A JP2012535262 A JP 2012535262A JP 2013514565 A JP2013514565 A JP 2013514565A
Authority
JP
Japan
Prior art keywords
data
user
server
cache
request
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.)
Granted
Application number
JP2012535262A
Other languages
English (en)
Other versions
JP5638082B2 (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 JP2013514565A publication Critical patent/JP2013514565A/ja
Application granted granted Critical
Publication of JP5638082B2 publication Critical patent/JP5638082B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

権利者向けデータキャッシュを管理するためのシステムおよび方法を開示する。データサーバが、権利者向けデータを生成し、データ・キャッシュ・サーバに送信し得る。データ・キャッシュ・サーバは、データ提供者のコンピュータネットワーク内でユーザにより近く位置し得るサーバであり、権利者向けデータを受信し、キャッシュし得る。許可サーバは、ユーザ許可を記憶し、ユーザ許可をデータサーバとデータ・キャッシュ・サーバとに送信し得る。データを求める要求を受信し次第、データ・キャッシュ・サーバは、データサーバにデータを要求することを必要とせずに、要求されたデータをキャッシュから検索し、ユーザ許可と一致するキャッシュデータのサブセットをユーザに送信し得る。

Description

発明の分野
本発明は、情報の電子的な記憶および配布のための、詳細には、許可された受け手への情報の配布のためのコンピュータベースのシステムおよび方法を対象とする。
背景
インターネットなどのグローバル・コンピュータ・ネットワークは、世界中に位置する広範な人々に情報が配布されることを可能にする。インターネットの利点の一つは、使用される通信プロトコルが非占有的であり、よって、カスタマイズされたハードウェアまたはソフトウェアを必要とせずにエンドユーザがインターネットにアクセスし、これを使用することを可能にすることである。多くの異なる産業が、コンピュータネットワークを、その顧客が膨大な量のデータに迅速にアクセスすることを可能にするための手段として使用する。これらの企業においては、保護されたデータと保護されていないデータの両方がリモートユーザに提供される速度がきわめて重要であり、これらの企業を他の企業と区別する部分であることが多い。企業がユーザにより迅速にデータを配布することを可能にする一般的な技法の一つは、ネットワーク上でデータを要求するユーザのより近くに置かれているプロキシサーバの使用を伴う。プロキシサーバを使用してユーザの最初のデータ要求に対する応答をキャッシュすることにより、同じユーザからの後続の同一データの要求に対する応答を、同じ情報を再度検索するためにデータサーバに問い合わせることを必要とせずに、プロキシサーバによって処理することができる。
しかし、ユーザにデータを提供するためのプロキシサーバのユーザは、データ提供者がデータへのアクセスの強固な制御を必要とするときには、適当ではない場合もある。例えば、財務データ提供者は、財務データの配布を規定する法規に従うことが求められる。さらに、財務情報はきわめて価値の高いものであり、財務データ提供者は、無許可の顧客および/または不払いの顧客からのアクセスを防止する手段を持たなければならない。したがって、財務データ提供者も、他の産業のデータ提供者も、一部のユーザだけに制限される権利者向けデータ(entitled data)を生成する場合がある。多くの現行システムにおいて、権利者向けデータがデータ源に要求され、送信中のデータは、無許可のユーザがキャッシュデータにアクセスするのを防止するためにキャッシュ不能と表示される。例えば、ユーザが保護されたデータの提供者に権利者向けデータを要求し、それを受け取った後で、保護されたデータにアクセスする当該ユーザの許可はその後に取り消され得る。キャッシュ不能データはプロキシサーバにおいてキャッシュされず、同じデータを求める後続のデータ要求は、データサーバから再度検索される必要がある。
しかし、ユーザに権利者向けデータを提供する大規模なクライアント・サーバシステムでは、サーバ容量は多かれ少なかれシステム上のユーザの数に比例する。したがって、ユーザによって生成されるあらゆる要求または新しいユーザの追加の都度、権利者向けデータを生成し、送信するのに必要とされるサーバの容量は増加する。サーバは単位時間当たり決まった数の要求だけしか処理することができず、そのため、要求の数が増加するにつれて、サーバの数も増加しなければならず、これによって金融機関が権利者向けデータを生成し、送信するための費用が大幅に増加する。したがって、権利者向けデータへのアクセスを提供するためのさらに別の方法およびシステムが求められている。
概要
本発明は、以下でより詳細に説明し、図に示すが、権利者向けデータを管理するためのデータ管理システムに関するものである。本発明の各局面は、より迅速なデータへのアクセスおよびデータの配信を可能にするためのデータ・キャッシュ・サーバ上での権利者向けデータのキャッシングに関するものである。
少なくとも一つの態様においては、提供者のネットワークの入口点の近くでデータをキャッシュするデータ・キャッシュ・サーバなどのコンピュータシステムを説明する。顧客の近くの位置においてデータをキャッシュする、すなわちデータを記憶することができれば、データを生成するデータサーバの数を増やさずにユーザの数およびユーザ要求の数を増加させることが可能になる。提供者のネットワークの入口点の近くにデータ・キャッシュ・サーバが位置すれば、データをエンドユーザに送信するのに要する時間が短縮される。というのは、データ・キャッシュ・サーバへのデータの転送は普通、データを求めるユーザの要求の前に行われるからである。加えて、データ・キャッシュ・サーバはデータサーバほど高価ではなく、したがって、データを生成しユーザに送信するための金融機関が負担する費用が減少する。
少なくとも一つの態様において、コンピュータサーバは、データサーバから権利者向けデータを受信し、受信したデータをキャッシュするように構成される。権利者向けデータは、コンピュータサーバへのアクセスを許可された少なくとも1名のユーザに対応する関連付けられたデータ許可を有し得る。コンピュータサーバは、権利者向けデータをキャッシュし、権利者向けデータと、権利者向けデータの関連付けられたデータ許可に対応する関連識別子とを記憶し得る。コンピュータサーバは、ユーザに対応するユーザ許可を検索し、ユーザの許可がキャッシュされた権利者向けデータの関連付けられたデータ許可と交わる(intersect)かどうか判定し得る。ユーザの許可がキャッシュされた権利者向けデータの関連付けられたデータ許可と交わる場合に、コンピュータサーバは、キャッシュされた権利者向けデータの少なくとも一部をユーザに送信し得る。
少なくとも一つの態様において、データキャッシュ管理の方法は、コンピュータシステムが、第1のユーザ許可を得ている第1のユーザに対応する第1のデータ要求を受信する工程を含み得る。コンピュータシステムは、第1のデータ要求と第1のユーザ許可とに対応する第1の応答データがローカル・データ・キャッシュに記憶されているかどうか判定し得る。第1の応答データがローカルキャッシュに記憶されている場合に、第1のユーザに応答データが送信され得る。第2のユーザ許可を得ている第2のユーザに対応する第2のデータ要求が受信され得る。第2のユーザ許可は第1のユーザ許可と異なり得る。コンピュータシステムは、第2のユーザ要求と第2のユーザ許可とに対応する第2の応答データがローカル・データ・キャッシュに記憶されているかどうか判定し、第2の応答データがローカル・データ・キャッシュに記憶されている場合に、第2のユーザに第2の応答データを送信し得る。第2の応答データは第1の応答データと異なり得る。
以下の詳細な説明、特許請求の範囲、および図面を考察すれば、当業者には本発明の他の特徴および利点が明らかになるであろう。図面において、類似の番号は類似の特徴を指し示すのに使用される。
本発明のいくつかの態様による、データキャッシュ管理システムにおいて利用されるネットワークおよびデータ処理装置の例示的態様を示す図である。 本発明のいくつかの態様による、例示的な権利者向けデータキャッシュ管理システムを示す構成図である。 本発明のいくつかの態様による、権利者向けデータキャッシュ管理の例示的態様を示す流れ図である。 本発明のいくつかの態様による、例示的データキャッシュ管理システムを示す別の構成図である。 aは、本発明のいくつかの態様による、例示的データキャッシュ管理システムにおけるデータ許可に対応するデータ例を含む表を示す図である。bは、本発明のいくつかの態様による、例示的データキャッシュ管理システムにおけるユーザ許可の例を含む表を示す図である。 本発明のいくつかの態様による、権利者向けデータキャッシュ管理の例示的態様を示す流れ図である。 本発明のいくつかの態様による、権利者向けデータキャッシュ管理の別の例示的態様を示す流れ図である。 本発明のいくつかの態様による、権利者向けデータキャッシュ管理の別の例示的態様を示す流れ図である。
本発明の態様の詳細な説明に入る前に、本発明はその適用が、以下の説明において記載され、図面において例示される構造の詳細および構成要素の配置だけに限定されるものではないことを理解すべきである。本発明では、他の態様も可能であり、様々なやり方で実施し、または実行することも可能である。また、本明細書において使用される表現および用語は、説明のためのものであり、限定とみなされるべきではないことも理解すべきである。そうではなく、本明細書において使用される語句には、それらの最も広い解釈および意味が与えられるべきである。「含む(including)」および「含む(comprising)」およびこれらの変形の使用は、その後に記載される項目およびその均等物、ならびにさらに別の項目およびその均等物を包含することを意図するものである。「取り付けられた(mounted)」、「接続された(connected)」、「結合された(coupled)」、「位置決めされた(positioned)」、「係合された(engaged)」、および類似の用語の使用は、直接と間接両方の取付け、接続、結合、位置決め、および係合を含むことを意図するものである。
詳細な説明
図1に、本発明の一つまたは複数の例示的局面を実施するのに使用され得るネットワークアーキテクチャおよびデータ処理装置の一例を示す。様々なネットワークノード103、105、107、109が、インターネットなどの広域ネットワーク(WAN)101を介して相互接続され得る。また、あるいは代替として、私設イントラネット、企業ネットワーク、LAN、無線ネットワーク、パーソナルネットワーク(PAN)などを含む他のネットワークも使用され得る。ネットワーク101は例示のためのものであり、より少数の、またはさらに多くのコンピュータネットワークで置き換えられてもよい。ローカル・エリア・ネットワーク(LAN)は任意の公知のLANトポロジのうちの一つまたは複数を有していてよく、イーサネットなどの多種多様なプロトコルのうちの一つまたは複数を使用してよい。装置103、105、107、109および他の装置(不図示)は、より対線、同軸ケーブル、光ファイバ、電波または他の通信媒体によりネットワークのうちの一つまたは複数に接続され得る。
「ネットワーク」という用語は、本明細書において使用され、図面において示される場合、リモートの記憶装置が一つまたは複数の通信路を介して相互に結合されているシステムのみならず、その時々にそのような記憶機能を有するシステムに結合され得る独立型の装置も指すものである。したがって、「ネットワーク」という用語は、「物理ネットワーク」のみならず、あらゆる物理ネットワークにまたがって置かれている、単一の実体に帰せられるデータからなる「コンテンツネットワーク」も含む。
構成要素には、一つまたは複数のデータサーバ103、ウェブサーバ105、およびクライアントコンピュータ107、109が含まれ得る。データサーバ103は、データベースのアクセス、制御、および管理全般と、本明細書において説明する本発明の一つまたは複数の例示的局面を実施するための制御ソフトウェアとを提供する。データサーバ103は、ユーザが要求するデータと対話し、データを獲得するためのウェブサーバ105に接続され得る。あるいは、データサーバ103は、ウェブサーバ自体として機能し、インターネットに直接接続されていてもよい。データサーバ103は、直接もしくは間接の接続により、または他の何らかのネットワークにより、ネットワーク101(インターネットなど)を介してウェブサーバ105に接続され得る。ユーザはリモートコンピュータ107、109を使用してデータサーバ103と対話してよく、例えば、ウェブブラウザを使用し、ウェブサーバ105によってホストされる一つまたは複数の外部に公開されているウェブサイトを介してデータサーバ103に接続し得る。クライアントコンピュータ107、109は、データサーバ103と呼応してデータサーバ103に記憶されたデータにアクセスするのに使用されてもよく、他の目的で使用されてもよい。例えば、クライアント装置107から、ユーザは、当技術分野において公知であるように、インターネットブラウザを使用して、または、コンピュータネットワーク(インターネットなど)上でウェブサーバ105および/またはデータサーバ103と通信するソフトウェアアプリケーションを実行することにより、ウェブサーバ105にアクセスし得る。
サーバとアプリケーションとは、同じ物理マシン上で組み合わされ、別々の仮想アドレスまたは論理アドレスを有していてもよく、別々の物理マシン上にあってもよい。図1には、使用され得るネットワークアーキテクチャの一例が示されているにすぎず、使用される特定のネットワークアーキテクチャおよびデータ処理装置は様々とすることができ、本明細書においてさらに説明するように、それらが提供する機能に付随するものであることを当業者は理解するであろう。例えば、ウェブサーバ105およびデータサーバ103によって提供されるサービスは単一のサーバ上で組み合わされてもよい。
各構成要素103、105、107、109は、任意の種類の公知のコンピュータ、サーバ、またはデータ処理装置とすることができる。例えばデータサーバ103は、データサーバ103の動作全般を制御するプロセッサ111を含み得る。データサーバ103はさらに、RAM113、ROM115、ネットワークインターフェース117、入力/出力インターフェース119(例えばキーボード、マウス、ディスプレイ、プリンタなど)、およびメモリ121を含み得る。I/O119は、データまたはファイルを読み出し、書き込み、表示し、かつ/または印刷するための様々なインターフェースユニットおよびドライブを含み得る。メモリ121はさらに、データ処理装置103の動作全般を制御するためのオペレーティング・システム・ソフトウェア123、データサーバ103に本明細書において説明する本発明の局面を実施するよう指示するための制御論理125、ならびに本発明の局面と併用される場合も併用されない場合もある二次的機能、補助機能、および/または他の機能を提供する他のアプリケーションソフトウェア127を記憶し得る。また制御論理は、本明細書においては、データ・サーバ・ソフトウェア125とも呼ばれ得る。データ・サーバ・ソフトウェアの機能は、ユーザがシステムに入力を提供することにより手動で作成される制御論理に符号化された規則に基づいて自動的に行われる動作もしくは判断、またはユーザ入力に基づく自動処理の組み合わせ(例えば問い合わせ、データ更新など)を指し得る。
またメモリ121は、第1のデータベース129および第2のデータベース131を含む、本発明の一つまたは複数の局面の実施に際して使用されるデータも記憶し得る。態様によっては、第1のデータベースは(例えば別個の表、レポートなどとして)第2のデータベースを含んでいてもよい。すなわち、情報は、システム設計に応じて、単一のデータベースに記憶することもでき、異なる論理データベース、仮想データベース、または物理データベースへと分離することもできる。装置105、107、109は、装置103に関連して説明したのと同様のアーキテクチャを有していても、異なるアーキテクチャを有していてもよい。本明細書において説明するデータ処理装置103(または装置105、107、109)の機能は、例えば、複数のコンピュータにまたがって処理負荷を分散させたり、地理的位置、ユーザ・アクセス・レベル、サービス品質(QoS)などに基づいてトランザクションを区別したりするために、複数のデータ処理装置に分散していてもよいことを当業者は理解するであろう。
本発明の一つまたは複数の局面は、本明細書において説明するように、一台もしくは複数コンピュータまたは他の装置によって実行される、コンピュータ使用可能データもしくはコンピュータ可読データ、および/またはコンピュータ実行可能命令として、例えば一つまたは複数のプログラムモジュールとして実施され得る。一般に、プログラムモジュールには、コンピュータまたは他の装置内でプロセッサによって実行されると、特定のタスクを実施し、または特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。モジュールは、後で実行するためにコンパイルされるソース・コード・プログラム言語で書かれていてもよく、(それだけに限らないが)HTMLやXMLなどのスクリプト言語で書かれていてもよい。コンピュータ実行可能命令は、ハードディスク、光ディスク、取り外し可能記憶媒体、固体メモリ、RAMなどのコンピュータ可読媒体上に記憶され得る。当業者には理解されるように、プログラムモジュールの機能は、様々な態様において、望みどおりに組み合わされても、分散されてもよい。加えて、機能は、その全部または一部が、集積回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)などのファームウェアまたはハードウェアの均等物として実施されてもよい。本発明の一つまたは複数の局面をより効果的に実施するための特定のデータ構造が使用されてもよく、そのようなデータ構造は本明細書において説明するコンピュータ実行可能命令およびコンピュータ使用可能データの範囲内において企図されている。
図2を参照すると、データ管理システム200の例示的態様が示されている。図2に示すように、データ管理システム200は、データ・キャッシュ・サーバ202、データサーバ204、および許可サーバ206を含み得る。データ・キャッシュ・サーバ202は、ユーザに配信するためのキャッシュデータを記憶するように設計された任意の種類のコンピュータサーバとすることができ、データサーバ204とは別個のものとすることができる。一態様において、データ・キャッシュ・サーバ202は、データ提供者のためのコンピュータリソース(コンピュータネットワークなど)の境界に位置するエッジデバイスとすることができ、ユーザにとってのデータ提供者のネットワークへの入口点とすることができる。データサーバ204よりもユーザに近い位置にあるコンピュータリソースの境界においてデータをキャッシュすれば、要求が行われる都度データサーバ204にデータを要求するのではなく、データ・キャッシュ・サーバ202からユーザにデータを送信することにより、結果的に時間とコストが節約され得る。データサーバ204にデータを要求し、データサーバ204からデータを受信する必要をなくすことにより、ユーザへのデータの配信時間が短縮され得る。さらに、データサーバ204にデータを求める多くの要求による負荷も低減され、潜在的に性能およびシステム信頼性の向上がもたらされる可能性がある。
図2に示すように、データ・キャッシュ・サーバ202は、権利者向けデータを含むデータサーバ204と通信し得る。権利者向けデータとは、ある特定の権利者向けデータへのアクセスがある特定のユーザだけに制限され得るように安全に維持されるデータをいう。場合によっては、ユーザは、システム内の異なるデータへのユーザのアクセス権を決定する関連付けられた許可(権利)のセットを有していてもよい。例えば、ユーザには、全データセットまたはデータセット内のデータの特定の行だけを見る権利が付与され得る。加えて、権利者向けデータは、ユーザに権利者向けデータを送信する前にユーザの許可が検証されるべきことを必要としてもよい。例えば、権利者向けデータは金融取引データを含み得る。一例では、ユーザがデータを要求する都度、ユーザに権利者向けデータを送信する前に、ユーザの許可が許可サーバ206を用いて検証されなければならない。少なくとも一つの態様において、データサーバ204は、権利者向けであり、時間的でもあるデータを含む。時間的データとは、変化し得る、または時間の経過と共に複数の異なる値を取り得るデータをいう。例えば、時間的データは、一日、一週間、一ヶ月、一年の間の時間(時期)によって異なる値をとる会社株式価格とすることもできる。
許可サーバ206は、システム上の複数の異なるユーザおよび/またはユーザのグループのためのユーザ許可を記憶し、システムの一名または複数のユーザを識別するデータ・キャッシュ・サーバ202またはデータサーバ204からの問い合わせに応答してユーザ許可を検索し得る。例えばユーザは、全データセット、データセットの特定の行および/または列のみを閲覧する許可を得ている場合もあり、データセットのある特定の部分を閲覧する許可を得ているが他の部分を見る許可は得ていない場合もある。別の例では、ユーザは、グループの全ユーザが各ユーザに特定のデータ(株式データ、顧客データなど)を閲覧させる許可を得るような一つまたは複数のグループ(顧客、ブローカ、管理者など)に属し得る。ユーザがシステムにデータを求める要求を送信するときに、ユーザ識別情報は、データ要求に含まれるユーザ識別および/または認証情報から判定され得る。一態様において、許可サーバ206は、データ・キャッシュ・サーバ202にユーザ許可を提供する。また許可サーバ206はユーザの許可をデータサーバ204にも提供してよく、データサーバ204は権利者向けデータとユーザ許可の両方をデータ・キャッシュ・サーバ202に送信してよい。場合によっては、許可サーバ206は、データサーバ204およびデータ・キャッシュ・サーバ202と別個の装置とすることができる。あるいは、許可サーバ206は、データサーバ204またはデータ・キャッシュ・サーバ202の保護された部分内に物理的に位置していてもよい。実施態様によっては、ユーザ許可は保護されているため、公衆ネットワークまたは別の保護されていないコンピュータネットワーク上でユーザまたはグループの許可データを伝送することが望ましくない場合もあるはずである。したがって、保護されたコンピュータネットワークおよび/または暗号化を使用して、許可サーバ206とサーバ202、204との間で許可データが伝送されてもよい。加えて、データの伝送時に、ユーザの許可をユーザの識別情報と同じデータ伝送において伝送しないことなど、別のセキュリティ措置が講じられてもよい。
図3の例を参照すると、S305に示すように、データ・キャッシュ・サーバ202がデータサーバ204からデータを受信するときに、データ・キャッシュ・サーバ202は、S310に示すように、データのコピーをデータ・キャッシュ・サーバ202のメモリ内にローカルで記憶する(すなわち、データをキャッシュする)。データサーバ204から受け取られるデータはデータIDを含んでいてよく、データIDはユーザ要求なしでキャッシュデータ更新するのに使用され得る。データIDは、データサーバ204によって生成されてもよい。また、データサーバ204から受け取られるデータは、ユーザがデータにアクセスすることを可能にするユーザ許可または権利トークンのリストも含み得る。データ・キャッシュ・サーバ202は、複数の異なるデータセットを受信し、キャッシュし得る。場合によっては、データ・キャッシュ・サーバ202は、データを求める初期ユーザ要求に応答してデータを受信し得る。場合によっては、データは、データを求めるユーザ要求の前にデータ・キャッシュ・サーバ202に送信され得る。さらに別の例では、データは、データの新しいバージョンが到着したときにデータ・キャッシュ・サーバ202に送信され得る。この例では、データは、データサーバ204にデータが変更されたことが通知されるときにデータ・キャッシュ・サーバ202に送信され得る。この例では、データサーバ204は、データ・キャッシュ・サーバ202に、変更されたデータを通知し得る。これに応答して、データ・キャッシュ・サーバ204は、対応するキャッシュデータのコピーを更新する。この変更されたデータの通知は、以前に供給されたデータIDを使用し得る。
また、データを記憶するときに、データ・キャッシュ・サーバ202は、S315に示すように、キャッシュシグネチャ、および/またはデータ・キャッシュ・サーバ202が後でデータサーバ204に問い合わせせずに異なるユーザのためにデータを検索することを可能にする許可可能エンティティ(PE)のリストをデータにタグ付けし得る。以下の図5aおよび図5bに示すように、S315は、データ・キャッシュ・サーバ202において、データを要求するユーザに関係なくデータ要求のコンテキストに対応する一つまたは複数の変数(キャッシュシグネチャなど)と、要求されるデータと関連付けられたユーザ許可に対応する一つまたは複数のさらに別の変数(許可可能エンティティなど)とを記憶することを含み得る。図5aおよび図5bに示すように、キャッシュシグネチャ、PE、および権利トークンは、同じ表に記憶されてもよく、異なる表から参照してもよく、別の方法で、それらが関連する権利者向けデータにリンクされていてもよい。場合によっては、キャッシュシグネチャは、ユーザから受け取られるデータ要求(要求されるデータの種類/範囲や他の基準など)に基づくものとすることもできるが、データを要求するユーザの個別またはグループの許可に基づくものとする必要はない。例えば、キャッシュシグネチャは、ユーザデータもユーザ許可もなしでデータ要求またはデータ要求の一部のハッシュ値を計算すること(hashing)(HMAC-SHA1)によって生成されてもよい。データ・キャッシュ・サーバ202は、同じデータから複数の権利トークンを生成してよく、よって、ユーザ要求がアクセスするときにキャッシュの迅速なルックアップを可能にするように、データ・キャッシュ・サーバ202上に記憶されたデータの複数のコピーを更新してよい。
場合によっては、データサーバ204からデータ・キャッシュ・サーバ202に配信される特定のデータセットについて、配信されるデータセットは、データを要求するユーザの許可にかかわらず同じデータを含んでいてもよい。しかし、例えばユーザ222やユーザ224などのユーザに送信されるデータは、要求側ユーザの許可に応じて限定され得る。よって、データ・キャッシュ・サーバ202は、ユーザの許可レベル(すなわち権利)に応じて、権利者向けデータセットの全部または一部を決定し、要求側ユーザに配信し得るが、同じユーザおよび/または異なるユーザからのその後の要求に応答するためにデータセット全体をキャッシュし得る。ユーザは、ユーザがデータセットのどの部分(または全データセット)にアクセスを許可されるか決定する許可を得ていてよい。例えば、ユーザは行レベルの許可を得ていてもよく、行レベルの許可は、ユーザがデータセット内のデータのある特定の行にアクセスすることを許す。別の種類の権利または許可は選択レベルの許可とすることができ、選択レベルの許可は、ユーザの許可に応じて返されるべき行のリストを決定する。選択レベルの許可では、データ・キャッシュ・サーバ202は、データの特定の行を要求し得るが、データサーバ204によって送信されるデータは、ユーザの選択レベルの許可に対応する行だけになるはずである。要求された行がキャッシュ内にない場合には、要求された行を含むデータも要求においてデータ・キャッシュ・サーバ202に返され、次いでデータ・キャッシュ・サーバ202上にキャッシュされ得ることに留意すべきである。新しくキャッシュされたデータは、要求側ユーザがデータについての許可を得ているかどうかに応じてユーザに送信される場合もされない場合もある。場合によっては、ユーザ許可は、バイナリ形式で記憶され得る。例えば、ユーザの許可は、特定のデータ行についてユーザが当該行にアクセスする許可を得ていることを表示するために「1」に設定され、データ・キャッシュ・サーバ202が当該行へのユーザアクセスを拒否すべきであることを表示するために「0」に設定され得る。ユーザ許可を設定することにより、データ・キャッシュ・サーバ202は、単一のデータセットを受信し、ユーザ許可の異なるセットを有する複数のユーザに当該データの異なるサブセットを配信することができる。例えば、データ・キャッシュ・サーバ202が必ずしもデータサーバ204に再問い合わせしなくても、第1のユーザ許可のセットを有する第1のユーザは元のデータセットからのデータの第1のサブセットを受信してよく、第2のユーザ許可のセットを有する第2のユーザは、元のデータセットからのデータの第2のサブセットを受信してよい。
データサーバ204からデータ・キャッシュ・サーバ202に送信されるデータセットは、データ要求を開始したユーザについてと、システム上の他のユーザについての対応するデータ許可を含み得る。各データセットは、複数の許容される許可と関連付けられ得る。よって、ユーザが、ユーザの許可がデータセットの許可と交わるように許容されるデータ許可のいずれかを得ている場合、ユーザには、当該ユーザがアクセスする権利を付与されているデータのサブセットにアクセスする(例えば閲覧する、変更する、削除するなど)ことが許可され得る。
S320に示すように、データを求めるユーザ要求がデータ・キャッシュ・サーバ202において受信されるときに、ユーザの要求は、S325で、データ要求と関連付けられたキャッシュシグネチャを識別するように計算される。一例では、この計算は、ユーザ特有のデータを持たない要求のハッシュ値を計算することによって行われる。次いでS330で、キャッシュ・データ・サーバ202は、キャッシュシグネチャと一致するデータが以前にキャッシュされているかどうか判定するために問い合わせされる。要求されたデータがデータ・キャッシュ・サーバ202上に存在する場合(例えば、一致するキャッシュシグネチャが見つかる場合など)には、S335で、キャッシュデータについて交わる許可のセットがあるかどうか判定するために要求側ユーザの許可がチェックされる。要求側ユーザの許可と要求されたキャッシュデータが交わり、キャッシュデータのうちの少なくとも一つの許可と一致するユーザの少なくとも一つの許可がある場合には、S340でデータのサブセットがユーザに送信され得る。例えば、図5aを参照すると、データセットは、データ行1についての行レベルの許可P1およびP2、データ行2についての許可P1、データ行3についての許可P2、データ行4についての許可P4などの特定の許可(許可可能エンティティ)を含み得る。図5bに示す例において、ユーザ1は関連付けられたユーザ許可P1を有し、ユーザ2は関連付けられたユーザ許可P2およびP6を有し、ユーザ3は関連付けられたユーザ許可P2を有し、ユーザ4は関連付けられたユーザ許可P3およびP5を有する。したがって、この例では、データ・キャッシュ・サーバ202は、(ユーザ1は許可P1を得ており、データ行1とデータ行2も両方とも許可P1を有するため)ユーザ1の許可はデータ行1およびデータ行2と交わると判定してよく、データ行1とデータ行2の両方をユーザ1に送信してよい。次いで、ユーザ4からの第2の要求を処理するときに、データ・キャッシュ・サーバ202は、(ユーザ4とデータ行4とはどちらも許可P3を有するため)ユーザ4の許可はデータ行1とだけ交わると判定してよく、データ行1だけをユーザ4に送信してよい。
図5bに示すように、ユーザ許可を得ていることに加えて、ユーザは一つまたは複数のグループ(ユーザ役割など)とも関連付けられていてよい。この例では、ユーザ1およびユーザ3はグループAのメンバであり、ユーザ2はグループBのメンバである。またグループも、ユーザと同様に、関連付けられたデータ許可を得ていてよい。この例では、グループAは許可P1、P5を得ており、グループBは許可P1、P2、P3を得ており、グループCは許可P4、P5を得ている。各グループには一意の権利トークンが与えられる。この例では、グループAは1という権利トークンを有し、グループBは2という権利トークンを有し、グループCは3という権利トークンを有する。その結果、ユーザ1はグループAに属することにより1という権利トークンを割り当てられており、ユーザ2はグループBに属することにより2という権利トークンを割り当てられており、ユーザ3はグループAおよびCに属することにより1および3という権利トークンを割り当てられている。この例では、ユーザ4はグループのメンバではないため、権利タグを持たない。権利トークンは許可のグループに対応する。異なる権利トークンが同じ許可を含んでいてもよい。少なくともいくつかの例では、あるユーザと関連付けられる権利トークンの数は、関連付けられたユーザ許可の数より小さくてもよい。
図6を参照すると、権利者向けデータの異なるサブセットが異なる許可を得ている異なるユーザに配信される例示的流れ図が示されている。この例では、S610で、データ・キャッシュ・サーバ202が第1のユーザから権利者向けデータを求めるデータ要求を受信する。S615で、データ・キャッシュ・サーバ202は、要求されたデータ・キャッシュ・サーバ202上の権利者向けデータが第1のユーザの許可と交わる許可を有するかどうか判定する。これは、まず要求からキャッシュシグネチャを生成することによって行われてよく、権利トークンの生成を含み得る。S620で、第1のユーザの許可と交わる許可を有するデータ応答のサブセットについて、データ・キャッシュ・サーバ202は第1のユーザに第1のサブセットを伝送する。S625で、データ・キャッシュ・サーバ202は、第1のユーザとは異なるユーザ許可を得ている第2のユーザから同様のデータ要求(例えば、データの同じ列および行を要求するデータ要求および/または同じ問い合わせコンテキストを有する問い合わせなど)を受信する。S630で、データ・キャッシュ・サーバ202は、第2のユーザによって要求されたキャッシュされた権利者向けデータが第2のユーザの許可と交わるかどうか判定し得る。S635で、第2のユーザの許可がキャッシュ内に存在するデータの許可と交わる場合には、データ・キャッシュ・サーバ202はキャッシュデータの第2のサブセットを送信する。前述のように、第2のユーザに送信されるキャッシュデータの第2のセットは、同様の(または同じ)データ要求に応答して第1のユーザに送信されるキャッシュデータの第1のサブセットと異なっていてよい。加えて、キャッシュデータの第1のサブセットもキャッシュデータの第2のセットも、データ・キャッシュ・サーバ202上のキャッシュデータの単一のセットに由来するものとすることができる。
また、態様によっては、データ・キャッシュ・サーバ202上に記憶されるデータは、失効日付および/または時刻も含み得る。これらの例では、データ・キャッシュ・サーバ202がデータを求める要求を受信し、データ応答が失効している場合、データ・キャッシュ・サーバ202は、ユーザにキャッシュデータを送信せず、代わりに、データサーバ204に更新データを要求し、次いで、更新データをユーザに送信してもよい。キャッシュデータが失効していない場合には、データ・キャッシュ・サーバ202は、キャッシュデータをユーザに送信し得る。態様によっては、データ・キャッシュ・サーバ202は、キャッシュされた権利者向けデータが失効しており(変更されているなど)、更新を必要とするかどうか判定するのに別の技法を使用し得る。
次に図4を参照すると、データサーバ204は更新データを受信し得る。新しいデータを受信し次第、データサーバ204は、パブリッシュサーバ208を使用してデータ・キャッシュ・サーバ202に更新データを通知し得る。更新データをデータ・キャッシュ・サーバ202に適時に提供するために、パブリッシュサーバ208は、データに対応するデータIDを使用してデータ・キャッシュ・サーバ202に新しいデータが到着していることを通知する。データIDは、データ・キャッシュ・サーバ202内の関連するキャッシュデータの階層を表す。この通知を受信し次第、データ・キャッシュ・サーバ202は、データサーバ204に、更新データを求める要求を送信する。データサーバ204は、データサーバ204がパブリッシュサーバ208を介して新しいデータを受信するときに、データ・キャッシュ・サーバ202を能動的に更新する。
図5aを参照すると、行1にはデータID Fund.Est.Cons.Group1.IBMが示されている。このデータIDは、ドメイン:Funds、Est、Cons、Group1、およびIBMを含み、Fundから開始する根とIBMで終了する葉とを有する階層とみなすことができる。データサーバ204は、「.」で区切られたデータIDの任意の部分を送信することにより、データ・キャッシュ・サーバ202に変更されたデータを通知することができる。例えば、Fund.Estという通知データIDを送信すると、データ・キャッシュ・サーバは、Fund.Est.Cons.Group1.IBM、Fund.Est.Cons.Group1.INTC、Fund.Est.Det.Group2.IBM、およびFund.Est.Det.Group2.INTCについてのデータを検索するはずである。別の例として、Fund.Est.ConsというデータIDの通知を送信すると、データ・キャッシュ・サーバは、Fund.Est.Cons.Group1.IBMおよびFund.Est.Cons.Group1.INTCについてのデータを検索するはずである。データIDは、少数の通知により多数の異なるデータキャッシュが更新されることを可能にする。
態様によっては、データ・キャッシュ・サーバはユーザ(ユーザ1やユーザ2など)に、データIDが変更されているという通知を送信する。ユーザ1およびユーザ2は独自のキャッシングシステムを持っていてよく、データ変更の適時の通知を得ようとし得る。図7を参照すると、データキャッシュを更新するための技法を説明する例示的流れ図が示されている。S710で、データ・キャッシュ・サーバ202は、データ・キャッシュ・サーバ202においてキャッシュされている可能性のある権利者向けデータを求めるユーザ要求を受信する。S715で、データ・キャッシュ・サーバ202は、例えば、要求側ユーザを識別し、許可サーバ206にユーザと関連付けられた許可、グループ、および権利トークンを検索するための許可問い合わせを送信することによって、要求側ユーザの許可を検索する。S720で、データ・キャッシュ・サーバ202は、データキャッシュ内に記憶されている要求されたデータが検索されたユーザ許可と交わる許可を有するかどうか判定する。データがキャッシュに記憶されている場合に、S725に示すように、データ・キャッシュ・サーバ202は、キャッシュデータが失効していないことを確認する。要求されたキャッシュデータが失効していない場合に、S730で、データ・キャッシュ・サーバ202は、ユーザの許可に基づいて、ユーザにキャッシュデータのサブセットを送信し得る。S735で、データ・キャッシュ・サーバ202は、パブリッシュサーバ208から非同期通知を受信する。パブリッシュサーバ208からのデータ通知の受信はユーザ要求への応答の後でのみ行われる必要はないことを理解すべきである。すなわち、S735における更新データ通知の受信は、図7に示すように、ユーザ要求への応答の前、応答の間、または応答の後に1回または複数回行われ得る。場合によっては、データサーバ204および/またはパブリッシュサーバ208は、データ・キャッシュ・サーバ202がいつユーザ要求に応答する可能性があるかを知らずに、更新データをデータ・キャッシュ・サーバ204に伝送するためのイベントまたはスケジュールを決定し得る。したがって、データ・キャッシュ・サーバ202は、データ通知を受信し、処理している間に、よって、パブリッシュサーバ208および/またはデータサーバ204から新しいデータを受信している間に、同時にキャッシュデータを求めるユーザ要求に応答するように構成され得る。
場合によっては、パブリッシュサーバ208は、パブリッシュサーバ208とデータサーバ204との間の通信を円滑化するために、データサーバ204と同じ(または類似の)ソフトウェアを利用してもよい。例えば、パブリッシュサーバ208は、利用登録(subscription)を管理するためにウェブサービスを利用してもよい。態様によっては、ユーザ222などのリモートユーザが非同期更新を受信するためにパブリッシュサーバ208に利用登録することができる。この態様では、パブリッシュサーバ208は、リモートユーザを更新するためにHTTPによりXMLを使用してウェブサイト上にデータを掲載し得る。またパブリッシュサーバ208は、リモートユーザを登録、登録解除するための登録表も含んでいてよい。一態様では、パブリッシュサーバ208は、リモートユーザにウェブサービス上で公開された新しいデータを通知するためのURLをリモートユーザに提供し得る。
またパブリッシュサーバ208は、データ・キャッシュ・サーバ202への更新を管理するためのパブリッシュ/サブスクライブ表も含んでいてよい。この態様では、データ・キャッシュ・サーバ202が利用者表に追加され、データがパブリッシュ/サブスクライブ表に追加される。データが変更される際に、データサーバ204は、パブリッシュサーバ208に、パブリッシュ/サブスクライブ表においてエントリが作成されたことを通知する。データ・キャッシュ・サーバ202が同じシグネチャでパブリッシュ/サブスクライブ表に位置する場合、キャッシュはデータ・キャッシュ・サーバ202において更新され得る。
また場合によっては、パブリッシュサーバ208は、通知システムも含んでいてよい。少なくとも一つの態様において、通知システムは、物理的にパブリッシュサーバ208内に位置し得る。ユーザ222またはデータ・キャッシュ・サーバ202が更新データについてパブリッシュサーバ208に利用登録するときに、通知システムは、更新データを求める要求の形のエントリを更新通知待ち行列に入れることができる。この待ち行列は、データ・キャッシュ・サーバ202やユーザ222などの利用登録されたユーザを更新するのに必要なすべてのデータを含み得る。待ち行列に要求を出し次第、待ち行列全体が、同じデータを求める前の要求の有無についてチェックされ得る。前の要求が存在する場合には、新しいエントリを作成するのではなく、当該待ち行列エントリが更新される。待ち行列はFIFO待ち行列(先入れ先出し)として実施され得る。通知ソフトウェアは、利用者に、データが更新されているという通知を送信し、対応する待ち行列エントリを削除し得る。また通知システムは、データサーバ204によって生成された更新データの通知の数も管理してよい。通知システムは、前の通知と後の通知がどちらも存在するかどうか判定し、通知の一方はもはや無関係であるため、当該通知を削除してよい。待ち行列管理は、重複通知が閾値頻度内に発生するのを防止することができる。例えば、待ち行列管理システムは、重複通知が所定の時間枠内(1分以内など)に発生することを許容しないことが可能である。重複通知の発生を防止することにより、データサーバ204への要求の数が低減され得る。
場合によっては、パブリッシュサーバ208からキャッシュデータの変更の通知を受信し次第、データ・キャッシュ・サーバ202は、古いデータを含むデータキャッシュの部分を無効化し(失効と表示するなど)、かつ/または、パブリッシュサーバ208もしくはデータサーバ204に、任意の知られている失効したデータの更新データを要求する(非同期的に要求するなどの)決定を行い得る。データ・キャッシュ・サーバ202がユーザ222から失効していることが知られているデータを求める要求を受信するときには、2つの応答のうちの一つが与えられ得る。新しいデータ更新および/または要求側ユーザのユーザ許可のタイミングに応じて、データ・キャッシュ・サーバ202は、要求されたデータの古いバージョンをユーザに送信する場合もあり、更新データがデータ・キャッシュ・サーバ202によって受信されるまで、要求されたデータのユーザへの配信を遅延させる場合もある。例えば、ユーザ要求を扱うデータ・キャッシュ・サーバ202のところのソフトウェアアプリケーションは、ユーザに更新データが提供されるべきかどうか、またはユーザが古いデータで満足するはずであるかどうか判定し得る。
前述のように、データ・キャッシュ・サーバ202は、キャッシュデータのうちの一部が失効している(または失効している可能性がある)と判定するときに、データサーバ204に更新データを要求し得る。データサーバ204がデータ・キャッシュ・サーバ202に更新データを提供することができない場合に、データ・キャッシュ・サーバ202からの更新要求は、データサーバ204が要求を処理し、更新データを送信することができるまで、待ち行列内に留まり得る。場合によっては、データサーバ204がキャッシュを更新することができない場合に、システムは、管理者またはデータ提供者のモニタリング施設に警報を送信してよい。
少なくとも一つの態様において、待ち行列通知は増分順序番号を含んでいてよく、そのため、複数のデータキャッシュに最新の順序番号について相互に問い合わせさせることが可能になる。例えば、キャッシュは、特定の許可についてのその順序番号をブロードキャストしてよく、データ・キャッシュ・サーバ202上のその他のキャッシュもすべて、その特定の許可に対応するそれぞれの順序番号を応答し、ブロードキャストしてよい。この例では、あるキャッシュが別のキャッシュより大きい順序番号を有する場合に、より大きい順序番号を有するキャッシュはそのデータを失効と表示してよく、次いで、データサーバ204に更新データを要求してよい。少なくとも一つの態様において、キャッシュが通知サービスから通知を受信する場合に、キャッシュは新しい順序番号を更新し、記憶する。
少なくとも一つの態様において、データ・キャッシュ・サーバ202は、分散されたキャッシュを使用し得る。この場合には、単一のサーバがマスタとみなされ、通知と、すべてのデータ・キャッシュ・サーバ(またはサーバのグループ)の間で分散されているキャッシュの更新とを管理し得る。マスタ・データ・キャッシュ・サーバの故障イベントが発生し次第、別のマスタサーバがサーバのグループの中から選択される。
前述のように、ユーザ要求に応答してユーザに送信されるデータは、ユーザの許可に左右され得る。加えて、別の態様では、ユーザに送信される応答データは、ユーザの別の特性に応じてさらに制限され、または区分化され得る。例えば、ユーザは、ユーザの地理的区域に基づいてもっぱら追加のデータ(またはより少ないデータ)だけを受信してもよい。別の態様では、ユーザが金融機関に有する口座の種類に応じて、ユーザに選択の量または種類のデータだけが表示されてもよい。データ・キャッシュ・サーバ202からユーザに提供される応答をこれら追加の特性に基づかせることを区分化と呼んでもよい。この種の区分化を利用する際に、複数のデータセットに関する許可を定義するために、共通の符号セットがそれらのデータセットと関連付けられてもよい。共通の符号セットによって定義される許可は、ユーザがユーザの現在の地域または国の外部にあるデータを見ることができないという結果をもたらしてもよく、他の特性に基づいてユーザからデータを制限してもよい。図6を参照すると、権利者向けデータの異なるサブセットが異なる許可を得ている異なるユーザに配信される例示的流れ図が示されている。図7を参照すると、データキャッシュを更新するための技法を記述する例示的流れ図が示されている。通常、ユーザには、このように許可を管理するための権利トークンが割り当てられるはずである。権利トークンは、大量の許可が前述のようにより少数のセットへとグループ化されることを可能にする。
図8を参照すると、キャッシュされた権利者向けデータをユーザに提供するための上記局面のいくつかを例示する流れ図が示されている。S805に示すように、データ・キャッシュ・サーバ202はユーザ222などのユーザから権利者向けデータを求める要求を受信する。S810で、データ・キャッシュ・サーバ202はまず、要求のハッシュ値を計算してよく、次いで、データがローカルキャッシュ記憶に存在するかどうか判定してよい。要求されたデータがローカルキャッシュ内に存在する(S810:はい)場合に、データ・キャッシュ・サーバ202は、次いでS815で、許可サーバ206から要求側ユーザの許可を検索し、次いでS820で、ユーザの許可がキャッシュされたデータ許可と交わる(一致する、または対応する許可を有するなど)かどうか判定し得る。ユーザの権利トークンは、グループ許可がより少数のバケットとして表されることを可能とし得る。ユーザの許可がデータ許可と交わり、またはキャッシュシグネチャと組み合わされた権利トークンが存在する場合(S820:はい)、データ・キャッシュ・サーバ202は、次いでS825で、キャッシュデータが失効しているかどうか判定し得る。キャッシュデータが失効していない場合(S825:いいえ)に、データ・キャッシュ・サーバ202は、次いでS830に示すように、データをユーザに送信し得る。ユーザの許可がデータ許可と交わらない場合(S820:いいえ)に、データ・キャッシュ・サーバ202は、ユーザに、ユーザはデータを閲覧する許可を得ていないと応答する。
この例では、キャッシュデータが失効している場合(S825:はい)に、次いでS835で、データ・キャッシュ・サーバ202は、データサーバ204に更新データを要求し得る。S840で、データサーバ204は、要求された更新データをデータ・キャッシュ・サーバ202に送信する。次いでS845で、データ・キャッシュ・サーバ202は、更新データを受信し、S830で更新データを要求側ユーザに送信する前に、データをローカルでキャッシュする。
工程S810に戻って、データ・キャッシュ・サーバ202が、ユーザの要求と一致するデータがキャッシュ内に存在しないと判定した場合(S810:いいえ)に、データ・キャッシュ・サーバ202は、S835で、データサーバ204にデータを要求し得る。また、場合によっては、データ・キャッシュ・サーバ202は、潜在的により効率よく動作するために、S815で同時に、ユーザの許可または権利トークンも要求してよい。S845で、データ・キャッシュ・サーバ202は、更新データを受信し、データをローカルでキャッシュし、次いでS830で、更新データをユーザに送信し得る。
また、前述のように、データ・キャッシュ・サーバ202は、S850に示すように、データが変更される際にキャッシュへの更新を受信するように一つまたは複数のパブリッシュサーバ208に利用登録してもよい。データ・キャッシュ・サーバ202がパブリッシュサーバ208に利用登録するときに、パブリッシュサーバ208は、S855に示すように、更新データ、またはデータが変更されているという通知をデータ・キャッシュ・サーバ202に送信する。場合によっては、パブリッシュサーバ208および/またはデータ・キャッシュ・サーバ202において走る非同期プロセスが、データ・キャッシュ・サーバ202上の権利者向けデータキャッシュを効果的に最新に保つように、周期的にスケジュールされ、かつ/またはイベント駆動されてもよい。図8には、パブリッシュサーバ208の利用登録の時間的特性、および変化が原因でデータが非同期的にデータ・キャッシュ・サーバ202に届く時間を示すためにS850とS855との間に破線が表示されている。
本発明は、本明細書に記載されている構成要素および方法工程の構造的詳細および構成だけにその用途が限定されるものではないことを理解すべきである。本発明は、他の態様も可能であり、様々なやり方で実施し、実行することができる。以上態様の変形および改変も本発明の範囲内に含まれる。例えば、図に示す工程は、記載される以外の順序で実施されてもよく、反復されてもよいこと、および図示の一つまたは複数の工程は、開示の局面に従って任意選択とすることもできることを当業者は理解するであろう。本明細書において開示し、定義する発明は、前述の、またはテキストおよび/もしくは図面から明らかな個々の特徴のうちの2つ以上のあらゆる選択し得る組み合わせにまで及ぶことを理解すべきである。これらの異なる組み合わせはすべて本発明の様々な選択し得る局面を構成する。本明細書に記載される態様は、本発明を実施するための知られている最良の形態を説明し、当業者が本発明を利用することを可能にするものである。

Claims (23)

  1. メモリと、
    コンピュータサーバに、
    データサーバから、コンピュータサーバにアクセスすることを許可された少なくとも1名のユーザに対応する関連付けられたデータ許可を有する権利者向けデータを受信させ、
    権利者向けデータと該権利者向けデータの関連付けられたデータ許可に対応する関連識別子とを記憶することを含む、権利者向けデータのキャッシングを行わせ、
    コンピュータサーバの第1のユーザからの権利者向けデータの少なくとも一部分を求める第1のデータ要求を受信させ、
    コンピュータサーバの第1のユーザに対応するユーザ許可を検索させ、かつ
    第1のユーザの許可と権利者向けデータの関連付けられたデータ許可に対応する関連識別子とに基づくものである、第1のユーザの許可が前記キャッシュされた権利者向けデータの関連付けられたデータ許可と交わるかどうかの判定を行わせ、
    第1のユーザの許可が権利者向けデータの関連付けられたデータ許可と交わる場合に、コンピュータサーバが、第1のユーザに前記キャッシュされた権利者向けデータの少なくともサブセットを伝送するようにさらに構成されている
    ように構成された、コンピュータサーバの動作を制御するように構成されたプロセッサと
    を含む、コンピュータサーバ。
  2. コンピュータサーバが、キャッシュされた権利者向けデータを第1のユーザに伝送する前に、該キャッシュされた権利者向けデータが失効しているかどうか判定するようにさらに構成されている、請求項1記載の装置。
  3. コンピュータサーバが、
    コンピュータサーバの第2のユーザから、第1のユーザから受信された第1のデータ要求と同じ権利者向けデータを要求する第2のデータ要求を受信し、
    コンピュータサーバの第2のユーザに対応する、第1のユーザの許可とは異なる、前記要求された権利者向けデータに関するユーザ許可を検索し、かつ
    第2のユーザ要求に応答して、キャッシュされた権利者向けデータの異なるサブセットを第2のユーザに伝送する
    ようにさらに構成されている、請求項1記載の装置。
  4. コンピュータサーバが、キャッシュされた権利者向けデータが変更されるときに該キャッシュされた権利者向けデータの更新を受信するようにパブリッシュサーバに利用登録するようにさらに構成されている、請求項1記載の装置。
  5. コンピュータサーバが、キャッシュデータの失効の前にパブリッシュサーバから更新データを受信するように構成されている、請求項4記載の装置。
  6. コンピュータサーバが、
    コンピュータサーバの第1のユーザから、第1のデータ要求と同じ権利者向けデータを要求する第2のデータ要求を受信し、
    第1のユーザの許可が、第1のデータ要求を受信した後で変更されていると判定し、かつ
    第1のユーザにキャッシュされた権利者向けデータの異なるサブセットを伝送する
    ようにさらに構成されている、請求項1記載の装置。
  7. データサーバから、コンピュータサーバにアクセスすることを許可された少なくとも1名のユーザに対応する関連付けられたデータ許可を有する権利者向けデータを受信する工程、
    権利者向けデータと該権利者向けデータの関連付けられたデータ許可に対応する関連識別子とを記憶することを含む、権利者向けデータのキャッシングを行う工程、
    第1のユーザから権利者向けデータの少なくとも一部分を求める第1の要求を受信する工程、
    第1のユーザの許可と権利者向けデータの関連付けられたデータ許可に対応する関連識別子とに基づくものである、第1のユーザの許可が前記キャッシュされた権利者向けデータの関連付けられたデータ許可と交わるかどうかの判定を行う工程、および
    第1のユーザの許可が権利者向けデータの関連付けられたデータ許可と交わる場合に、第1のユーザに前記キャッシュされた権利者向けデータの少なくともサブセットを伝送する工程
    を含む方法。
  8. 第1のユーザにキャッシュされた権利者向けデータを伝送する前に、該キャッシュされた権利者向けデータが失効しているかどうか判定する工程
    をさらに含む、請求項7記載の方法。
  9. 権利者向けデータのキャッシングを行う工程が、権利者向けデータを該権利者向けデータの関連付けられたデータ許可に対応するキャッシュシグネチャと共に記憶する工程を含む、請求項7記載の方法。
  10. キャッシュシグネチャがユーザ要求に対応する情報を含む、請求項9記載の方法。
  11. 更新データを受信するためにパブリッシュサーバに利用登録する工程、
    パブリッシュサーバから権利者向けデータについての非同期データ更新を受信する工程、および
    キャッシュされた権利者向けデータを更新された権利者向けデータで置き換える工程
    をさらに含む、請求項7記載の方法。
  12. 第1の要求のハッシュ値を計算することによってキャッシュシグネチャを生成する工程
    をさらに含む、請求項8記載の方法。
  13. ユーザの許可がデータ許可と交わるかどうかの判定を行う工程が、許可サーバからのユーザの許可を要求および受信する工程を含む、請求項7記載の方法。
  14. コンピュータシステム上で第1のユーザ許可を有する第1のユーザに対応する第1のデータ要求を受信する工程、
    第1のデータ要求と第1のユーザ許可とに対応する第1の応答データがローカル・データ・キャッシュに記憶されているかどうか判定する工程、
    第1の応答データがローカル・データ・キャッシュに記憶されている場合に、第1のユーザに応答データを送信する工程、
    コンピュータシステム上で、第1のユーザ許可とは異なる第2のユーザ許可を有する第2のユーザに対応する、第1のデータ要求と同じである第2のデータ要求を受信する工程、
    第2のユーザ要求と第2のユーザ許可とに対応する第2の応答データがローカル・データ・キャッシュに記憶されているかどうか判定する工程、
    第2の応答データがローカル・データ・キャッシュに記憶されている場合に、第2のユーザに第1の応答データとは異なる第2の応答データを送信する工程
    を含む方法。
  15. データがキャッシュされていない場合に、データに第1のユーザの要求または第2のユーザの要求のどちらかに対応するデータを要求し、データサーバから受信されたデータをキャッシュする工程
    をさらに含む、請求項14記載の方法。
  16. キャッシュデータのサブセットを送信する前にキャッシュデータの有効期限を確認し、キャッシュデータが失効していない場合に限り、第1のユーザまたは第2のユーザの一方にキャッシュデータのサブセットを送信する工程
    をさらに含む、請求項14記載の方法。
  17. 実行されると、プロセッサに、
    コンピュータシステム上で第1のユーザ許可を有する第1のユーザに対応する第1のデータ要求を受信する工程、
    第1のデータ要求と第1のユーザ許可とに対応する第1の応答データがローカル・データ・キャッシュに記憶されているかどうか判定する工程、
    第1の応答データがローカル・データ・キャッシュに記憶されている場合に、第1のユーザに応答データを送信する工程、
    コンピュータシステム上で、第1のユーザ許可とは異なる第2のユーザ許可を有する第2のユーザに対応する、第1のデータ要求と同じである第2のデータ要求を受信する工程、
    第2のユーザ要求と第2のユーザ許可とに対応する第2の応答データがローカル・データ・キャッシュに記憶されているかどうか判定する工程、
    第2の応答データがローカル・データ・キャッシュに記憶されている場合に、第2のユーザに第1の応答データとは異なる第2の応答データを送信する工程
    を含む方法を実施させるコンピュータ可読命令を記憶している、一つまたは複数のコンピュータ可読媒体。
  18. データがキャッシュされていない場合に、データに第1のユーザの要求または第2のユーザの要求のどちらかに対応するデータを要求し、データサーバから受信されたデータをキャッシュする工程
    をさらに含む、請求項17記載の方法。
  19. キャッシュデータのサブセットを送信する前にキャッシュデータの有効期限を確認し、キャッシュデータが失効していない場合に限り、第1のユーザまたは第2のユーザの一方にキャッシュデータのサブセットを送信する工程
    をさらに含む、請求項17記載の方法。
  20. 第1のユーザに対応する、第1のデータ要求と同じデータを要求する第3のデータ要求を受信する工程、
    第1のユーザの許可が、第1のデータ要求を受信した後で変更されていると判定する工程、
    第1のユーザに、第1のデータ要求に応答して第1のユーザに送信された応答データとは異なる応答データを送信する工程
    をさらに含む、請求項17記載の方法。
  21. 権利者向けデータのキャッシングを行う工程が、権利者向けデータを、該権利者向けデータの関連付けられたデータ許可に対応する権利トークンと共に記憶する工程を含む、請求項9記載の方法。
  22. 権利トークンが、同じキャッシュされた権利者向けデータにアクセスする同様の許可を有するユーザのグループ化を可能にする、請求項21記載の方法。
  23. キャッシュの更新の通知が、階層として配置され、データ・キャッシュ・サーバ上で記憶されている複数のキャッシュを更新することができる、請求項11記載の方法。
JP2012535262A 2009-10-20 2010-10-18 権利者向けデータのキャッシュ管理法 Active JP5638082B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/582,180 2009-10-20
US12/582,180 US8397066B2 (en) 2009-10-20 2009-10-20 Entitled data cache management
PCT/US2010/053003 WO2011049848A1 (en) 2009-10-20 2010-10-18 Entitled data cache management

Publications (2)

Publication Number Publication Date
JP2013514565A true JP2013514565A (ja) 2013-04-25
JP5638082B2 JP5638082B2 (ja) 2014-12-10

Family

ID=43880291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012535262A Active JP5638082B2 (ja) 2009-10-20 2010-10-18 権利者向けデータのキャッシュ管理法

Country Status (8)

Country Link
US (2) US8397066B2 (ja)
EP (1) EP2491493B1 (ja)
JP (1) JP5638082B2 (ja)
CN (1) CN102713865B (ja)
AU (1) AU2010310836B2 (ja)
BR (1) BR112012008967B1 (ja)
RU (1) RU2577191C2 (ja)
WO (1) WO2011049848A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015185113A (ja) * 2014-03-26 2015-10-22 日本電気株式会社 文書管理システム、キーバリューストア装置、文書管理方法、及びプログラム

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9026589B1 (en) * 2010-05-04 2015-05-05 Amazon Technologies, Inc. Stubbing techniques in distributed-services environments
US8955151B2 (en) * 2011-04-30 2015-02-10 Vmware, Inc. Dynamic management of groups for entitlement and provisioning of computer resources
US9444904B2 (en) * 2012-03-16 2016-09-13 Thomson Reuters Global Resources Content distribution management system
CN103490886B (zh) * 2012-06-12 2017-04-05 阿里巴巴集团控股有限公司 权限数据的验证方法、装置及系统
CN103530568B (zh) * 2012-07-02 2016-01-20 阿里巴巴集团控股有限公司 权限控制方法、装置及系统
US8782411B2 (en) 2012-07-25 2014-07-15 Oracle International Corporation System and method of extending oauth server(s) with third party authentication/authorization
US8806595B2 (en) * 2012-07-25 2014-08-12 Oracle International Corporation System and method of securing sharing of resources which require consent of multiple resource owners using group URI's
US9009787B2 (en) 2012-07-25 2015-04-14 Oracle International Corporation System and method of mapping and protecting communication services with OAuth
US9639318B2 (en) * 2012-09-26 2017-05-02 Tencent Technology (Shenzhen) Company Limited Systems and methods for sharing image data
US9015378B2 (en) * 2013-05-15 2015-04-21 Google Inc. Determining sensor information in the background on a mobile device
US20150033292A1 (en) * 2013-07-25 2015-01-29 Ddn Ip Holdings Limited Method and System for Sharing and Distributing Content
US20150227630A1 (en) * 2014-02-13 2015-08-13 Microsoft Corporation Caching queries for dynamic webpages
CN105338016B (zh) 2014-06-27 2019-08-23 国际商业机器公司 数据高速缓存方法和装置以及资源请求响应方法和装置
JP6394175B2 (ja) * 2014-08-19 2018-09-26 富士ゼロックス株式会社 サーバ装置、情報処理システムおよびプログラム
US20160212198A1 (en) * 2015-01-16 2016-07-21 Netapp, Inc. System of host caches managed in a unified manner
US9679026B2 (en) * 2015-02-06 2017-06-13 Bank Of America Corporation Methods and apparatus for bifurcating data storage for enabling implementation and manipulation of an interactive hierarchical entitlement structure
CN106209735A (zh) * 2015-04-30 2016-12-07 中国移动通信集团公司 一种信息处理方法、装置及电子健康档案系统
CN105141576A (zh) * 2015-06-30 2015-12-09 广州支点网络科技有限公司 一种授权管理系统以及授权方法
KR20170058726A (ko) * 2015-11-19 2017-05-29 삼성전자주식회사 방송 수신 장치를 포함하는 방송 수신 시스템 및 제어 방법
US10055444B2 (en) * 2015-12-16 2018-08-21 American Express Travel Related Services Company, Inc. Systems and methods for access control over changing big data structures
CN105610716B (zh) * 2016-03-09 2019-01-08 北京邮电大学 一种基于sdn的多媒体流量优化调度方法、装置及系统
US9948660B2 (en) * 2016-04-26 2018-04-17 Ca, Inc. Computer security based on hierarchical cache latency signature authentication
US10652248B2 (en) * 2016-07-28 2020-05-12 Molecula Corp. Systems and methods of managing data rights and selective data sharing
US10374792B1 (en) * 2016-09-29 2019-08-06 EMC IP Holding Company LLC Layout-independent cryptographic stamp of a distributed dataset
CN108108597A (zh) * 2016-11-25 2018-06-01 沈阳美行科技有限公司 一种基于ngtp架构的鉴权方法及装置
TWI652592B (zh) * 2017-04-20 2019-03-01 周宏建 Storage device and access control method thereof
CN108197256A (zh) * 2017-12-29 2018-06-22 北京辰森世纪科技股份有限公司 访问指定网络服务平台的方法和系统
US10409524B1 (en) * 2018-04-25 2019-09-10 Advanced Micro Devices, Inc. Dynamic memory traffic optimization in multi-client systems
JP7078478B2 (ja) * 2018-07-10 2022-05-31 株式会社バンダイナムコエンターテインメント 連動設定方法、連動用サーバ、ゲームサーバ、マネージメントサーバ及びゲームシステム
US11263348B2 (en) * 2018-09-28 2022-03-01 Atlassian Pty Ltd. Managing content authorization in a federated application system
CN109933719B (zh) * 2019-01-30 2021-08-31 维沃移动通信有限公司 一种搜索方法及终端设备
US11656992B2 (en) 2019-05-03 2023-05-23 Western Digital Technologies, Inc. Distributed cache with in-network prefetch
US11336450B2 (en) * 2019-09-06 2022-05-17 Jpmorgan Chase Bank, N.A. System and method for implementing market data rights enforcement
CN110781508B (zh) * 2019-10-25 2022-06-03 四川长虹电器股份有限公司 一种基于区块链技术的个人数据托管方法
US11308205B2 (en) * 2019-11-15 2022-04-19 Bank Of America Corporation Security tool for preventing internal data breaches
CN111586128B (zh) * 2020-04-28 2023-06-09 百度在线网络技术(北京)有限公司 小程序数据的获取方法、装置、设备以及存储介质
US11765250B2 (en) 2020-06-26 2023-09-19 Western Digital Technologies, Inc. Devices and methods for managing network traffic for a distributed cache
CN111787088B (zh) * 2020-06-28 2023-04-28 百度在线网络技术(北京)有限公司 小程序数据处理的方法和装置
US11675706B2 (en) 2020-06-30 2023-06-13 Western Digital Technologies, Inc. Devices and methods for failure detection and recovery for a distributed cache
CN111737499B (zh) * 2020-07-27 2020-11-27 平安国际智慧城市科技股份有限公司 基于自然语言处理的数据搜索方法及相关设备
US11736417B2 (en) 2020-08-17 2023-08-22 Western Digital Technologies, Inc. Devices and methods for network message sequencing

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001014209A (ja) * 1999-06-25 2001-01-19 Sharp Corp 情報中継装置および情報中継方法、ならびに情報中継プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2002358229A (ja) * 2001-06-04 2002-12-13 Ntt Data Corp キャッシュ装置及びコンピュータプログラム
JP2003186747A (ja) * 2001-12-14 2003-07-04 Nec Corp アクセス権管理システム、その管理方法及びそのプログラム
JP2006309383A (ja) * 2005-04-27 2006-11-09 Hitachi Ltd コンピュータシステム
JP2007501984A (ja) * 2003-05-29 2007-02-01 オラクル・インターナショナル・コーポレイション セキュリティ対応のコンテンツのキャッシュを容易にする方法および装置
JP2007128371A (ja) * 2005-11-04 2007-05-24 Fujitsu Ltd コンテンツ検索システム
US20070226320A1 (en) * 2003-10-31 2007-09-27 Yuval Hager Device, System and Method for Storage and Access of Computer Files
JP2009140290A (ja) * 2007-12-07 2009-06-25 Fujitsu Ltd コンテンツ中継装置、コンテンツ中継システム及びコンテンツ中継方法並びにプログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5941947A (en) * 1995-08-18 1999-08-24 Microsoft Corporation System and method for controlling access to data entities in a computer network
AUPS339102A0 (en) * 2002-07-04 2002-08-01 Three Happy Guys Pty Ltd Method of monitoring volumes of data between multiple terminals and an external communication network
US6959362B2 (en) * 2003-05-07 2005-10-25 Microsoft Corporation Caching based on access rights in connection with a content management server system or the like
US7577659B2 (en) * 2003-10-24 2009-08-18 Microsoft Corporation Interoperable credential gathering and access modularity
US20050144482A1 (en) * 2003-12-17 2005-06-30 David Anuszewski Internet protocol compatible access authentication system
US20050154915A1 (en) * 2004-01-09 2005-07-14 Peterson Matthew T. Networked computer user identification and authentication apparatus method and system
US9081872B2 (en) * 2004-06-25 2015-07-14 Apple Inc. Methods and systems for managing permissions data and/or indexes
US7600230B2 (en) 2004-07-06 2009-10-06 Oracle International Corporation System and method for managing security meta-data in a reverse proxy
US20070208946A1 (en) * 2004-07-06 2007-09-06 Oracle International Corporation High performance secure caching in the mid-tier
US7529931B2 (en) * 2004-12-23 2009-05-05 Microsoft Corporation Managing elevated rights on a network
US7962915B2 (en) * 2005-03-18 2011-06-14 International Business Machines Corporation System and method for preserving state for a cluster of data servers in the presence of load-balancing, failover, and fail-back events
US8151323B2 (en) 2006-04-12 2012-04-03 Citrix Systems, Inc. Systems and methods for providing levels of access and action control via an SSL VPN appliance
US7845003B2 (en) * 2006-10-31 2010-11-30 Novell, Inc. Techniques for variable security access information

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001014209A (ja) * 1999-06-25 2001-01-19 Sharp Corp 情報中継装置および情報中継方法、ならびに情報中継プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2002358229A (ja) * 2001-06-04 2002-12-13 Ntt Data Corp キャッシュ装置及びコンピュータプログラム
JP2003186747A (ja) * 2001-12-14 2003-07-04 Nec Corp アクセス権管理システム、その管理方法及びそのプログラム
JP2007501984A (ja) * 2003-05-29 2007-02-01 オラクル・インターナショナル・コーポレイション セキュリティ対応のコンテンツのキャッシュを容易にする方法および装置
US20070226320A1 (en) * 2003-10-31 2007-09-27 Yuval Hager Device, System and Method for Storage and Access of Computer Files
JP2006309383A (ja) * 2005-04-27 2006-11-09 Hitachi Ltd コンピュータシステム
JP2007128371A (ja) * 2005-11-04 2007-05-24 Fujitsu Ltd コンテンツ検索システム
JP2009140290A (ja) * 2007-12-07 2009-06-25 Fujitsu Ltd コンテンツ中継装置、コンテンツ中継システム及びコンテンツ中継方法並びにプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015185113A (ja) * 2014-03-26 2015-10-22 日本電気株式会社 文書管理システム、キーバリューストア装置、文書管理方法、及びプログラム

Also Published As

Publication number Publication date
BR112012008967A8 (pt) 2018-09-11
CN102713865A (zh) 2012-10-03
EP2491493A1 (en) 2012-08-29
US8397066B2 (en) 2013-03-12
AU2010310836B2 (en) 2016-11-17
EP2491493B1 (en) 2020-05-20
JP5638082B2 (ja) 2014-12-10
US20130152172A1 (en) 2013-06-13
CN102713865B (zh) 2015-12-16
EP2491493A4 (en) 2015-04-15
AU2010310836A1 (en) 2012-05-31
US9043881B2 (en) 2015-05-26
BR112012008967B1 (pt) 2021-04-13
WO2011049848A1 (en) 2011-04-28
US20110093925A1 (en) 2011-04-21
RU2577191C2 (ru) 2016-03-10
RU2012119298A (ru) 2013-11-27

Similar Documents

Publication Publication Date Title
JP5638082B2 (ja) 権利者向けデータのキャッシュ管理法
US11222111B2 (en) Techniques for sharing network security event information
JP6173290B2 (ja) コンテンツ管理するための方法とシステム
US9633024B2 (en) Policy driven cloud storage management and cloud storage policy router
US9444904B2 (en) Content distribution management system
US8255489B2 (en) Method of data collection among participating content providers in a distributed network
US8799576B1 (en) System for caching data
US20060200665A1 (en) System and method for protecting configuration settings in distributed text-based configuration files
US8706856B2 (en) Service directory
CN103329113A (zh) 配置用于分级高速缓存的代理服务器以及动态站点加速和自定义对象和相关的方法
US20240080373A1 (en) Caching in a content delivery framework
JP2010539601A (ja) サービスプロバイダへの影響を抑制した状態で、ネットワーククライアントに対して的を絞ったコンテンツを特定して提供するためのアプローチ
US20070143419A1 (en) E-mail attachment as one-time clickable link
US9137325B2 (en) Efficiently isolating malicious data requests
US20130013787A1 (en) Replicating selected secrets to local domain controllers
US20220188835A1 (en) Blockchain-based personal data management systems
US11522704B1 (en) Encrypted data management system
CN102439936A (zh) 用于身份网络中隐私管理的方法、用于其的物理实体和计算机程序
JP2023001111A (ja) プログラム
JP2017117015A (ja) 情報処理システム、プロキシ装置、プロキシ制御方法及びプロキシプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131015

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140826

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

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20141017

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20141022

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141021

R150 Certificate of patent or registration of utility model

Ref document number: 5638082

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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