DE112016003309T5 - Abonnementdienst zum Überwachen von Änderungen in fernen Inhalten - Google Patents

Abonnementdienst zum Überwachen von Änderungen in fernen Inhalten Download PDF

Info

Publication number
DE112016003309T5
DE112016003309T5 DE112016003309.5T DE112016003309T DE112016003309T5 DE 112016003309 T5 DE112016003309 T5 DE 112016003309T5 DE 112016003309 T DE112016003309 T DE 112016003309T DE 112016003309 T5 DE112016003309 T5 DE 112016003309T5
Authority
DE
Germany
Prior art keywords
change
subscription list
subscription
program instructions
monitor
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
DE112016003309.5T
Other languages
English (en)
Inventor
Xuhua Li
Yongliang Li
Yuanyuan Li
Hailin Wang
Hai Ji
Randal James Richardt
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112016003309T5 publication Critical patent/DE112016003309T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Ein Ansatz zum Ermöglichen eines Abonnements für ein fernes Inhaltsrepository ohne einen nativen Abonnementdienst beruhend auf einer Änderungsüberwachungseinheit, die nahe dem entfernten Inhaltsrepository eingesetzt wird. Die Änderungsüberwachungseinheit nutzt ein dem Inhaltsrepository zugehöriges Änderungsprotokoll zum Ermitteln, wenn Änderungen an dem Repository auftreten, und vergleicht die Änderungen aus dem Änderungsprotokoll mit einer Abonnementliste, die von einem Abonnementdatenspeicher bereitgestellt wird. Wenn Änderungen in dem Repository mit der Abonnementliste übereinstimmen, sendet die Änderungsüberwachungseinheit eine Änderungsmitteilung an den Abonnenten. Die Änderungsüberwachungseinheit verwaltet die Abonnementliste beruhend auf dem Abfragen des Abonnementdatenspeichers und antwortet auf Änderungsmitteilungen, die angeben, dass Mitteilungen für abonnierte Objekte nicht mehr notwendig sind.

Description

  • HINTERGRUND
  • Die vorliegende Erfindung betrifft allgemein das Gebiet der Verwaltung von Inhalten und konkret das Verwalten von entfernten Inhalten mit einem auf Abonnement/Benachrichtigung beruhenden Dienst für Inhaltsänderungen.
  • Die Weiterentwicklung der Computertechnologie hat dazu geführt, dass Personen viele verschiedene Datenverarbeitungseinheiten haben. Zum Beispiel kann eine Person einen Arbeitscomputer, einen Heimcomputer und eine oder mehrere mobile Einheiten wie zum Beispiel Smartphones und Tablets haben. Zeitgleich mit der Zunahme an Datenverarbeitungseinheiten wächst die Datenmenge, auf die durch die Datenverarbeitungseinheiten und Server in einer Cloud-Umgebung zum Speichern der Daten zugegriffen wird.
  • Wenn sich diese Personen auf ihren täglichen Reisen von zu Hause zur Arbeit und wieder zurück nach Hause bewegen, greifen sie auf ihre Daten von den vielen Datenverarbeitungseinheiten zu, die ihnen zur Verfügung stehen. Die Synchronisation des Zugriffs und der Speicherung ihrer Daten ist komplex geworden, da man nicht weiß, wann sich die Daten ändern und welches Gerät die aktuellste Version der Daten aufweist.
  • KURZDARSTELLUNG
  • Gemäß einer Ausführungsform der vorliegenden Erfindung ein Verfahren zum Bereitstellen einer Benachrichtigung über eine Änderung in einem gespeicherten Objekt, das Verfahren aufweisend: Laden, durch eine Änderungsüberwachungseinheit, einer Abonnementliste, die einem oder mehreren gespeicherten Objekten zugehörig ist, die von der Änderungsüberwachungseinheit überwacht werden; Erkennen, durch die Änderungsüberwachungseinheit, einer Änderung in mindestens einem des einen oder der mehreren gespeicherten Objekte; und als Reaktion auf das Erkennen der Änderung, Senden, durch die Änderungsüberwachungseinheit, einer geänderte Objekte kennzeichnenden Änderungsbenachrichtigung an einen Abonnenten, welcher der Abonnementliste zugehörig ist.
  • Gemäß einer anderen Ausführungsform der vorliegenden Erfindung ein Verfahren zum Benachrichtigen über Änderungen an gespeicherten Objekten, das Verfahren aufweisend: Laden, durch eine Änderungsüberwachungseinheit, einer ersten Abonnementliste, die einem oder mehreren in einem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Abrufen, durch die Änderungsüberwachungseinheit, eines oder mehrerer Änderungsprotokolle, die eine oder mehrere Änderungen aufweisen, die dem entfernten Inhaltsrepository zugehörig sind; Abrufen, durch die Änderungsüberwachungseinheit, einer zweiten Abonnementliste, die dem einen oder den mehreren in dem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Aktualisieren, durch die Änderungsüberwachungseinheit, der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten, die der ersten Abonnementliste zugehörig sind, und Objektidentitäten, die der zweiten Abonnementliste zugehörig sind; Ermitteln, durch die Änderungsüberwachungseinheit, ob mindestens eine der einen oder mehreren Änderungen, die dem einen oder den mehreren Änderungsprotokollen zugehörig sind, Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind; als Reaktion auf das Ermitteln, dass mindestens eine der einen oder mehreren Änderungen Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind, Senden, durch die Änderungsüberwachungseinheit, einer oder mehrerer Änderungsbenachrichtigungen, die eine oder mehrere geänderte Objekte kennzeichnen, an den Abonnenten; Empfangen, durch die Änderungsüberwachungseinheit, jeweils einer oder mehrerer Antworten auf die eine oder mehreren Änderungsbenachrichtigungen, wobei die eine oder mehreren Antworten einen Statuscode aufweisen; und Aktualisieren, durch die Änderungsüberwachungseinheit, der ersten Abonnementliste beruhend auf dem Statuscode.
  • Gemäß einer anderen Ausführungsform der vorliegenden Erfindung ein Verfahren zum Bereitstellen einer Benachrichtigung über eine Änderung in einem gespeicherten Objekt, das Verfahren aufweisend: Laden, durch eine Änderungsüberwachungseinheit, einer Abonnementliste, die einem oder mehreren gespeicherten Objekten zugehörig ist, die von der Änderungsüberwachungseinheit überwacht werden; Erkennen, durch die Änderungsüberwachungseinheit, einer Änderung in mindestens einem des einen oder der mehreren gespeicherten Objekte; als Reaktion auf das Erkennen der Änderung, Senden, durch die Änderungsüberwachungseinheit, einer geänderte Objekte kennzeichnenden Änderungsbenachrichtigung an einen Abonnenten, welcher der Abonnementliste zugehörig ist; und Aktualisieren, durch die Änderungsüberwachungseinheit, der Abonnementliste beruhend auf mindestens einem Vergleich jeweils einer oder mehrerer Objektidentitäten und eines oder mehrerer Statuscodes aus einer oder mehreren Antworten auf die Änderungsbenachrichtigung, und Speichern einer aktualisierten Abonnementliste in einem lokalen Cachespeicher.
  • Gemäß einer anderen Ausführungsform der vorliegenden Erfindung ein Computerprogrammprodukt zum Benachrichtigen über Änderungen an gespeicherten Objekten, das Computerprogrammprodukt aufweisend: ein oder mehrere durch einen Computer lesbare Speichermedien und auf dem einen oder den mehreren durch einen Computer lesbaren Speichermedien gespeicherte Programmanweisungen, die Programmanweisungen aufweisend: Programmanweisungen, die durch eine Änderungsüberwachungseinheit ausgeführt werden, zum Laden einer ersten Abonnementliste, die einem oder mehreren in einem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Abrufen eines oder mehrerer Änderungsprotokolle, die eine oder mehrere Änderungen aufweisen, die dem entfernten Inhaltsrepository zugehörig sind; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Abrufen einer zweiten Abonnementliste, die dem einen oder den mehreren in dem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Aktualisieren der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten, die der ersten Abonnementliste zugehörig sind, und Objektidentitäten, die der zweiten Abonnementliste zugehörig sind; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Ermitteln, ob mindestens eine der einen oder mehreren Änderungen, die dem einen oder den mehreren Änderungsprotokollen zugehörig sind, Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind; als Reaktion auf das Ermitteln, dass mindestens einer der einen oder mehreren Änderungen Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind, Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Senden einer oder mehrerer Änderungsbenachrichtigungen, die eine oder mehrere geänderte Objekte kennzeichnen, an den Abonnenten; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Empfangen jeweils einer oder mehrerer Antworten auf die eine oder mehreren Änderungsbenachrichtigungen, wobei die eine oder mehreren Antworten einen Statuscode aufweisen; und Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Aktualisieren der ersten Abonnementliste beruhend auf dem Statuscode.
  • Gemäß einer anderen Ausführungsform der vorliegenden Erfindung ein Computersystem zum Benachrichtigen über Änderungen an gespeicherten Objekten, das Computersystem aufweisend: einen oder mehrere Computerprozessoren; ein oder mehrere nichtflüchtige durch einen Computer lesbare Speichermedien; Programmanweisungen, die auf dem einen oder den mehreren nichtflüchtigen durch einen Computer lesbaren Speichermedien gespeichert sind, zum Ausführen durch mindestens einen des einen oder der mehreren Computerprozessoren, die Programmanweisungen aufweisend: Programmanweisungen, die durch eine Änderungsüberwachungseinheit ausgeführt werden, zum Laden einer ersten Abonnementliste, die einem oder mehreren in einem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Abrufen eines oder mehrerer Änderungsprotokolle, die eine oder mehrere Änderungen aufweisen, die dem entfernten Inhaltsrepository zugehörig sind; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Abrufen einer zweiten Abonnementliste, die dem einen oder den mehreren in dem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Aktualisieren der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten, die der ersten Abonnementliste zugehörig sind, und Objektidentitäten, die der zweiten Abonnementliste zugehörig sind; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Ermitteln, ob mindestens eine der einen oder mehreren Änderungen, die dem einen oder den mehreren Änderungsprotokollen zugehörig sind, Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind; als Reaktion auf das Ermitteln, dass mindestens einer der einen oder mehreren Änderungen Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind, Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Senden einer oder mehrerer Änderungsbenachrichtigungen, die eine oder mehrere geänderte Objekte kennzeichnen, an den Abonnenten; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Empfangen jeweils einer oder mehrerer Antworten auf die eine oder mehreren Änderungsbenachrichtigungen, wobei die eine oder mehreren Antworten einen Statuscode aufweisen; und Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Aktualisieren der ersten Abonnementliste beruhend auf dem Statuscode.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockschaubild einer Datenverarbeitungsumgebung zum Überwachen von Änderungen von entfernten Inhalten gemäß Ausführungsformen der vorliegenden Erfindung.
  • 2 ist ein Blockschaubild eines Abonnementdienstes, der einem System zum Überwachen von Änderungen von entfernten Inhalten zugehörig ist, gemäß Ausführungsformen der vorliegenden Erfindung.
  • 3A–C sind Ablaufpläne, die Prozessschritte von Abonnement/Benachrichtigungs-Verfahrens darstellen, die einem System zum Überwachen von Änderungen von entfernten Inhalten zugehörig sind, gemäß Ausführungsformen der vorliegenden Erfindung; und
  • 4 ist ein Blockschaubild von internen und externen Komponenten einer Datenverarbeitungsumgebung gemäß Ausführungsformen der vorliegenden Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die hierin dargestellten Ausführungsformen berücksichtigen die Herausforderungen beim Aufrechterhalten der Konsistenz von Inhalten, wenn ein Benutzer zwischen vielen verschiedenen Datenverarbeitungseinheiten wechselt und Aktualisierungen des Inhalts von den verschiedenen Datenverarbeitungseinheiten aus bereitstellt. Ausführungsformen der vorliegenden Erfindung sind Ansätze zum Bereitstellen einer Änderungsüberwachungseinheit zur Ermöglichung eines Abonnementdienstes zum Empfangen von Benachrichtigungen über Inhaltsänderungen in einem entfernten Repository, unabhängig davon, ob das entfernte Repository einen nativen Abonnement/Benachrichtigungs-Mechanismus aufweist. Auf diese Weise können mehrere Datenverarbeitungseinheiten den Zugriff auf eine lokale Kopie des entfernten Inhalts mit der Gewissheit beibehalten, dass die lokale Kopie vorherige Änderungen, die durch den Benutzer von einer beliebigen der zugehörigen Datenverarbeitungseinheiten aus vorgenommen wurden, umfasst.
  • 1 ist ein Blockschaubild einer Datenverarbeitungsumgebung 100 gemäß einer Ausführungsform der vorliegenden Erfindung. Die Datenverarbeitungsumgebung 100 weist einen Repository-Standort 102 und einen Abonnementserver 104 auf, wobei Server (nicht gezeigt), die dem Repository-Standort 102 und dem Abonnementserver 104 zugehörig sind, über ein Netzwerk 114 für den Datenaustausch mit Abonnementclients 116 verbunden sind. Zum Beispiel können solche Ausführungsformen in Rechenzentrums-, Cloud-Computing-, Storage-Area-Network-(SAN-) und Network-Attached-Storage-(NAS-)Anwendungen verwendet werden. In bestimmten Ausführungsformen stellen das Nutzer-Computersystem 102 und das Provider-Computersystem 110 virtuelle Maschinen dar. Im Allgemeinen stehen der Repository-Standort 102 und der Abonnementserver 104 stellvertretend für jede beliebige elektronische Einheit oder eine Kombination von elektronischen Einheiten, die in der Lage sind, maschinenlesbare Programmanweisungen auszuführen, wie in Bezug auf 4 ausführlicher beschrieben wird.
  • Der Abonnementserver 104 weist einen Abonnementdatenspeicher 110 und einen Abonnementdienst 112 auf. Der Abonnementdatenspeicher 110 speichert die Identität von Inhalt, z.B. eine Liste von Identitäten von Objekten, die Benutzer abonniert haben und die sich in dem Inhaltsrepository 102 befinden. Eine Objektidentität ist eindeutig in dem Inhaltsrepository 106, und mit dieser Objektidentität kann die Ausführungsform das zugehörige Objekt in dem Inhaltsrepository 106 identifizieren. In einem anderen Aspekt weist die Ausführungsform für jedes Abonnement dem Abonnement eine Abonnementkennung zu, wobei die Abonnementkennung im Abonnementdatenspeicher 110 eindeutig ist.
  • Bei der Abonnementkennung handelt es sich um eine aufsteigende Folge, die mit jedem neuen Abonnement erhöht wird. Es sei angemerkt, dass die Abonnementkennung für gekündigte Abonnements nicht wiederverwendet wird. Ein Datenbankmanagementsystem (DBMS) kann die Abonnementkennung erzeugen, z.B. kann eine Spalte festgelegt werden, wie z.B. „IMMER ALS IDENTITÄT ERZEUGT (STARTE MIT 1, ERHÖHE UM 1, KEIN CACHESPEICHER)“, aber nicht darauf beschränkt. Dies führt dazu, dass ein neues Abonnement die größte Abonnementkennung in dem Abonnementdatenspeicher 110 aufweist. Entsprechend kann ein Abonnent mehrere Objekte abonnieren, und mehrere Abonnenten können ein einzelnes Objekt abonnieren, sodass eine Zuordnung von abonnierten Benutzern zu abonnierten Objekten auch in dem Abonnementdatenspeicher 110 gespeichert wird. Die Zuordnung bietet die Möglichkeit, eine Liste von Teilnehmern zu identifizieren, die zu benachrichtigen sind, wenn ein Objekt geändert wird.
  • Der Abonnementdienst 112 bietet die Möglichkeit, mit dem Abonnementdatenspeicher 110 und dem einen oder den mehreren Abonnementclients 116 Daten auszutauschen. In einem Aspekt verwaltet der Abonnementdienst 112 Abonnenten, die Abonnements für dem Inhaltsrepository 106 zugehörige Objekte anlegen und löschen. In einem anderen Aspekt verwaltet der Abonnementdienst 112 das Bereitstellen von Benachrichtigungen für die Abonnenten über Änderungen an den Objekten und die Identität der Objekte, die sie abonniert haben.
  • Der Repository-Standort 102 weist ein Inhaltsrepository 106 und eine Änderungsüberwachungseinheit 108 auf. Das Inhaltsrepository 106 und die Änderungsüberwachungseinheit 108 können sich auf demselben Server befinden, oder die Änderungsüberwachungseinheit 108 kann sich auf einem Server vor Ort beim Inhaltsrepository 106 befinden, vorzugsweise auf einem Server mit geringer Latenz zu dem Server, der das Inhaltsrepository hostet.
  • Bei dem Inhaltsrepository 106 handelt es sich um einen Speicherort für Objekte wie z.B. Daten, Datenbanken, Eingabe/Ausgabe-Cachespeicher, Dokumente, Ordner und Medien, aber nicht darauf beschränkt. Es sei angemerkt, dass das Inhaltsrepository ein Änderungsereignisprotokoll zum Nachverfolgen sämtlicher Änderungen an dem durch das Inhaltsrepository 106 verwalteten Inhalt aufweisen kann. Es sei des Weiteren angemerkt, dass das Inhaltsrepository einen nativen Dienst für Abonnementänderungen aufweisen kann, der native Service jedoch als Teil des Inhaltsrepository umgesetzt ist und nicht auf andere Repositories übertragbar ist. Zum Beispiel handelt es sich bei Content Management Interoperability Services (CMIS) um einen offenen Standard, der es verschiedenen Content-Management-Systemen ermöglicht, eine gemeinsame Schnittstelle bereitzustellen, z.B. eine Funktion „GetContentChanges“, die alle am Repository vorgenommenen Änderungen abrufen kann.
  • Die Änderungsüberwachungseinheit 108 wird in dem entfernten Standort eingesetzt, um das Erkennen von Änderungen zwischen dem Inhaltsrepository 106 und der Änderungsüberwachungseinheit 108 zu optimieren. Die Änderungsüberwachungseinheit 108 initialisiert sich durch Laden und Zwischenspeichern der Abonnementinformationen, die von dem Abonnementdatenspeicher 110 abgerufen wurden. In einer Ausführungsform kann die Änderungsüberwachungseinheit 108 den Cachespeicher dauerhaft auf einem lokalen Speicher speichern, um das Nachladen aus dem lokalen Cachespeicher durch die Änderungsüberwachungseinheit 108 zu optimieren. Es sei angemerkt, dass das Vorliegen einer aktualisierten Abonnementliste in dem lokalen Cachespeicher ein Indikator für die Änderungsüberwachungseinheit 108 sein kann, die aktualisierte Abonnementliste aus dem lokalen Cachespeicher zu laden. Die Änderungsüberwachungseinheit 108 tauscht mit dem Inhaltsrepository 106 Daten aus und überwacht das Inhaltsrepository 106 auf Änderungen an dem Inhalt. Die Änderungsüberwachungseinheit 108 überwacht das Inhaltsrepository durch periodisches Prüfen der Änderungsprotokolle, die dem Inhaltsrepository zugehörig sind, auf Änderungen an Objekten, die in den zwischengespeicherten Abonnementinformationen festgelegt sind.
  • Die Änderungsüberwachungseinheit 108 sendet eine Benachrichtigungsmeldung an den Abonnementservice 112, wenn die Änderungsüberwachungseinheit 108 eine Änderung an einem Objekt erkennt, das aktuell von einem beliebigen der Abonnenten, die dem Abonnementdienst 112 zugehörig sind, abonniert ist. Darüber hinaus verfolgt die Änderungsüberwachungseinheit 108 Änderungen in dem Abonnementdatenspeicher 110 im Hinblick auf neue Objektabonnements oder Objektabonnementkündigungen und passt Benachrichtigungen entsprechend an.
  • Als ein Beispiel für das Erkennen neuer Objektabonnements fragt die Änderungsüberwachungseinheit 108 in einem vorher festgelegten Zeitintervall den Abonnementdatenspeicher nach einer Liste jeglicher Änderungen in abonnierten Daten seit der letzten Prüfung durch die anfragende Änderungsüberwachungseinheit 108 ab. Die Änderungsüberwachungseinheit 108 nutzt den Vorteil des (vorstehend beschriebenen) Mechanismus, der zum Zuweisen von Abonnementkennungen verwendet wird, d.h., eine aufsteigende Folge ohne erneute Verwendung von nicht abonnierten Kennungen, um schnell zu ermitteln, ob der Cachespeicher auf Grund neuer Abonnements eine Aktualisierung benötigt. Zum Beispiel bemerkt die Änderungsüberwachungseinheit 108, dass die höchste Abonnementkennung, die sie besitzt, 1959 ist, wenn sie den Abonnementdatenspeicher 110 abfragt. Das Ergebnis der Abfrage zeigt, dass die aktuell höchste Abonnementkennung in dem Abonnementdatenspeicher 110 gleich 1977 ist, also numerisch größer ist, wobei die Änderungsüberwachungseinheit 108 den Cachespeicher mit den neuesten Abonnementdaten aktualisiert.
  • Betrachtet man ein Beispiel einer alternativen Ausführungsform zum Erkennen neuer Abonnements, so kann die Änderungsüberwachungseinheit 108 die höchste, d.h. maximale, Abonnementkennung, die sie besitzt, z.B. 1959, an den Abonnementdienst 112 senden. Der Abonnementdienst 112 kann der Änderungsüberwachungseinheit eine Liste von Abonnements mit Abonnementkennungen bereitstellen, die numerisch größer als 1959 sind und bis zur höchsten Abonnementkennung in dem Abonnementdatenspeicher 110 reichen, z.B. von 1960 bis 1977, wobei 1977 die höchste Abonnementkennung ist, d.h. mit einem numerisch größten Wert, zum Zeitpunkt der Anfrage. Wenn die Änderungsüberwachungseinheit die Liste empfängt, kann sie auf Grund der Tatsache, dass der Abonnementdienst 112 Abonnementkennungen in aufsteigender Reihenfolge vergibt, einfach den Cachespeicher mit der bereitgestellten Liste aktualisieren.
  • Als ein Beispiel des Erkennens von gekündigten Abonnements sendet die Änderungsüberwachungseinheit 108 eine Änderungsmitteilung an eine Benachrichtigungskomponente 202. Die Benachrichtigungskomponente 202 bestimmt während des Verarbeitens der Änderungsmitteilung aus der Abfrage des Abonnementdatenspeichers 110, dass der zugehörige Abonnementclient 116 das Abonnement gekündigt hat. Entsprechend sendet die Benachrichtigungskomponente 202 eine Nachricht an die Änderungsüberwachungseinheit 108, das Abonnement zu entfernen und das Bereitstellen von Mitteilungen an den zugehörigen Abonnementclient 116 für das abonnierte Objekt einzustellen.
  • Bei dem Netzwerk 114 kann es sich zum Beispiel um ein Telekommunikationsnetz, ein lokales Netzwerk (LAN), ein Weitverkehrsnetz (WAN), wie zum Beispiel das Internet, oder eine Kombination aus diesen handeln und dazu können drahtgebundene, drahtlose oder faseroptische Verbindungen gehören. Zu dem Netzwerk 114 können ein oder mehrere drahtgebundene und/oder drahtlose Netzwerke gehören, die in der Lage sind, Daten-, Sprach- und/oder Videosignale zu empfangen und zu übertragen, darunter Multimedia-Signale, die Sprach-, Daten- und Videoinformationen beinhalten. Im Allgemeinen kann es sich bei dem Netzwerk 114 um eine beliebige Kombination von Verbindungen und Protokollen handeln, welche Datenübertragungen zwischen dem Repository-Server 102, dem Abonnementserver 104 und einem oder mehreren Abonnementclients 116 innerhalb der Datenverarbeitungsumgebung 100 unterstützen.
  • Bei dem Abonnementclient 116 kann es sich um jede beliebige programmierbare elektronische Einheit handeln, die in der Lage ist, maschinenlesbare Anweisungen auszuführen und mit verschiedenen Komponenten und Geräten Daten auszutauschen, wie z.B. dem Repository-Server 102 und dem Abonnementserver 104 innerhalb der Datenverarbeitungsumgebung 100, aber nicht darauf beschränkt. Zum Beispiel kann es sich bei dem Abonnementclient 116 um einen Desktop-Computer, einen Laptop-Computer, eine mobile Einheit oder jede beliebige andere entsprechend konfigurierte Einheit handeln.
  • 2 ist ein Blockschaubild einer Komponente 200 des Abonnementservers 104, d.h. des Abonnementdienstes 112, gemäß Ausführungsformen der vorliegenden Erfindung. Der Abonnementdienst 112 weist eine Benachrichtigungskomponente 202 und eine Abonnementkomponente 204 auf.
  • Die Benachrichtigungskomponente 202 stellt die Fähigkeit bereit, Benachrichtigungen über Änderungen an abonnierten Objekten an einen oder mehrere Abonnementclients 116, z.B. mobile Einheiten von Benutzern, zu senden. Die Benachrichtigung weist die Identität des Objekts auf, das sich geändert hat. Beruhend auf den Informationen in der Benachrichtigung kann der Benutzer geeignete Maßnahmen ergreifen, wie z.B. das Auffinden und Abrufen einer neuen Kopie des Objekts aus dem Inhaltsrepository 106, aber nicht darauf beschränkt. Es sei angemerkt, dass mehr als ein Benutzer dasselbe Objekt abonniert haben kann, und entsprechend wird eine Benachrichtigung an jeden abonnierten Benutzer gesendet.
  • Die Abonnementkomponente 204 stellt die Möglichkeit bereit, Anfragen über das Abonnieren/Beenden eines Abonnements von einem Abonnementclient 116 zu empfangen und zu verarbeiten. Nachdem ein Abonnementclient 116 eine Anfrage über das Abonnieren/Beenden eines Abonnements an die Abonnementkomponente 204 gesendet hat, aktualisiert die Abonnementkomponente 204 den Abonnementdatenspeicher 110 mit Informationen, welche die Anfrage beschreiben. Zum Beispiel weist eine Abonnementanfrage den Ort und die Identität eines Objekts auf, für das der Abonnementclient 116 Änderungsbenachrichtigungen sehen möchte. Die Art der Änderung der Anfrage weist mindestens eine der Folgenden auf: Aktualisieren, Löschen, Neuindizieren, etc. Es sei angemerkt, dass Objekte wie z.B. Ordner, aber nicht darauf beschränkt, darüber hinaus Benachrichtigungen aufweisen können, die dem Hinzufügen von Objekten zu dem Ordner und dem Löschen von Objekten aus dem Ordner zugehörig sind.
  • 3A zeigt eine Ausführungsform von Prozessschritten eines Abonnement-Inhaltsänderungsverfahrens 300, das von der Änderungsüberwachungseinheit 108 durchgeführt wird, gemäß Ausführungsformen der vorliegenden Erfindung.
  • In Schritt 302 lädt die Änderungsüberwachungseinheit 108 die Objektabonnementliste aus dem Abonnementdatenspeicher 110. Die Änderungsüberwachungseinheit 108 speichert die Objektabonnementliste lokal in dem Cachespeicher. In einer alternativen Ausführungsform speichert die Änderungsüberwachungseinheit 108 den Cachespeicher dauerhaft lokal ab, damit ein erneutes Laden des Cachespeichers keinen Datenaustausch mit dem Abonnementdatenspeicher 110 erfordert. Als Nächstes erhält die Änderungsüberwachungseinheit 108 in Schritt 304 das aktuelle Änderungsprotokoll von dem Inhaltsrepository 106. Es sei angemerkt, dass das aktuelle Änderungsprotokoll sämtliche Änderungen an dem Inhaltsrepository aufweist, nicht nur die der Objektabonnementliste zugehörigen Änderungen.
  • Als Nächstes ermittelt die Änderungsüberwachungseinheit 108 in Schritt 306, ob es in dem Änderungsprotokoll neue Änderungen gibt. Es sei angemerkt, dass es sich bei neuen Änderungen um Änderungen handelt, die aufgetreten sind, seitdem die vorhergehende Änderung erkannt wurde. Wenn die Änderungsüberwachungseinheit 108 keine neuen Änderungen erkennt, kehrt die Änderungsüberwachungseinheit 108 zu Schritt 304 zurück und sucht nach neuen Änderungen. Es sei angemerkt, dass vor der nächsten Prüfung auf Änderungen eine zeitliche Verzögerung konfiguriert werden kann. Die konfigurierte zeitliche Verzögerung kann vorher festgelegt werden, oder in einer alternativen Ausführungsform kann die zeitliche Verzögerung automatisch konfiguriert werden, beruhend auf Faktoren wie zum Beispiel der Zeitspanne seit Erfassung der letzten Änderung, aber nicht darauf beschränkt.
  • Wenn neue Änderungen aus dem Inhaltsrepository verfügbar sind, erhält die Änderungsüberwachungseinheit 108 in Schritt 308 eine neue Kopie der Objektabonnementliste aus dem Abonnementdatenspeicher 110 und speichert die Objektabonnementliste in dem Cachespeicher. Beim Bearbeiten der neuen Kopie ermittelt die Änderungsüberwachungseinheit 108, ob eine der Abonnementkennungen in der neuen Kopie größer ist als die Abonnementkennungen im Cachespeicher, d.h. ermittelt, ob es neue Abonnements gibt. Wenn es neue Abonnements gibt, fügt die Änderungsüberwachungseinheit 108 die neuen Abonnements zu dem Cachespeicher hinzu.
  • Als Nächstes ermittelt die Änderungsüberwachungseinheit 108 in Schritt 310, ob eine der neuen Änderungen in dem Änderungsprotokoll Objekten entspricht, die den Abonnementkennungen in dem Cachespeicher zugehörig sind. Wenn dann die Änderungsüberwachungseinheit 108 in Schritt 312 keine Übereinstimmungen zwischen den neuen Änderungen und den Objekten erkennt, die den Abonnementkennungen in dem Cachespeicher zugehörig sind, kehrt die Änderungsüberwachungseinheit 108 zu Schritt 304 zurück und sucht nach Änderungen. Wenn die Änderungsüberwachungseinheit 108 Übereinstimmungen erkennt, fährt die Änderungsüberwachungseinheit 108 mit Schritt 314 fort.
  • In Schritt 314 sendet die Änderungsüberwachungseinheit 108 eine Benachrichtigung an die Benachrichtigungskomponente 202, die angibt, dass es Änderungen an abonnierten Objekten gibt. Die Änderungsüberwachungseinheit 108 empfängt dann eine Antwort auf die vorher gesendete Benachrichtigung, die den Status der Nachrichtenlieferung angibt. Als Nächstes ermittelt die Änderungsüberwachungseinheit in Schritt 316, ob die empfangene Antwort einen Abonnement-Beenden-Statuscode beinhaltet, der angibt, dass ein Objekt von keinem Abonnementclient 116 mehr abonniert ist. Wenn der Abonnement-Beenden-Statuscode nicht empfangen wird, kehrt die Änderungsüberwachungseinheit 108 zu Schritt 304 zurück und sucht nach Änderungen. Wenn der Abonnement-Beenden-Code empfangen wird, fährt die Änderungsüberwachungseinheit mit Schritt 318 fort. In Schritt 318 entfernt die Änderungsüberwachungseinheit 108 die zugehörige Abonnementkennung aus dem Cachespeicher und kehrt zu Schritt 304 zurück und sucht nach neuen Änderungen.
  • 3B zeigt eine alternative Ausführungsform von Prozessschritten eines Abonnement-Inhaltsänderungsverfahrens 340, das von der Änderungsüberwachungseinheit 108 durchgeführt wird, gemäß Ausführungsformen der vorliegenden Erfindung. Bei Schritt 342 lädt die Änderungsüberwachungseinheit 108 das Abonnement, wie vorstehend beschrieben wurde. Als Nächstes erkennt die Änderungsüberwachungseinheit 108 in Schritt 344 eine Änderung in einem abonnierten Objekt, wie vorstehend beschrieben wurde. Als Nächstes sendet die Änderungsüberwachungseinheit 108 in Schritt 346 eine Änderungsbenachrichtigung an den Abonnenten, wie vorstehend beschrieben wurde.
  • 3C zeigt eine andere alternative Ausführungsform von Prozessschritten eines Abonnement-Inhaltsänderungsverfahrens 370, das von der Änderungsüberwachungseinheit 108 durchgeführt wird, gemäß Ausführungsformen der vorliegenden Erfindung. Bei Schritt 372 lädt die Änderungsüberwachungseinheit 108 das Abonnement, wie vorstehend beschrieben wurde. Als Nächstes erkennt die Änderungsüberwachungseinheit 108 in Schritt 374 eine Änderung in einem abonnierten Objekt, wie vorstehend beschrieben wurde. Als Nächstes sendet die Änderungsüberwachungseinheit 108 in Schritt 376 eine Änderungsbenachrichtigung an den Abonnenten, wie vorstehend beschrieben wurde. Als Nächstes aktualisiert die Änderungsüberwachungseinheit 108 in Schritt 378 die Abonnementliste, wie vorstehend beschrieben wurde.
  • 4 zeigt ein Blockschaubild 400 von Komponenten der Datenverarbeitungseinheit 104 gemäß einer veranschaulichenden Ausführungsform der vorliegenden Erfindung. Man sollte sich bewusst sein, dass 4 lediglich eine Veranschaulichung einer Umsetzung bereitstellt und keinerlei Einschränkungen in Bezug auf die Umgebungen, in denen verschiedene Ausführungsformen umgesetzt werden können, mit sich bringt. Es können viele Abwandlungen an der abgebildeten Umgebung vorgenommen werden.
  • Die Datenverarbeitungseinheit 104 beinhaltet ein Datenübertragungsnetz 402, das den Austausch von Daten zwischen (einem) Computerprozessor(en) 404, einem Hauptspeicher 406, einem dauerhaften Speicher 408, einer Datenübertragungseinheit 410 und (einer) Eingabe/Ausgabe-(E/A-)Schnittstelle(n) 412 und einem Cachespeicher 414 bereitstellt. Das Datenübertragungsnetz 402 kann mit jeder beliebigen Architektur umgesetzt werden, die zum Weiterleiten von Daten und/oder Steuern von Informationen zwischen Prozessoren (wie zum Beispiel Mikroprozessoren, Datenübertragungs- und Netzwerkprozessoren usw.), Systemspeicher, Peripheriegeräten und beliebigen anderen Hardware-Komponenten innerhalb eines Systems ausgelegt ist. Zum Beispiel kann das Datenübertragungsnetz 402 mit einem oder mehreren Bussen umgesetzt werden.
  • Bei dem Hauptspeicher 406 und dem dauerhaften Speicher 408 handelt es sich um durch einen Computer lesbare Speichermedien. In dieser Ausführungsform beinhaltet der Hauptspeicher 406 Direktzugriffsspeicher (RAM) und Cachespeicher 414. Allgemein kann der Hauptspeicher 406 jedes beliebige flüchtige oder nichtflüchtige durch einen Computer lesbare Speichermedium beinhalten. Der Cachespeicher 414 ist ein schneller Speicher, der die Leistungsfähigkeit vom/von Computer-Prozessor(en) 404 erhöht, indem er kürzlich aus dem Hauptspeicher 406 abgerufene Daten und Daten in der Nähe von abgerufenen Daten bereithält.
  • Die Analysierkomponente 108 und die Datendatei 110 (Datendatei 156 in der Datenverarbeitungsumgebung 150) sind in dauerhaftem Speicher 408 zur Ausführung und/oder zum Zugriff durch einen oder mehrere der jeweiligen Computerprozessoren 404 über einen oder mehrere Speicher des Hauptspeichers 406 gespeichert. In dieser Ausführungsform beinhaltet der dauerhafte Speicher 408 ein magnetisches Festplattenlaufwerk. Alternativ oder zusätzlich zu dem magnetischen Festplattenlaufwerk kann der dauerhafte Speicher 408 ein Solid-State-Festplattenlaufwerk, eine Halbleiterspeichereinheit, einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM), Flash-Speicher oder jedes beliebige andere durch einen Computer lesbare Speichermedium beinhalten, das in der Lage ist, Programmanweisungen oder digitale Informationen zu speichern.
  • Die von dem dauerhaften Speicher 408 verwendeten Medien können auch auswechselbar sein. Es kann zum Beispiel ein Wechselplattenlaufwerk für den dauerhaften Speicher 408 verwendet werden. Zu anderen Beispielen gehören optische und magnetische Platten, Thumb-Drives und Smartcards, die in ein Laufwerk zum Übertragen auf ein anderes durch einen Computer lesbares Speichermedium, das auch ein Teil des dauerhaften Speichers 408 ist, eingeführt werden.
  • Die Datenübertragungseinheit 410 sorgt in diesen Beispielen für die Datenübertragung zu anderen Datenverarbeitungssystemen oder -einheiten. Die Datenübertragungseinheit 410 kann eine oder mehrere Netzwerkschnittstellenkarten beinhalten. Die Datenübertragungseinheit 410 kann die Datenübertragung durch Verwendung von physischen und/oder drahtlosen Datenübertragungsverbindungen bereitstellen. Die Analysierkomponente 108 kann durch die Datenübertragungseinheit 410 in den dauerhaften Speicher 408 heruntergeladen werden.
  • Eine oder mehrere Eingabe/Ausgabe-Schnittstellen 412 ermöglichen die Eingabe und Ausgabe von Daten von/zu anderen Einheiten, die mit der Datenverarbeitungseinheit 104 verbunden sein können. Zum Beispiel kann die Eingabe/Ausgabe-Schnittstelle 412 eine Verbindung zu externen Einheiten 416 wie zum Beispiel einer Tastatur, einem Ziffernblock, einem Touchscreen und/oder einer anderen geeigneten Eingabeeinheit bereitstellen. Die externen Einheiten 416 können auch tragbare durch einen Computer lesbare Speichermedien wie zum Beispiel Thumb-Drives, tragbare optische oder magnetische Platten und Speicherkarten beinhalten. Software und Daten, die verwendet werden, um Ausführungsformen der vorliegenden Erfindung zu praktizieren, z.B. die Analysierkomponente 108 und die Daten 110 (Datendatei 156 in der Datenverarbeitungsumgebung 150), können auf derartigen tragbaren, durch einen Computer lesbaren Speichermedien gespeichert und über die I/O-Schnittstelle(n) 412 in den dauerhaften Speicher 408 geladen werden. Die E/A-Schnittstelle(n) 412 ist/sind auch mit einer Anzeige 418 verbunden.
  • Die Anzeige 418 stellt einen Mechanismus zur Anzeige von Daten für einen Benutzer bereit, und es kann sich dabei zum Beispiel um einen berührungsempfindlichen Bildschirm handeln.
  • Die hierin beschriebenen Programme werden beruhend auf der Anwendung identifiziert, für die sie in einer spezifischen Ausführungsform der Erfindung umgesetzt werden. Man sollte sich jedoch bewusst sein, dass jede bestimmte Programm-Nomenklatur hierin lediglich der Bequemlichkeit halber verwendet wird, und folglich darf die Erfindung nicht auf die ausschließliche Verwendung in einer beliebigen spezifischen Anwendung, die durch eine derartige Nomenklatur identifiziert und/oder impliziert wird, beschränkt werden.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann (ein) durch einen Computer lesbare(s) Speichermedium (oder -medien) beinhalten, auf dem/denen durch einen Computer lesbare Programmanweisungen gespeichert ist/sind, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch ein System zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch kodierte Einheit wie zum Beispiel Lochkarten oder gehobene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. durch ein Glasfaserkabel geleitete Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernten Computer oder vollständig auf dem entfernten Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, im Feld programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern bzw. Schaubildern durch durch einen Computer lesbare Programmanweisungen ausgeführt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaltbilder bzw. Schaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaltbilder bzw. Schaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist darüber hinaus anzumerken, dass jeder Block der Blockschaltbilder bzw. Schaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. Schaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden zum Zwecke der Veranschaulichung aufgeführt, sollen jedoch nicht gesamthaft stehen für bzw. begrenzt sein auf die offenbarten Ausführungsformen. Für Fachleute werden viele Abänderungen und Abweichungen ersichtlich sein, ohne von dem Umfang und dem Gedanken der Erfindung abzuweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsform, die praktische Anwendung oder technische Verbesserung von auf dem Markt vorgefundenen Technologien bestmöglich zu erläutern oder um es anderen Fachleuten zu ermöglichen, die hierin offenbarten Ausführungsformen zu verstehen.

Claims (25)

  1. Verfahren zum Bereitstellen einer Benachrichtigung über eine Änderung in einem gespeicherten Objekt, das Verfahren aufweisend: Laden, durch eine Änderungsüberwachungseinheit, einer Abonnementliste, die einem oder mehreren gespeicherten Objekten zugehörig ist, die von der Änderungsüberwachungseinheit überwacht werden; Erkennen, durch die Änderungsüberwachungseinheit, einer Änderung in mindestens einem des einen oder der mehreren gespeicherten Objekte; und als Reaktion auf das Erkennen der Änderung, Senden, durch die Änderungsüberwachungseinheit, einer geänderte Objekte kennzeichnenden Änderungsbenachrichtigung an einen Abonnenten, welcher der Abonnementliste zugehörig ist.
  2. Verfahren nach Anspruch 1, wobei die Änderungsüberwachungseinheit einem Inhaltsrepository zugehörig ist.
  3. Verfahren nach Anspruch 1, wobei die Änderungsüberwachungseinheit die Abonnementliste beruhend auf dem Anfordern, durch die Änderungsüberwachungseinheit, einer aktualisierten Abonnementliste aus einem Abonnementdatenspeicher aktualisiert.
  4. Verfahren nach Anspruch 2, wobei die Änderungsüberwachungseinheit die Änderung beruhend auf einem oder mehreren, dem Inhaltsrepository zugehörigen Änderungsprotokollen erkennt.
  5. Verfahren nach Anspruch 1, wobei die Änderungsüberwachungseinheit die Abonnementliste dauerhaft lokal speichert und die Abonnementliste aus einem lokalen Cachespeicher lädt.
  6. Verfahren zum Benachrichtigen über Änderungen an gespeicherten Objekten, das Verfahren aufweisend: Laden, durch eine Änderungsüberwachungseinheit, einer ersten Abonnementliste, die einem oder mehreren in einem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Abrufen, durch die Änderungsüberwachungseinheit, eines oder mehrerer Änderungsprotokolle, die eine oder mehrere Änderungen aufweisen, die dem entfernten Inhaltsrepository zugehörig sind; Abrufen, durch die Änderungsüberwachungseinheit, einer zweiten Abonnementliste, die dem einen oder den mehreren in dem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Aktualisieren, durch die Änderungsüberwachungseinheit, der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten, die der ersten Abonnementliste zugehörig sind, und Objektidentitäten, die der zweiten Abonnementliste zugehörig sind; Ermitteln, durch die Änderungsüberwachungseinheit, ob mindestens eine der einen oder mehreren Änderungen, die dem einen oder den mehreren Änderungsprotokollen zugehörig sind, Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind; als Reaktion auf das Ermitteln, dass mindestens eine der einen oder mehreren Änderungen Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind, Senden, durch die Änderungsüberwachungseinheit, einer oder mehrerer Änderungsbenachrichtigungen, die eine oder mehrere geänderte Objekte kennzeichnen, an einen Abonnenten; Empfangen, durch die Änderungsüberwachungseinheit, jeweils einer oder mehrerer Antworten auf die eine oder mehreren Änderungsbenachrichtigungen, wobei die eine oder mehreren Antworten einen Statuscode aufweisen; und Aktualisieren, durch die Änderungsüberwachungseinheit, der ersten Abonnementliste beruhend auf dem Statuscode.
  7. Verfahren nach Anspruch 6, wobei das Aktualisieren der ersten Abonnementliste beruhend auf der Unterschiedlichkeit von Objektidentitäten das Hinzufügen, durch die Änderungsüberwachungseinheit, von Objektidentitäten zu der ersten Abonnementliste für Objektidentitäten in der zweiten Abonnementliste aufweist, die numerisch größer als Objektidentitäten in der ersten Abonnementliste sind.
  8. Verfahren nach Anspruch 7, wobei das Aktualisieren der ersten Abonnementliste beruhend auf dem Statuscode das Löschen, durch die Änderungsüberwachungseinheit, der einen oder der mehreren Objektidentitäten, die jeweils der einen oder den mehreren Antworten zugehörig sind, aufweist, wenn es sich bei dem Statuscode um einen vorher festgelegten Löschcode handelt.
  9. Verfahren nach Anspruch 6, wobei das Aktualisieren der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten darüber hinaus aufweist: Senden einer maximalen Objektidentität, die der ersten Abonnementliste zugehörig ist, mit einem numerisch größeren Wert an das ferne Inhaltsrepository; Empfangen einer Aktualisierungsliste, die Objektidentitäten aufweist, die größer als die maximale Objektidentität sind; Hinzufügen von Objektidentitäten, die der Aktualisierungsliste zugehörig sind, zu der ersten Abonnementliste; und dauerhaftes Speichern des ersten Abonnements in einem lokalen Cachespeicher.
  10. Verfahren nach Anspruch 6, wobei die Änderungsüberwachungseinheit die erste Abonnementliste aus einem lokalen Cachespeicher lädt und die zweite Abonnementliste aus einem Abonnementdatenspeicher abruft.
  11. Verfahren zum Bereitstellen einer Benachrichtigung über eine Änderung in einem gespeicherten Objekt, das Verfahren aufweisend: Laden, durch eine Änderungsüberwachungseinheit, einer Abonnementliste, die einem oder mehreren gespeicherten Objekten zugehörig ist, die von der Änderungsüberwachungseinheit überwacht werden; Erkennen, durch die Änderungsüberwachungseinheit, einer Änderung in mindestens einem des einen oder der mehreren gespeicherten Objekte; als Reaktion auf das Erkennen der Änderung, Senden, durch die Änderungsüberwachungseinheit, einer geänderte Objekte kennzeichnenden Änderungsbenachrichtigung an einen Abonnenten, welcher der Abonnementliste zugehörig ist; und Aktualisieren, durch die Änderungsüberwachungseinheit, der Abonnementliste beruhend auf mindestens einem Vergleich jeweils einer oder mehrerer Objektidentitäten und eines oder mehrerer Statuscodes aus einer oder mehreren Antworten auf die Änderungsbenachrichtigung, und Speichern einer aktualisierten Abonnementliste in einem lokalen Cachespeicher.
  12. Verfahren nach Anspruch 11, darüber hinaus aufweisend: Erkennen, durch die Änderungsüberwachungseinheit, eines Vorhandenseins der aktualisierten Abonnementliste in dem lokalen Cachespeicher; und als Reaktion auf das Erkennen des Vorhandenseins der aktualisierten Abonnementliste, Laden, durch die Änderungsüberwachungseinheit, der aktualisierten Abonnementliste.
  13. Verfahren nach Anspruch 11, wobei das Aktualisieren der Abonnementliste beruhend auf dem Vergleich der Objektidentitäten das Hinzufügen, durch die Änderungsüberwachungseinheit, von Objektidentitäten zu der Abonnementliste für einer zweiten Abonnementliste zugehörige Objektidentitäten aufweist, die numerisch größer als Objektidentitäten in der Abonnementliste sind.
  14. Verfahren nach Anspruch 11, wobei das Aktualisieren der Abonnementliste beruhend auf dem Statuscode das Löschen, durch die Änderungsüberwachungseinheit, einer oder mehrerer Objektidentitäten, die jeweils der einen oder den mehreren Antworten zugehörig sind, aufweist, wenn es sich bei dem Statuscode um einen vorher festgelegten Löschcode handelt.
  15. Verfahren nach Anspruch 11, wobei die Änderungsüberwachungseinheit die Änderung beruhend auf einem oder mehreren, einem Inhaltsrepository zugehörigen Änderungsprotokollen erkennt.
  16. Computerprogrammprodukt zum Benachrichtigen über Änderungen an gespeicherten Objekten, das Computerprogrammprodukt aufweisend: ein oder mehrere durch einen Computer lesbare Speichermedien und auf dem einen oder den mehreren durch einen Computer lesbaren Speichermedien gespeicherte Programmanweisungen, die Programmanweisungen aufweisend: Programmanweisungen, die durch eine Änderungsüberwachungseinheit ausgeführt werden, zum Laden einer ersten Abonnementliste, die einem oder mehreren in einem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Abrufen eines oder mehrerer Änderungsprotokolle, die eine oder mehrere Änderungen aufweisen, die dem entfernten Inhaltsrepository zugehörig sind; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Abrufen einer zweiten Abonnementliste, die dem einen oder den mehreren in dem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Aktualisieren der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten, die der ersten Abonnementliste zugehörig sind, und Objektidentitäten, die der zweiten Abonnementliste zugehörig sind; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Ermitteln, ob mindestens eine der einen oder mehreren Änderungen, die dem einen oder den mehreren Änderungsprotokollen zugehörig sind, Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind; als Reaktion auf das Ermitteln, dass mindestens eine der einen oder mehreren Änderungen Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind, Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Senden einer oder mehrerer Änderungsbenachrichtigungen, die eine oder mehrere geänderte Objekte kennzeichnen, an einen Abonnenten; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Empfangen jeweils einer oder mehrerer Antworten auf die eine oder mehreren Änderungsbenachrichtigungen, wobei die eine oder mehreren Antworten einen Statuscode aufweisen; und Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Aktualisieren der ersten Abonnementliste beruhend auf dem Statuscode.
  17. Computerprogrammprodukt nach Anspruch 16, wobei die durch die Änderungsüberwachungseinheit ausgeführten Programmanweisungen zum Aktualisieren der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten durch die Änderungsüberwachungseinheit ausgeführte Programmanweisungen zum Hinzufügen von Objektidentitäten zu der ersten Abonnementliste für Objektidentitäten in der zweiten Abonnementliste aufweisen, die numerisch größer als Objektidentitäten in der ersten Abonnementliste sind.
  18. Computerprogrammprodukt nach Anspruch 16, wobei die durch die Änderungsüberwachungseinheit ausgeführten Programmanweisungen zum Aktualisieren der ersten Abonnementliste beruhend auf dem Statuscode durch die Änderungsüberwachungseinheit ausgeführte Programmanweisungen zum Löschen der einen oder der mehreren Objektidentitäten, die jeweils der einen oder den mehreren Antworten zugehörig sind, aufweist, wenn es sich bei dem Statuscode um einen vorher festgelegten Löschcode handelt.
  19. Computerprogrammprodukt nach Anspruch 16, wobei die durch die Änderungsüberwachungseinheit ausgeführten Programmanweisungen zum Aktualisieren der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten darüber hinaus aufweist: Senden, durch die Änderungsüberwachungseinheit, einer maximalen Objektidentität, die der ersten Abonnementliste zugehörig ist, mit einem numerisch größeren Wert an das ferne Inhaltsrepository; Empfangen, durch die Änderungsüberwachungseinheit, einer Aktualisierungsliste, die Objektidentitäten aufweist, die größer als die maximale Objektidentität sind; Hinzufügen von Objektidentitäten, die der Aktualisierungsliste zugehörig sind, zu der ersten Abonnementliste; und dauerhaftes Speichern der ersten Abonnementliste in einem lokalen Cachespeicher.
  20. Computerprogrammprodukt nach Anspruch 16, wobei die durch die Änderungsüberwachungseinheit ausgeführten Programmanweisungen die erste Abonnementliste aus einem lokalen Cachespeicher laden und die zweite Abonnementliste aus einem Abonnementdatenspeicher abrufen.
  21. Computersystem zum Benachrichtigen über Änderungen an gespeicherten Objekten, das Computersystem aufweisend: einen oder mehrere Computerprozessoren; ein oder mehrere nichtflüchtige durch einen Computer lesbare Speichermedien; Programmanweisungen, die auf dem einen oder den mehreren nichtflüchtigen durch einen Computer lesbaren Speichermedien gespeichert sind, zum Ausführen durch mindestens einen des einen oder der mehreren Computerprozessoren, die Programmanweisungen aufweisend: Programmanweisungen, die durch eine Änderungsüberwachungseinheit ausgeführt werden, zum Laden einer ersten Abonnementliste, die einem oder mehreren in einem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Abrufen eines oder mehrerer Änderungsprotokolle, die eine oder mehrere Änderungen aufweisen, die dem entfernten Inhaltsrepository zugehörig sind; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Abrufen einer zweiten Abonnementliste, die dem einen oder den mehreren in dem entfernten Inhaltsrepository gespeicherten Objekten zugehörig ist; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Aktualisieren der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten, die der ersten Abonnementliste zugehörig sind, und Objektidentitäten, die der zweiten Abonnementliste zugehörig sind; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Ermitteln, ob mindestens eine der einen oder mehreren Änderungen, die dem einen oder den mehreren Änderungsprotokollen zugehörig sind, Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind; als Reaktion auf das Ermitteln, dass mindestens eine der einen oder mehreren Änderungen Objekte betreffen, die in der ersten Abonnementliste gekennzeichnet sind, Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Senden einer oder mehrerer Änderungsbenachrichtigungen, die eine oder mehrere geänderte Objekte kennzeichnen, an einen Abonnenten; Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Empfangen jeweils einer oder mehrerer Antworten auf die eine oder mehreren Änderungsbenachrichtigungen, wobei die eine oder mehreren Antworten einen Statuscode aufweisen; und Programmanweisungen, die durch die Änderungsüberwachungseinheit ausgeführt werden, zum Aktualisieren der ersten Abonnementliste beruhend auf dem Statuscode.
  22. Computersystem nach Anspruch 21, wobei die durch die Änderungsüberwachungseinheit ausgeführten Programmanweisungen zum Aktualisieren der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten durch die Änderungsüberwachungseinheit ausgeführte Programmanweisungen zum Hinzufügen von Objektidentitäten zu der ersten Abonnementliste für Objektidentitäten in der zweiten Abonnementliste aufweisen, die numerisch größer als Objektidentitäten in der ersten Abonnementliste sind.
  23. Computersystem nach Anspruch 21, wobei die durch die Änderungsüberwachungseinheit ausgeführten Programmanweisungen zum Aktualisieren der ersten Abonnementliste beruhend auf dem Statuscode durch die Änderungsüberwachungseinheit ausgeführte Programmanweisungen zum Löschen der einen oder der mehreren Objektidentitäten, die jeweils der einen oder den mehreren Antworten zugehörig sind, aufweist, wenn es sich bei dem Statuscode um einen vorher festgelegten Löschcode handelt.
  24. Computersystem nach Anspruch 21, wobei die durch die Änderungsüberwachungseinheit ausgeführten Programmanweisungen zum Aktualisieren der ersten Abonnementliste beruhend auf einer Unterschiedlichkeit von Objektidentitäten darüber hinaus aufweist: Senden, durch die Änderungsüberwachungseinheit, einer maximalen Objektidentität, die der ersten Abonnementliste zugehörig ist, mit einem numerisch größeren Wert an das ferne Inhaltsrepository; Empfangen, durch die Änderungsüberwachungseinheit, einer Aktualisierungsliste, die Objektidentitäten aufweist, die größer als die maximale Objektidentität sind; Hinzufügen von Objektidentitäten, die der Aktualisierungsliste zugehörig sind, zu der ersten Abonnementliste; und dauerhaftes Speichern der ersten Abonnementliste in einem lokalen Cachespeicher.
  25. Computersystem nach Anspruch 21, wobei die durch die Änderungsüberwachungseinheit ausgeführten Programmanweisungen die erste Abonnementliste aus einem lokalen Cachespeicher laden und die zweite Abonnementliste aus einem Abonnementdatenspeicher abrufen.
DE112016003309.5T 2015-11-30 2016-11-30 Abonnementdienst zum Überwachen von Änderungen in fernen Inhalten Pending DE112016003309T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/953,833 US20170154066A1 (en) 2015-11-30 2015-11-30 Subscription service for monitoring changes in remote content
US14/953,833 2015-11-30
PCT/CN2016/107893 WO2017092661A1 (en) 2015-11-30 2016-11-30 Subscription service for monitoring changes in remote content

Publications (1)

Publication Number Publication Date
DE112016003309T5 true DE112016003309T5 (de) 2018-04-12

Family

ID=58777031

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112016003309.5T Pending DE112016003309T5 (de) 2015-11-30 2016-11-30 Abonnementdienst zum Überwachen von Änderungen in fernen Inhalten

Country Status (4)

Country Link
US (1) US20170154066A1 (de)
CN (1) CN108292312A (de)
DE (1) DE112016003309T5 (de)
WO (1) WO2017092661A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110113381B (zh) * 2019-04-09 2023-04-07 深圳前海微众银行股份有限公司 一种区块链中订阅主题的方法及装置
CN113422790A (zh) * 2020-06-08 2021-09-21 阿里巴巴集团控股有限公司 数据管理方法和装置、电子设备以及计算机可读存储介质

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6738766B2 (en) * 2000-02-02 2004-05-18 Doongo Technologies, Inc. Apparatus and methods for providing personalized application search results for wireless devices based on user profiles
JP2001318847A (ja) * 2000-05-11 2001-11-16 Sony Corp 更新通知システム、更新監視装置、携帯通信端末、情報処理装置、コンテンツ取得指示方法、コンテンツ取得方法及びプログラム格納媒体
US7454195B2 (en) * 2001-11-16 2008-11-18 At&T Mobility Ii, Llc System for the centralized storage of wireless customer information
US20060008256A1 (en) * 2003-10-01 2006-01-12 Khedouri Robert K Audio visual player apparatus and system and method of content distribution using the same
US20050119910A1 (en) * 2003-12-01 2005-06-02 International Business Machines Corporation Content update notification
US7523146B2 (en) * 2005-06-21 2009-04-21 Apple Inc. Apparatus and method for peer-to-peer N-way synchronization in a decentralized environment
US8495015B2 (en) * 2005-06-21 2013-07-23 Apple Inc. Peer-to-peer syncing in a decentralized environment
JP5068435B2 (ja) * 2005-07-15 2012-11-07 日本電気株式会社 情報交換システム、管理サーバ及びそれらに用いるネットワーク負荷軽減方法並びにそのプログラム
US8868499B2 (en) * 2007-08-15 2014-10-21 Salesforce.Com, Inc. Method and system for pushing data to subscribers in an on-demand service
US20090193410A1 (en) * 2007-09-28 2009-07-30 Xcerion Aktiebolag Network operating system
CN101465992A (zh) * 2007-12-20 2009-06-24 大唐移动通信设备有限公司 一种手机电视业务的电视节目通知方法及系统
KR20090117528A (ko) * 2008-05-09 2009-11-12 삼성전자주식회사 Sip 네트워크 기반의 컨텐츠 공유 방법 및 그 시스템
US20100030818A1 (en) * 2008-07-31 2010-02-04 Yahoo! Inc. System and method for applying once a transaction delivered in a message published asynchronously in a distributed database
JP4612715B2 (ja) * 2008-09-05 2011-01-12 株式会社日立製作所 情報処理システム、データ更新方法およびデータ更新プログラム
US8756195B2 (en) * 2009-08-27 2014-06-17 The Boeing Company Universal delta set management
US8200624B2 (en) * 2010-07-20 2012-06-12 Sybase, Inc. Membership tracking and data eviction in mobile middleware scenarios
WO2012137262A1 (en) * 2011-04-08 2012-10-11 Hitachi, Ltd. Information processing system and data processing method
CN102291416B (zh) * 2011-09-14 2015-09-30 成都软智科技有限公司 一种客户端与服务器端双向同步的方法及系统
US9307006B2 (en) * 2012-04-11 2016-04-05 Salesforce.Com, Inc. System and method for synchronizing data objects in a cloud based social networking environment
US8929238B2 (en) * 2012-05-29 2015-01-06 Alcatel Lucent Subscriber record context objects
CN102799609A (zh) * 2012-05-31 2012-11-28 新奥特(北京)视频技术有限公司 一种基于数据监控的数据获取方法
US9641653B2 (en) * 2012-08-31 2017-05-02 Satyanarayana T. Method and apparatus for determining a synchronization of subscription-notification service subscriptions among multiple entities
US9244914B2 (en) * 2012-09-28 2016-01-26 Apple Inc. Schema versioning for cloud hosted databases
CN103036970A (zh) * 2012-12-11 2013-04-10 北京奇虎科技有限公司 一种页面内容订阅方法和系统
CN103034716A (zh) * 2012-12-11 2013-04-10 北京奇虎科技有限公司 页面内容订阅方法和装置
US10191915B2 (en) * 2013-02-19 2019-01-29 Hitachi, Ltd. Information processing system and data synchronization control scheme thereof
US9483362B2 (en) * 2013-05-08 2016-11-01 Commvault Systems, Inc. Use of auxiliary data protection software in failover operations
US9805106B2 (en) * 2013-10-04 2017-10-31 Alfresco Software, Inc. Hybrid synchronization between cloud and on-premise systems in a content management system
US10430403B2 (en) * 2014-08-20 2019-10-01 Embarcadero Technologies, Inc. Tracking change data in a database
US9560515B2 (en) * 2014-10-07 2017-01-31 Mitel Mobility Inc. System and method for supplementary services setting synchronization
US10015147B2 (en) * 2014-10-22 2018-07-03 Visa International Service Association Token enrollment system and method

Also Published As

Publication number Publication date
US20170154066A1 (en) 2017-06-01
WO2017092661A1 (en) 2017-06-08
CN108292312A (zh) 2018-07-17

Similar Documents

Publication Publication Date Title
DE112012005037B4 (de) Verwalten von redundanten unveränderlichen Dateien unter Verwendung von Deduplizierungen in Speicher-Clouds
DE102008015662B4 (de) Beseitigung von Daten
CN112019369A (zh) 一种微服务框架下动态配置管理方法及系统
DE202012013432U1 (de) Speichern von Daten auf Speicherknoten
DE202015009783U1 (de) Systeme zur Bereitstellung von Ressourcen
DE112013002542T5 (de) Cloud-basierte Anwendungsressourcendateien
DE202010018481U1 (de) Asynchroner verteilter Objekt-Upload für replizierte Assoziativspeichercluster
DE102012223167B4 (de) Gemeinsame Nutzung von Artefakten zwischen kollaborativen Systemen
DE112011104787B4 (de) Nutzung von Inhalten über persönliche Clouds
DE112015003926B4 (de) Verfahren, System und Computerprogramm zum Publish/Subscribe-Messaging unter Verwendung einer Nachrichtenstruktur
DE102014114005A1 (de) Risikobeurteilung von Interaktionen von Anwendungen für mobile Einheiten aufgrund von Reputation
DE112012000989B4 (de) Peet-To-Peer-Kooperation von Herausgebern in einer Publikations-Abonnement-Umgebung
DE112018000456T5 (de) Verwalten von umfangreichen Zuordnungsgruppen unter Verwendung von optimierten Bitmap-Darstellungen
DE102014104971A1 (de) Verfahren für den Umgang mit Dateien in einer hierarchischen Speicherumgebung und eine entsprechende hierarchische Speicherumgebung
DE202014010885U1 (de) Beschleunigung basierend auf zwischengespeicherte Flüsse
DE112012000282T5 (de) Anwendungswiederherstellung in einem Dateisystem
DE112020004116T5 (de) Dynamisches abändern der parallelität einer aufgabe in einer pipeline
DE112016002207T5 (de) Erstellung und verwaltung von ladenbesuchsdaten
DE112021003402T5 (de) Blockchain-verwaltung von bereitstellungsfehlern
DE202015009316U1 (de) Metadatenmanagement in einem dezentralen Verarbeitungssystem
DE102013008522A1 (de) Endgerät-Verwaltungssystem, Verwaltungsserver und Verfahren dafür
DE112016003309T5 (de) Abonnementdienst zum Überwachen von Änderungen in fernen Inhalten
DE112021003031T5 (de) Archivieren von nur-beschleuniger-datenbanktabellen
DE112018005620T5 (de) Auftragsverwaltung in einem datenverarbeitungssystem
DE202013005673U1 (de) Stapelverarbeitete Aktivitätsstrom-Aktualisierungen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R083 Amendment of/additions to inventor(s)
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017300000

Ipc: G06F0016000000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0016000000

Ipc: G06F0016230000

R084 Declaration of willingness to licence