JP6185917B2 - クラスタにおける効率的なキャッシュ管理 - Google Patents

クラスタにおける効率的なキャッシュ管理 Download PDF

Info

Publication number
JP6185917B2
JP6185917B2 JP2014533379A JP2014533379A JP6185917B2 JP 6185917 B2 JP6185917 B2 JP 6185917B2 JP 2014533379 A JP2014533379 A JP 2014533379A JP 2014533379 A JP2014533379 A JP 2014533379A JP 6185917 B2 JP6185917 B2 JP 6185917B2
Authority
JP
Japan
Prior art keywords
cache
page
dependency
memory
server
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
JP2014533379A
Other languages
English (en)
Other versions
JP2014528607A (ja
JP2014528607A5 (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 JP2014528607A publication Critical patent/JP2014528607A/ja
Publication of JP2014528607A5 publication Critical patent/JP2014528607A5/ja
Application granted granted Critical
Publication of JP6185917B2 publication Critical patent/JP6185917B2/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/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching

Landscapes

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

Description

背景
コンテンツ管理システムは、開発者がインターネット全体にわたり、オンラインサイトを通じてユーザにまで供給されたコンテンツを公開しリフレッシュすることを可能にする。これらのサイトのコンテンツはすぐに変更され、開発者はサイトを絶えず公開し更新する。なお、この明細書中で用いられる用語「サイト」は、インターネットサイト、ポータル、一般にアクセス可能なサイト、パスワードで保護されたサイト、および、専用のドメイン内で展開される排他的なサイトなどを含む。この明細書中の説明はコンテンツ管理システムのコンテキストの改善に焦点を合わせているが、以下に説明する改善例は、いくつかのノードにわたって迅速かつ頻繁に更新される情報を管理する如何なるシステムにも適用される。
典型的には、コンテンツ管理システムは共用の集中型リポジトリを有する。コンテンツサーバおよびローカルサーバを含むシステムの各層はローカルキャッシュを有し得る。ローカルキャッシュは、サイトが、セントラルレポジトリに問合せする必要なしに、頻繁にアクセスされた項目を迅速に表示することを可能にする。これらのキャッシュを管理し、キャッシュのコンテンツを確実に最新かつ有効な状態にしておくことにより、システムリソースがかなり消費されてしまう可能性がある。
キャッシュ管理を行わない場合、サイトは、情報を更新するかまたは情報を無効なものとしてマークする手段がなければ、期限切れの情報または変更された情報を表示してしまう可能性がある。キャッシュ管理では、一般に、キャッシュとセントラルレポジトリとの間で送信されたアップデートが必要となるが、これにより、各々に記憶された情報が別のものに記憶された情報を確実に反映したものとなる。これにより、サイトがキャッシュ内のデータに依拠して、それらデータを正確に表示することが可能となる。この更新プロセスに起因して、期限切れのデータまたは無効になったデータなどの「不良な」データが識別される。
コンテンツ管理システムの例を示す図である。 分散型キャッシュアーキテクチャの実施例を示す図である。 キャッシュ内のアセットを無効化する方法の実施例を示すフローチャートである。 キャッシュにおける無効なアセットを含むページを無効化する方法の実施例を示すフローチャートである。 ローカルキャッシュ構造の実施例を示す図である。
実施例の詳細な説明
以下の説明では、実施例の構造および動作を理解し易くするために例を用いる可能性がある。これらの例は特許請求の範囲を限定するよう意図されたものではなく、そのように解釈されるべきではない。
図1は、分散型キャッシュシステムを採用したコンテンツ管理システムの例を示す。この明細書中で用いられる用語として、「分散型キャッシュ」は、システム内のノードに取付けられた複数のローカルキャッシュで構成されるキャッシュシステムを意味する。ノードは、開発に用いられるコンテンツサーバ、公開に用いられるコンテンツサーバ、および来訪者によるリモートアクセスに用いられるサテライトサーバで構成され得る。サテライトサーバはエッジキャッシングシステムであって、キャッシュする目的で、それらサテライトサーバは単にそれら自体のローカルキャッシュを含む他のノードとなる。
変更されたコンテンツを含むコンテンツ管理システムは、これらの変更を頻繁に公開することとなる。この明細書中の説明ではこれを動的な公開と称する場合がある。たとえば、コンテンツ管理システムは、製品を販売するウェブサイトで構成されてもよい。ウェブサイトはいくつかの異なるウェブページを含む可能性があり、その何ページかは場合によってはリアルタイムでデータ入力されて(populated)表示され得る。販売中の製品は、サイト上のいくつかの異なるウェブページ内に存在し得る。たとえば、衣類小売り業者は、アセットまたはキャッシュオブジェクトとも称され得る項目を表示させてもよく、この項目は、女性用の衣類および靴についてのページ、運動競技用の衣類および用具についてのページ、ならびに、すべての靴についてのページ上で、1足の女性用ランニングシューズで構成される。
この1足の靴はアセットを表わす。アセットは、ウェブページをデータ入力するのに用いられる如何なる項目をも含み得る。例として、写真、テキスト、図などを含み得る。アセットには、いくつかの異なる属性が関連付けられてもよい。靴などを例とした製品の場合、これらの属性は、靴の画像、それらの価格、ブランド名などを含み得る。典型的なシステムにおいては、それらの属性のうちの1つが変わると、その製品に関するページが無効化される可能性がある。無効化はページレベルで起こる可能性があるが、キャッシュされた如何なるオブジェクトのレベルでも起こり得る。キャッシングを必要とするデータの量および更新の頻度により、データベースアクセス時間、アーキテクチャの他の部分に対する負荷、および、期限切れの情報を削除するのにかかる時間が増大してしまう。期限切れの情報が存在していると、システムの効率が低下し、顧客満足度が低下してしまう。
特定のウェブサイトのユーザまたは来訪者は、システムの生成側を確認することとなる。図1に図示のとおり、コンテンツ管理システム10が他のいくつかの構成要素を有することは明らかである。開発システム12は、システム内のアセットに対する変更を公開するのに用いられるコンテンツサーバ14を有する。コンテンツサーバは、データベース15から頻繁にアクセスされたアセットを記憶するローカルキャッシュを有する。管理およびステージングシステム18はまた、生成システム20およびデータベース17に対する変更を公開するのに用いられるコンテンツサーバ16を有する。生成システム20は、22などのコンテンツサーバ、ならびに24および26などのサテライトサーバを有する。ユーザまたは来訪者29は、典型的には、サテライトサーバを介してウェブサイトのページにアクセスするだろう。これらのサーバの各々は複数のローカルキャッシュを有し、これらローカルキャッシュ同士が固有の態様でリンクされて分散型キャッシュとして作用する。各々のサーバはまた、1つ以上のプロセッサを有し、これら1つ以上のプロセッサは、1セットの命令を含みかつコンピュータ読取可能な不揮発性媒体に記憶されたプログラムを実行する。
分散型キャッシュシステムの実施例を図2に示す。ローカルキャッシュは、使用パターンおよび構成に基づいてデータ入力され、キャッシュの量は典型的には利用可能なメモリまたは他のリソースによって制限される。しかしながら、システム全体をさらに効率的に機能させるために、これらのキャッシュの各々がキャッシュ全体を視認する必要はない。変更は1つのローカルキャッシュから他のノードにまで配信される。この場合、ノードは、サーバおよびそのローカルキャッシュで構成される。サーバはコンテンツサーバまたはサテライトサーバで構成されてもよい。コンテンツサーバを構成するサーバでは、開発者がコンテンツをアセットの形で生成および開発する。サテライトサーバは、コンテンツサーバからキャッシュ更新を受信する。
システムアーキテクチャは多くの形を取り得る。図2のシステム実施例30においては、34などのコンテンツサーバはコンテンツサーバクラスタ32に存在し得る。34などの各コンテンツサーバは36などのローカルキャッシュを有する。ローカルキャッシュは、繰返しアクセスされたデータがメモリ内で速やかにアクセスされることを可能にして、データベースまたはネットワークがアクセスするソースで構成され得るデータソース38に対する度重なる呼出しを回避する。
システムはまた、典型的には、40などの少なくとも1つのサテライトサーバを含む。コンテンツサーバと同様に、40などのサテライトサーバの各々はローカルキャッシュ42およびデータソース44を有する。上述のとおり、「A」などのアセットの属性がコンテンツサーバで更新されると、コンテンツサーバは、サテライトサーバだけでなくそれ自体のローカルキャッシュにも変更を伝達することとなる。現行のシステムの性能利点は、以下により詳細に説明される伝達の性質に起因している。アセットの属性が変更されると、この変更によりいくつかの事象が引起こされる。図3は、分散型キャッシュを更新する方法の実施例のフローチャートを示す。
変更があった場合、更新された情報をシステム内の他のキャッシュが有するように、これら他のキャッシュにこの変更を伝える必要がある。さらに、変更された属性は、同様に変更されるであろう関連する従属性を有し得る。たとえば、1例として上で用いられた靴には価格の変更があるかもしれない。これは、製造業者がそれらの製品すべてについての価格を上げるかまたは下げることに起因している。以下により詳細に説明されるキャッシュの一部においては、アセットの異なる属性間の従属性が追跡される。従属性は、この場合製造業者である、このアセットに関連付けられる重要項目のリストである。
アセットについての価格変更が発生すると、システムは、キャッシュの従属性部分をチェックし、アセットに関連付けられる従属性を含めて、これらを同様に無効化する。これらの従属性は、そのページ上のそのアセットを含む他のウェブページから成るキャッシュオブジェクトの形を取ってもよい。従属性は従属性キャッシュに記憶されるオブジェクトである。図5に図示のとおり、「オブジェクトキャッシュ」はこのような1セットの従属性へのリンクを維持する。このようなリンクは、従属性キャッシュの識別子、すなわち「オブジェクトキャッシュ」の一部として維持される文字列値、に基づいている。
図3および図4は、プログラムを実行することによってサーバの1つ以上のプロセッサが動作するプロセスを示す。図3においては、50において、アセットにおける変更が発生する。この変更は、システムにおいて開発者または他の管理者によって公開される変更により、コンテンツサーバで起こるだろう。52において、コンテンツサーバは、分散型キャッシュにおける他のローカルキャッシュに変更を配信する。加えて、54において、コンテンツサーバがまた、それ自体のキャッシュにおけるアセットを無効化するだろう。なお、これらのプロセスが同時にまたは如何なる順序でも行われる可能性があり、特定の順序がこの明細書の説明から示唆されるべきでないことに留意されたい。
受信ノードは、配信された変更を受信し、56においてそれら自体の従属性キャッシュをチェックする。アセット識別子が従属性キャッシュに存在する場合、58において、ノードが、識別子を無効なものとしてマークする。識別子は、当該識別子に関連付けられるフラグビットを含み得る。この場合、フラグビットは、0または1に設定されて、識別子を有効または無効なものとしてマークし得る。一実施例においては、フラグは、真/偽を示すブールフラグ(Boolean flag)から成る。従属性キャッシュに存在するアセット識別子はまた、そのキャッシュにおけるそれらの生成時に割当てられたバージョン番号でバージョン化される。オブジェクトキャッシュにおけるこれらの識別子に対して維持されるリンクはまたバージョン識別子を含む。この技術により、連続した無効化動作と従属性キャッシュへの追加との間に存在する可能性のある如何なる競合状態も排除される。
性能利点は、無効化されたアセットを有するページが要求されるまで、無効なアセットを備えたページをノードが評価しないことに起因している。無効化されたアセットは、当該アセットを参照するページにとってもはや利用可能ではないので、ページ自体が無効化される。図4は、ページについての要求を処理するためのプロセスの実施例を示す。60において、ノードがページについての要求を受信する。62において、ノードは、ページがいずれかの無効なアセットを有しているかどうかを判断するために従属性キャッシュをチェックして、ページを無効にする。ページが有効なアセットを有している場合、64において、システムがページをウェブサイト来訪者に供給する。ページが無効であることを意味する無効なアセットを当該ページが有している場合、68において、当該ページがキャッシュから削除される。
なお、ページが無効なものとしてマークされることにより、結果として、単に、ページについての要求が受信されたときに、70において、そのページがデータストアからの新しい情報で再生成されるに過ぎないことに留意されたい。そうでない場合、ページは、単に、無効なものとしてマークされたアセットを有したままとなる。ページが再生成されると、72において、システムが新しいページを供給する。従属性キャッシュを更新するために、74において、ページがオブジェクトキャッシュに記憶され、そして、従属性キャッシュに従属性を記憶させることによって、その従属性が更新される。ページは、次いで、ページがリンクされているアセットが無効化されるまで、またはページが期限切れになるまで有効なままとなる。
このプロセスにおいて2つの異なる動作が行われる。第1に、オブジェクトの無効化は、ユーザの編集、公開された新しい情報または他の何らかの動作によってもたらされる。第2に、キャッシュされたオブジェクトについてキャッシュから読出しが行われる。無効化が行われているとき、キャッシュされたデータはいずれも実際には削除されない。従属性の入力だけが無効なものとしてマークされる。キャッシュオブジェクトはこの従属性を保持して、キャッシュに引続き存在させるようにする。キャッシュの読出しが行われると、システムは、それがもはや有効ではないと判断し、このため、それがキャッシュに存在する理由がなくなる。次いで、システムは、読出時に無効なオブジェクトを削除する。また、スカベンジャ(scavenger)として作用するクリーンアッププロセス時にオブジェクトを削除してもよい。削除には、ハッシュ表のような構造内のセルを空にすることが必要となる可能性がある。別の実施例では、システムに無効性を無視させるかまたは上書きさせて、この無効性をシステムに検討させないようにしてもよい。
これらのページは、後のアクセス時に無効化され、無効化されたものとしてマークされる。言換えれば、従属性が無効化されると、いくつかのページが無効化の候補になる可能性があるが、システムは、それらページのいずれが候補に該当するかを認識または配慮しない。システムは単純に認識していないだけであって、それは後のアクセス時に計算される。これにより性能が著しく向上する。このため、システムは、何百万にものぼり得るページが無効なリンクを含むかどうかをチェックして、それらページを無効なリンクを含むものとしてマークするために、これら何百万ものページにかけてスパイダを機能させる必要はない。
図5は、上述のプロセスを可能にするキャッシュ構造の実施例を示す。ローカルキャッシュ80は3つのサブキャッシュまたはキャッシュの区画を有する。これらは、そこからページが供給されるオブジェクトキャッシュ82、従属性キャッシュ84および通知キャッシュ86を含む。ページが要求されると、オブジェクトキャッシュ82は、無効なアセットについてチェックするために従属性キャッシュ84をチェックする。変更によってアセットが無効化されると、通知キャッシュ86は、必要に応じて、他のクラスタメンバまたはサテライトサーバキャッシュに変更を伝達する。これにより従属性キャッシュも更新される。
キャッシュの更新は、コンテンツサーバと他のコンテンツサーバとの間、およびコンテンツサーバとサテライトサーバとの間で起こる可能性がある。コンテンツサーバは、通知キャッシュを用いて他のコンテンツサーバを更新する。ページおよび従属性は更新されず、単に無効化の通知がなされる。上述のとおり、無効化によって単に従属性が削除されて、ページが無効にされる。典型的には、読出動作が行われると、無効なページがキャッシュから削除される。代替的には、それら無効なページを削除するためにバッググラウンド動作が定期的に実行されてもよい。
コンテンツサーバとサテライトサーバとの間の更新はさまざまに作用する。サテライトサーバは、典型的な読出し動作時にページデータを読出すが、特別なヘッダから従属性を受取る。無効化プロセスはずらして行われてもよく、ページの再生成や、ダブルバッファリングされたキャッシングが可能となり得る。ページの再生成は、セッションの公開中にページを再生成するための巡回を含み得る。
ダブルバッファリングされたキャッシングは、実際に公開中のウェブサイト上でコンテンツサーバおよびサテライトサーバキャッシュをタンデムに用いることを必要とし得る。これにより、ページがコンテンツサーバまたはサテライトサーバ上ではキャッシュ内に常に維持されることが確実になり、ページ要求による過負荷からコンテンツサーバが保護される。これにより、ウェブサイトが空白ページまたは破損したリンクを表示することも防止される。ダブルバッファリングされたキャッシングは、HTTP要求によりリモートサテライトサーバがコンテンツサーバと通信することを維持することによって行われる。サテライトサーバは、引続き、通常の方法でHTTP要求およびキャッシュによってページデータを読出すこととなる。ページデータは、この場合、従属性情報を含んでおり、この従属性情報は、リモートサテライトサーバにもストリーミングされるアセット識別子の、カンマで区切られたリストの形を取り得る。
リモートサテライトサーバの場合、ページを伝達することにより、コンテンツサーバノードおよびサテライトサーバノードが同じページをホストにすることが可能となり、各ノードはページを再生成する必要がなくなる。ページを再生成するためにデータベースを参照する代わりに、ノードは、新たに生成されたページおよび再生成されたページを、これらのページが再生成およびキャッシュされたノードから、それらのローカルキャッシュに受信する。ページをキャッシュすることにより、それらページの伝達が引起こされてもよい。
この態様で、ノードは、ディスク上にキャッシュを保持し、故障から回復させることができる。分散型アーキテクチャがボトルネックを防止し、ページを伝達することによりページを再生成する必要がなくなる一方で、ページの再生成がバックグラウンドモードであることにより、システムがページを再生成している間にリモートサテライトサーバがページを供給し続けることが可能となる。
このように、データベース性能を監視するための方法およびシステムの特別な実施例を上記の点で説明してきたが、このような特定の言及は、添付の特許請求の範囲の記載を除いて、この発明の範囲に対する限定とみなされるよう意図されたものではない。

Claims (12)

  1. コンテンツ管理システムであって、
    少なくとも2つのコンテンツサーバコンピュータと、
    各々のコンテンツサーバに対応するキャッシュメモリとを備え、キャッシュメモリは、
    コンテンツサーバによって表示されるページについてのキャッシュオブジェクトを記憶するためのページキャッシュと、
    キャッシュオブジェクトについての従属性情報を記憶するための従属性キャッシュと、
    他のキャッシュに対し変更された従属性情報複製するための通知キャッシュとを含む、コンテンツ管理システム。
  2. ローカルキャッシュを有する少なくとも1つのサテライトサーバをさらに含む、請求項1に記載のコンテンツ管理システム。
  3. コンテンツサーバコンピュータに対応する複数のキャッシュメモリを有する、請求項1または2に記載のコンテンツ管理システム。
  4. ページキャッシュ、従属性キャッシュおよび通知キャッシュはキャッシュメモリの区画を含む、請求項1から3のいずれかに記載のコンテンツ管理システム。
  5. 分散型メモリシステムを管理する、コンピュータにより実現される方法であって、
    前記分散型メモリシステムは、少なくとも2つのキャッシュメモリを備え、各々のキャッシュメモリは、少なくとも1つのキャッシュオブジェクトと、キャッシュオブジェクトに関連付けられた従属性とを含み、前記方法
    キャッシュメモリのうち1つのキャッシュメモリにおいて、キャッシュメモリのうち別のキャッシュメモリ内のキャッシュオブジェクトに関する更新された情報を受信するステップと、
    1つのキャッシュメモリ内のキャッシュオブジェクトを無効化するステップと、
    従属性を用いて、1つのメモリ内の他のキャッシュオブジェクトがそれらの後続のアクセス時に無効化されるべきかどうかを判断するステップとを含む、方法。
  6. 前記少なくとも2つのキャッシュメモリは、コンテンツサーバのローカルキャッシュメモリおよびサテライトサーバのローカルキャッシュメモリを含む、請求項5に記載の方法。
  7. 前記コンテンツサーバのローカルキャッシュメモリおよびサテライトサーバのローカルキャッシュメモリを、ウェブページが両方のキャッシュメモリに同時に存在するダブルバッファリング使用するステップをさらに含む、請求項6に記載の方法。
  8. ウェブページについての要求を受信するステップと、
    ウェブページがいずれかの無効なキャッシュオブジェクトを有するかどうかを判断するステップとをさらに含む、請求項5記載の方法。
  9. ウェブページがいずれかの無効なキャッシュオブジェクトを有するかどうかを判断するステップは、キャッシュオブジェクトに関連付けられたフラグをチェックするステップを含む、請求項8に記載の方法。
  10. ページが無効なキャッシュオブジェクトを有する場合、キャッシュからウェブページを削除するステップをさらに含む、請求項9に記載の方法。
  11. 新しいページを生成するステップと、
    新しいページを供給するステップと、
    新しいページをページキャッシュに記録するステップと、
    新しいページに関連付けられた従属性を従属性キャッシュに記録するステップとを含む、請求項10に記載の方法。
  12. 請求項5および請求項8から11のいずれかに記載の方法を前記コンピュータに実行させるプログラム。
JP2014533379A 2011-09-30 2012-09-28 クラスタにおける効率的なキャッシュ管理 Active JP6185917B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201161541613P 2011-09-30 2011-09-30
US61/541,613 2011-09-30
US201161578679P 2011-12-21 2011-12-21
US61/578,679 2011-12-21
US13/488,184 2012-06-04
US13/488,184 US20130086323A1 (en) 2011-09-30 2012-06-04 Efficient cache management in a cluster
PCT/US2012/057858 WO2013049530A1 (en) 2011-09-30 2012-09-28 Efficient cache management in a cluster

Publications (3)

Publication Number Publication Date
JP2014528607A JP2014528607A (ja) 2014-10-27
JP2014528607A5 JP2014528607A5 (ja) 2015-11-12
JP6185917B2 true JP6185917B2 (ja) 2017-08-23

Family

ID=47993770

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014533379A Active JP6185917B2 (ja) 2011-09-30 2012-09-28 クラスタにおける効率的なキャッシュ管理

Country Status (5)

Country Link
US (1) US20130086323A1 (ja)
EP (1) EP2761507A1 (ja)
JP (1) JP6185917B2 (ja)
CN (1) CN103827870B (ja)
WO (1) WO2013049530A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130086323A1 (en) * 2011-09-30 2013-04-04 Oracle International Corporation Efficient cache management in a cluster
US9253278B2 (en) 2012-01-30 2016-02-02 International Business Machines Corporation Using entity tags (ETags) in a hierarchical HTTP proxy cache to reduce network traffic
US9055118B2 (en) * 2012-07-13 2015-06-09 International Business Machines Corporation Edge caching using HTTP headers
JP5738935B2 (ja) * 2013-07-19 2015-06-24 株式会社 ディー・エヌ・エー 情報端末及びデータ処理プログラム
US9648125B2 (en) 2013-10-04 2017-05-09 Akamai Technologies, Inc. Systems and methods for caching content with notification-based invalidation
US9641640B2 (en) 2013-10-04 2017-05-02 Akamai Technologies, Inc. Systems and methods for controlling cacheability and privacy of objects
US9817576B2 (en) * 2015-05-27 2017-11-14 Pure Storage, Inc. Parallel update to NVRAM
US9906619B2 (en) 2015-07-23 2018-02-27 International Business Machines Corporation Method, system, and computer program product to update content on networked cache servers
US10616305B2 (en) 2017-01-17 2020-04-07 International Business Machines Corporation Coordination of webpage publication
US11269784B1 (en) * 2019-06-27 2022-03-08 Amazon Technologies, Inc. System and methods for efficient caching in a distributed environment
US11403397B2 (en) 2020-04-30 2022-08-02 Mcafee, Llc Cache system for consistent retrieval of related objects
US11843682B1 (en) * 2022-08-31 2023-12-12 Adobe Inc. Prepopulating an edge server cache

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278979A (en) * 1990-12-20 1994-01-11 International Business Machines Corp. Version management system using pointers shared by a plurality of versions for indicating active lines of a version
US6026413A (en) * 1997-08-01 2000-02-15 International Business Machines Corporation Determining how changes to underlying data affect cached objects
US7343412B1 (en) * 1999-06-24 2008-03-11 International Business Machines Corporation Method for maintaining and managing dynamic web pages stored in a system cache and referenced objects cached in other data stores
US7096418B1 (en) * 2000-02-02 2006-08-22 Persistence Software, Inc. Dynamic web page cache
US6823514B1 (en) * 2000-11-14 2004-11-23 International Business Machines Corporation Method and system for caching across multiple contexts
US6587921B2 (en) * 2001-05-07 2003-07-01 International Business Machines Corporation Method and apparatus for cache synchronization in a clustered environment
US6934720B1 (en) * 2001-08-04 2005-08-23 Oracle International Corp. Automatic invalidation of cached data
US7509393B2 (en) * 2001-12-19 2009-03-24 International Business Machines Corporation Method and system for caching role-specific fragments
US7860820B1 (en) * 2005-05-31 2010-12-28 Vignette Software, LLC System using content generator for dynamically regenerating one or more fragments of web page based on notification of content change
US8380932B1 (en) * 2002-12-13 2013-02-19 Open Text S.A. Contextual regeneration of pages for web-based applications
US7017014B2 (en) * 2003-01-28 2006-03-21 International Business Machines Corporation Method, system and program product for maintaining data consistency across a hierarchy of caches
US7624126B2 (en) * 2003-06-25 2009-11-24 Microsoft Corporation Registering for and retrieving database table change information that can be used to invalidate cache entries
US7143244B2 (en) * 2003-09-05 2006-11-28 Oracle International Corp. System and method for invalidating data in a hierarchy of caches
US8495305B2 (en) * 2004-06-30 2013-07-23 Citrix Systems, Inc. Method and device for performing caching of dynamically generated objects in a data communication network
US7849269B2 (en) * 2005-01-24 2010-12-07 Citrix Systems, Inc. System and method for performing entity tag and cache control of a dynamically generated object not identified as cacheable in a network
EP1770954A1 (en) * 2005-10-03 2007-04-04 Amadeus S.A.S. System and method to maintain coherence of cache contents in a multi-tier software system aimed at interfacing large databases
JP4839765B2 (ja) * 2005-10-04 2011-12-21 株式会社デンソー 電子機器、路線地図データ更新システム、及び、路線地図データ管理装置
US20080313545A1 (en) * 2007-06-13 2008-12-18 Microsoft Corporation Systems and methods for providing desktop or application remoting to a web browser
CN101710332A (zh) * 2009-11-13 2010-05-19 广州从兴电子开发有限公司 一种事务日志通知内存数据库内容变化的方法及系统
CN101751474A (zh) * 2010-01-19 2010-06-23 山东高效能服务器和存储研究院 基于集中式存储连续数据保护方法
US8661449B2 (en) * 2011-06-17 2014-02-25 Microsoft Corporation Transactional computation on clusters
US20130086323A1 (en) * 2011-09-30 2013-04-04 Oracle International Corporation Efficient cache management in a cluster

Also Published As

Publication number Publication date
CN103827870B (zh) 2018-02-16
WO2013049530A1 (en) 2013-04-04
JP2014528607A (ja) 2014-10-27
US20130086323A1 (en) 2013-04-04
EP2761507A1 (en) 2014-08-06
CN103827870A (zh) 2014-05-28

Similar Documents

Publication Publication Date Title
JP6185917B2 (ja) クラスタにおける効率的なキャッシュ管理
JP6415513B2 (ja) 高可用性データを提供するためのシステム及び方法
US11288002B2 (en) System and method for providing high availability data
JP5006348B2 (ja) 応答出力キャッシュに対するマルチキャッシュ協調
US6523032B1 (en) Servicing database requests using read-only database servers coupled to a master database server
US8176256B2 (en) Cache regions
CN104823170B (zh) 分布式缓存群集管理
RU2373567C2 (ru) Общая модель зависимости для аннулирования элементов кэша
US9965515B2 (en) Method and device for cache management
CN101594377A (zh) 用于管理Feed数据的系统和方法
US9292454B2 (en) Data caching policy in multiple tenant enterprise resource planning system
US8533398B2 (en) Combination based LRU caching
US10642844B2 (en) Non-materialized tables with standing queries
Kumar et al. Consistency-Latency Trade-Off of the LibRe Protocol: A Detailed Study
US10783144B2 (en) Use of null rows to indicate the end of a one-shot query in network switch
Rilling et al. High availability and scalability support for web applications
Constantinov et al. Running complex queries on a graph database: A performance evaluation of neo4j
Youn et al. Cloud computing burst system (CCBS): for exa-scale computing system
US10860568B2 (en) External data source linking to queries in memory
Diaz et al. Working with NoSQL Alternatives
Asad Dynamic Object Partitioning and Replication for Cooperative Cache
Kemper et al. Getting to Know Neo4j

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150917

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150917

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161122

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20170221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170413

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170728

R150 Certificate of patent or registration of utility model

Ref document number: 6185917

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