DE10313048A1 - System und Verfahren zur Verwaltung verteilter gleichzeitiger Versionen - Google Patents
System und Verfahren zur Verwaltung verteilter gleichzeitiger Versionen Download PDFInfo
- Publication number
- DE10313048A1 DE10313048A1 DE10313048A DE10313048A DE10313048A1 DE 10313048 A1 DE10313048 A1 DE 10313048A1 DE 10313048 A DE10313048 A DE 10313048A DE 10313048 A DE10313048 A DE 10313048A DE 10313048 A1 DE10313048 A1 DE 10313048A1
- Authority
- DE
- Germany
- Prior art keywords
- file
- server
- client
- updated
- copy
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2064—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring while ensuring consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2071—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Multi Processors (AREA)
Abstract
Es handelt sich um ein Verwaltungssystem für verteilte gleichzeitige Versionen. Das System verfügt über einen ersten Server, einen zweiten Server und einen ersten Client. Der erste Server verfügt über eine erste Datenbank mit einer Datei. Der zweite Server verfügt über eine zweite Datenbank mit einer der Datei entsprechenden Dateikopie, ein Datenreplikationsmodul und ein Verbindungserkennungsmodul. Wenn es der erste Client wünscht, die Dateikopie im zweiten Server durch eine aktualisierte Datei zu ersetzen, wird die Dateikopie dann durch die aktualisierte Datei ersetzt, wenn der erste Server und der zweite Server verbunden sind. Dann wird die aktualisierte Datei durch das Datenreplikationsmodul auf den ersten Server kopiert, und die Datei in der ersten Datenbank wird durch die aktualisierte Datei ersetzt.
Description
- Priorität: 8. Juli 2003, Taiwan, Rep. China, Nr. 91115055
- HINTERGRUND DER ERFINDUNG
- Gebiet der Erfindung
- Die Erfindung betrifft ein System und ein Verfahren zur Dateiverwaltung, insbesondere ein System und ein Verfahren zur Verwaltung verteilter gleichzeitiger Versionen, die die Übereinstimmung von Dateikopien auf verschiedenen Servern aufrecht erhalten, um die Verbindungskosten zu verringern, wenn auf einen einzelnen Server zugegriffen wird.
- Beschreibung der einschlägigen Technik
- Bei herkömmlichen Systemen zur Dateiverwaltung und gleichzeitige Versionen, wie bei einem Quellcode-Verwaltungssystem, werden alle Quellcodes in einem einzelnen Server abge speichert, der für Funktionen zum Verwalten der Quellcodes sorgen kann. Clients können eine Verbindung zum Server herstellen, um über Netzwerke über die Quellcodes zuzugreifen, um die Codes zu aktualisieren oder zu modifizieren. Der Server kann die Gültigkeit der Quellcodes dadurch aufrecht erhalten, dass er eine geeignete Berechtigungsverwaltung verwendet.
- Die
1 ist ein schematisches Diagramm zum Veranschaulichen eines herkömmlichen Dateiverwaltungssystems. Wie es in der1 dargestellt ist, sind alle Dateien in der Datenbank101 des Servers100 gespeichert. Um auf Dateien auf dem Server100 zuzugreifen, können Benutzer einen Client110 (120) für Verbindung zum Server100 verwenden, und sie können über Netzwerke auf Dateien in der Datenbank101 zugreifen. Der Client110 (120 ) und der Server100 sind unter Verwendung eines Verwaltungssystems für gleichzeitige Versionen, wie VSS (Visual SourceSafe) als System auf Client-Server-Basis aufgebaut, und so hat der Server100 die Fähigkeit, die Datenbank101 mittels Berechtigung zu verwalten. Da alle Clients mit demselben Server verbunden sein müssen, um auf Dateien zuzugreifen, steigt die Systembelastung schnell an, wenn eine große Anzahl von Clients gleichzeitig mit dem Server verbunden ist. Ferner sind die Kosten zum Aufbauen von Netzwerken oder Standleitungen für Unternehmen mit Zweigstellen in verschiedenen Ländern teuer. - ZUSAMMENFASSUNG DER ERFINDUNG
- Daher ist es eine Aufgabe der Erfindung, ein System und ein Verfahren zur Verwaltung verteilte gleichzeitige Versionen zu schaffen, die die Übereinstimmung von Dateikopien auf verschiedenen Servern aufrecht erhalten, um die Verbindungskosten zu senken, wenn auf einen einzelnen Server zugegriffen wird.
- Um die obigen Aufgaben zu lösen, sind durch die Erfindung ein System und ein Verfahren zur Verwaltung verteilter gleichzeitiger Versionen geschaffen. Gemäß einer Ausführungsform der Erfindung verfügt das System über einen ersten Server, einen zweiten Server und einen Client B (erster Client) .
- Der erste Server verfügt über eine erste Datenbank mit einer Datei. Der zweite Server verfügt über eine zweite Datenbank mit einer Dateikopie, die der Datei in der ersten Datenbank entspricht, einem Datenreplikationsmodul und einem Verbindungserkennungsmodul. Das Verbindungserkennungsmodul erkennt den Verbindungsstatus zwischen dem ersten und zweiten Server. Wenn es der Client B wünscht, die Dateikopie im zweiten Server durch eine aktualisierte Datei zu ersetzen, wird die Dateikopie durch die aktualisierte Datei ersetzt, wenn der Verbindungszustand eine Verbindung anzeigt. Dann wird die Dateikopie der zweiten Datenbank durch die aktualisierte Datei ersetzt, und die aktualisierte Datei in der zweiten Datenbank wird durch das Datenreplikationsmodul in den ersten Server kopiert, um die Datei zu ersetzen, und die Daten in der ersten Datenbank wird durch die aktualisierte Datei ersetzt.
- Ferner wird die Systemzeit zwischen dem zweiten Server und dem Client B eingestellt, wenn die Dateikopie im zweiten Server im Verbindungszustand durch eine aktualisierte Datei ersetzt wird, und es erfolgt eine Etikettierung durch eine der aktualisierten Systemzeit entsprechende Zeitmarke, nachdem die Dateikopie durch die aktualisierte Datei ersetzt wurde.
- Die der aktualisierten Datei entsprechende Zeitmarke wird ferner mit einer neuen Zeitmarke verglichen, die der Datei im ersten Server entspricht, bevor die Datei durch die aktualisierte Datei ersetzt wird. Die Datei wird durch die aktualisierte Datei ersetzt, wenn die Zeitmarke später als die neue Zeitmarke liegt, d. h., wenn die Zeitmarke später als die neue Zeitmarke ersetzt wurde. Andernfalls wird die Datei nicht durch die aktualisierte Datei ersetzt.
- Außerdem kann ein Client A (zweiter Client) die Datei im ersten Server nicht aktualisieren, während die Dateikopie durch den Client B aktualisiert wird. Wenn der Nicht-Verbindungszustand erkannt wird, kann der Client B die Dateikopie im zweiten Server aktualisieren, jedoch kann der Client A die Datei im ersten Server nicht aktualisieren.
- Gemäß einer anderen Ausführungsform der Erfindung ist ein Verwaltungsverfahren für verteilte gleichzeitige Versionen geschaffen. Das Verfahren ist zur Verwendung in einem System mit einem ersten Server mit einer Datei, einem zweiten Server mit einer der Datei entsprechenden Dateikopie und einem Client B geeignet.
- r Als Erstes wird der Verbindungszustand zwischen dem ersten und dem zweiten Server erkannt. Wenn es der Client B wünscht, die Dateikopie im zweiten Server durch eine aktualisierte Datei zu ersetzen, wird die Dateikopie durch die aktualisierte Datei ersetzt, wenn der Verbindungszustand eine Verbindung anzeigt. Dann wird die aktualisierte Datei in den ersten Server kopiert, und die Datei wird durch die aktualisierte Datei ersetzt.
- Ferner wird die Systemzeit zwischen dem zweiten Server und dem Client B eingestellt, wenn es der Client B wünscht, die Dateikopie in einem zweiten Server durch eine aktualisierte Datei zu ersetzen, während eine Verbindung vorliegt, und es erfolgt eine Etikettierung durch eine Zeitmarke entsprechend der aktualisierten Systemzeit, nachdem die Dateikopie durch die aktualisierte Datei ersetzt wurde.
- Die der aktualisierten Datei entsprechende Zeitmarke wird ferner mit einer neuen Zeitmarke entsprechend der Datei im ersten Server vor dem Ersetzen der Daten durch die aktualisierte Datei verglichen. Die Datei wird durch die aktualisierte Datei ersetzt, wenn die Zeitmarke später als die neue Zeitmarke liegt. Andernfalls wird die Datei nicht durch die aktualisierte Datei ersetzt.
- In ähnlicher Weise kann ein Client A die Datei im ersten Server nicht aktualisieren, wenn die Dateikopie durch den Client B aktualisiert wird. Wenn der erste und der zweite Server getrennt sind, kann der Client B die Dateikopie im zweiten Server aktualisieren, jedoch kann der Client A die Datei im ersten Server nicht aktualisieren.
- KURZE BESCHREIBUNG DER ZEICHNUNGEN
- Die oben genannten Aufgaben, Merkmale und Vorteile der Erfindung werden unter Bezugnahme auf die folgende detaillierte Beschreibung der bevorzugten Ausführungsformen unter Bezugnahme auf die beigefügten Zeichnungen ersichtlich.
-
1 ist ein schematisches Diagramm zum Veranschaulichen des herkömmlichen Dateiverwaltungssystems; -
2 ist ein schematisches Diagramm, das die Architektur des Verwaltungssystems für verteilte gleichzeitige Versionen gemäß der Ausführungsform der Erfindung zeigt; und -
3 ist ein Flussdiagramm zum Veranschaulichen des Betriebs des Verwaltungsverfahrens für verteilte gleichzeitige Versionen gemäß der Ausführungsform der Erfindung. - DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
- Die
2 ist ein schematisches Diagramm, das die Architektur des Verwaltungssystems für verteilte gleichzeitige Versionen gemäß der Ausführungsform der Erfindung zeigt. - Gemäß der Ausführungsform der Erfindung verfügt das Verwaltungssystem für verteilte gleichzeitige Versionen über einen ersten Server
200 , einen Client A (zweiter Client)210 , einen zweiten Server300 und einen Client B (erster Client)310 . - Der erste Server
200 und der zweite Server300 verfügen über dieselben Komponenten. Der erste Server200 verfügt über eine erste Datenbank201 mit einer Datei (in der2 nicht dargestellt), ein Datenreplikationsmodul202 und ein Verbindungserkennungsmodul203 . Das Datenreplikationsmodul202 überwacht den Zustand der ersten Datenbank201 . Wenn die Daten in der ersten Datenbank201 aktualisiert werden, kopiert das Datenreplikationsmodul202 die aktualisierten Daten auf einen anderen Server. Das Verbindungserkennungsmodul203 erkennt den Verbindungszustand zwischen dem ersten Server200 und dem zweiten Server300 . - In ähnlicher Weise verfügt der zweite Server
300 über eine zweite Datenbank301 , ein Datenreplikationsmodul302 und ein Verbindungserkennungsmodul303 . Die zweite Datenbank301 beinhaltet eine Dateikopie (in der2 nicht dargestellt), die der Datei in der ersten Datenbank201 des ersten Servers200 entspricht. Die Datenkopie stimmt mit der Datei überein, und die Datei und die Dateikopie können Quellcodes sein. - Das Datenreplikationsmodul
302 überwacht den Zustand der zweiten Datenbank301 . Wenn die Daten der zweiten Datenbank301 aktualisiert werden, kopiert das Datenreplikationsmodul302 die aktualisierten Daten auf einen anderen Server. Das Verbindungserkennungsmodul303 erkennt den Verbindungszustand zwischen dem zweiten Server300 und dem ersten Server200 . - Der erste Server
200 stellt Dienste, wie Dateizugriff, für den Client A210 bereit, und der zweite Server stellt Dienste für den Client B310 bereit. Es ist zu beachten, dass der vom Client angeforderte Server entsprechend dem Abstand bestimmt werden kann. Zum Beispiel kann der Client B310 in einem Land eine Verbindung mit dem zweiten Server300 herstellen, und der Client A210 in einem anderen Land kann eine Verbindung mit dem ersten Server200 herstellen, wenn sich der erste Server200 im zweiten Land und der zweite Server300 im ersten befindet. - Wenn es der Client B 310 wünscht, die Datenkopie in der zweiten Datenbank
301 des zweiten Servers300 durch eine aktualisierte Datei (in der2 nicht dargestellt) zu ersetzen, wird vom Verbindungserkennungsmodul303 der Verbindungszustand erfasst. Wenn der zweite Server300 und der erste Server200 verbunden sind, wird die Systemzeit zwischen dem zweiten Server300 und dem Client B310 eingestellt. D. h., dass die Zeit des Clients B310 als Systemzeit des zweiten Servers300 eingestellt wird. - Dann wird die Dateikopie in der zweiten Datenbank
310 des zweiten Servers300 durch die aktualisierte Datei ersetzt, und es erfolgt Etikettierung mit einer Zeitmarke entsprechend der aktualisierten Systemzeit, nachdem die Dateikopie durch die aktualisierte Datei ersetzt wurde. - Wenn das Datenreplikationsmodul
302 einmal die Aktualisierung der zweiten Datenbank301 überwacht, wird die der ak tualisierten Datei entsprechende Zeitmarke mit einer Zeitmarke (neue Zeitmarke) verglichen, die der Datei im ersten Server200 entspricht. - Die aktualisierte Datei wird durch das Datenreplikationsmodul
302 auf den ersten Server200 kopiert, und die Datei wird durch die aktualisierte Datei ersetzt, wenn die Zeitmarke später als die neue Zeitmarke liegt, d. h., wenn die Zeitmarke später als die neue Zeitmarke erzeugt wurde. Andernfalls wird die aktualisierte Datei nicht auf den ersten Server200 kopiert, und die Datei im ersten Server200 wird nicht durch die aktualisierte Datei ersetzt. - Es ist zu beachten, dass der Zweck des Einstellens der Systemzeit zu Beginn einer Replikation darin besteht, zu gewährleisten, dass der Client B 310 bei der Replikation dieselbe Systemzeit wie der zweite Server
300 verwendet. Das Vergleichen der Zeitmarken dient dazu, zu gewährleisten, dass die zuletzt aktualisierte Datei in der Datenbank aufrecht erhalten wird, um die Genauigkeit der Datenbank zu erhalten. - Da der erste Server
200 und der zweite Server300 dieselben Komponenten aufweisen und da die Beziehung zwischen dem Client A210 und dem ersten Server200 sowie die Beziehung zwischen dem Client B310 und dem zweiten Server300 gleich sind, arbeiten, wenn durch das Verbindungserkennungsmodul203 eine erfolgreiche Verbindung zwischen dem zweiten Server300 und dem ersten Server200 erkannt wird, die Komponenten im ersten Server200 auf dieselbe Weise wie die im zweiten Server300 , jedoch sind die Rollen des ersten und des zweiten Servers200 und300 vertauscht. - Außerdem kann der Client A
210 eine spezielle Datei im ersten Server200 dann nicht aktualisieren, wenn die Kopie der speziellen Datei im zweiten Server300 durch den Client B310 aktualisiert wird. In ähnlicher Weise kann der Client B310 die Dateikopie im zweiten Server300 nicht aktualisieren, wenn die Daten im ersten Server200 durch den Client A210 aktualisiert wird. - Der Client B
310 kann die Dateikopie im zweiten Server300 aktualisieren, wenn zwischen dem ersten Server200 und dem zweiten Server300 eine Trennung erkannt wird. Der Client A210 kann jedoch die Datei im ersten Server200 nicht aktualisieren, wenn der ersten Server200 und der zweite Server300 getrennt sind. In diesem Fall wird der zweite Server300 als Masterserver spezifiziert, und der erste Server200 ist der Sekundärserver. Für Übereinstimmung der Datenbank-Dateiversionen kann der Masterserver die Clients mit vollen Funktionen versorgen, wenn der Master- und der Sekundärserver getrennt sind, jedoch sorgt der Sekundärserver nur für eingeschränkte Funktionen, wie ein Auslesen ohne Aktualisieren. - Es ist zu beachten, dass die Clients und die Server (der Client A
210 und der erste Server200 sowie der Client B310 und der zweite Server300 ) unter Verwendung eines Verwaltungssystems für gleichzeitige Versionen, wie VSS (Visual SourceSafe), als Systeme auf Klein-Server-Basis aufgebaut sein können, so dass die Server (200 und300 ) die Datenbank (201 und301 ) mit geeigneter Berechtigung verwalten können. Wie oben beschrieben, können der zweite Server300 und der erste Server200 als Masterserver bzw. Sekundärserver aufgebaut werden, wenn das Verwaltungssystem für gleichzeitige Versionen, VSS, verwendet wird. Ferner können die Datenreplikationsmodule (202 und302 ) gemäß dem File Replication Service (FRS) von Microsoft aufgebaut sein. - Die
3 ist ein Flussdiagramm zum Veranschaulichen des Betriebs des Verwaltungsverfahrens für verteilte gleichzei tige Versionen gemäß der Ausführungsform der Erfindung. - Das Verwaltungsverfahren für verteilte gleichzeitige Versionen ist zur Verwendung in einem System mit einem ersten Server mit einer Datei, einem zweiten Server mit einer der Datei entsprechenden Dateikopie und mindestens einem Client geeignet.
- Wenn es ein Client wünscht, die Dateikopie im zweiten Server durch eine aktualisierte Datei zu ersetzen, in einem Schritt S301, wird der Verbindungszustand zwischen dem ersten und dem zweiten Server erfasst. Wenn der zweite und der erste Server verbunden sind (Ja in einem Schritt S302), wird die Systemzeit zwischen dem zweiten Server und dem Client eingestellt. D. h., dass die Zeit des Client als Systemzeit des zweiten Servers eingestellt wird.
- Dann wird, in einem Schritt S304, ermittelt, ob andere Clients auf die Dateikopie zugreifen. Die Prozedur kehrt zum Schritt S301 zurück, wenn dies der Fall ist, während andernfalls, in einem Schritt S305, die Dateikopie auf dem zweiten Server durch die aktualisierte Datei ersetzt wird und, in einem Schritt S306, eine Etikettierung durch eine Zeitmarke entsprechend der aktualisierten Systemzeit erfolgt, nachdem die Datenkopie durch die aktualisierte Datei ersetzt wurde.
- Danach wird, in einem Schritt S307, die der aktualisierten Datei entsprechende Zeitmarke mit derjenigen Zeitmarke (neue Zeitmarke) verglichen, die der Datei im ersten Server entspricht. Dann wird, in einem Schritt S308, die aktualisierte Datei in einem ersten Server kopiert, und die Datei wird durch die aktualisierte Datei ersetzt, wenn die Zeitmarke später als die neue Zeitmarke liegt (Ja im Schritt S307). Andernfalls wird die aktualisierte Datei nicht auf den ersten Server kopiert, und die Datei im ersten Server wird nicht durch die aktualisierte Datei ersetzt.
- Ferner wird, in einem Schritt S309, ermittelt, ob der mit dem Client verbundene Server der Masterserver ist, wenn der zweite und der erste Server getrennt sind (Nein im Schritt S302). Wenn der Server der Masterserver ist (Ja im Schritt S309), kehrt die Prozedur zum Schritt S303 zurück; andernfalls erfolgt ein Übergang zu einem Schritt S311. Im Schritt S311 wird, wenn es der Client einfach wünscht, die Datei zu lesen, die Datei vom Client gelesen (heruntergeladen), wie er es wünscht (Ja im Schritt S310).
- Für Übereinstimmung der Datenbank-Dateiversionen kann, wenn der Master- und der Sekundärserver getrennt sind, der Masterserver die Clients mit vollständigen Funktionen versehen, jedoch sorgt der Sekundärserver nur für eingeschränkte Funktionen, wie ein Lesen oder Aktualisieren.
- Es ist zu beachten, dass die Ausführungsform der Erfindung gleichzeitige Versionen verwaltet, d. h. Situationen, in denen mehrere Versionen einer Datei vorliegen. Der Datentyp einer Datei im Verwaltungssystem für gleichzeitige Dateiversionen beinhaltet Versionsinformation, während der Datentyp einer Datei im Verwaltungssystem für gleichzeitige Dateien keine derartige Versionsinformation enthält. In ähnlicher Weise kann die Erfindung bei der Verwaltung gleichzeitiger Dateien und gleichzeitiger Dateiversionen angewandt werden.
- Im Ergebnis kann unter Verwendung des Systems und des Verfahrens gemäß der Erfindung zur Verwaltung verteilter gleichzeitiger Versionen die Übereinstimmung von Dateikopien auf verschiedenen Servern aufrecht erhalten werden, um Verbindungskosten zu senken, wenn auf einen einzelnen Server zugegriffen wird.
- Obwohl die Erfindung durch ihre bevorzugte Ausführungsform beschrieben wurde, soll die Erfindung nicht auf die hier offenbarten genauen Ausführungsformen beschränkt sein. Die mit dieser Technik vertrauten Personen können immer noch verschiedene Änderungen und Modifizierungen vornehmen, ohne vom Grundgedanken und Schutzumfang der Erfindung abzuweichen. Daher soll der Schutzumfang der Erfindung durch die folgenden Ansprüche und ihre Äquivalente definiert und geschützt sein.
Claims (20)
- Verwaltungssystem für verteilte gleichzeitige Versionen, mit: – einem ersten Server mit einer ersten Datenbank mit einer Datei; – einem zweiten Server mit einer zweiten Datenbank mit einer der Datei in der ersten Datenbank entsprechenden Dateikopie, einem Datenreplikationsmodul und einem Verbindungserkennungsmodul zum Erkennen des Verbindungszustands zwischen dem ersten Server und dem zweiten Server; und – einem ersten Client zum Ersetzen der Dateikopie im zweiten Server durch eine aktualisierte Datei, wenn der Verbindungszustand eine Verbindung anzeigt; – wobei die aktualisierte Datei durch das Datenreplikationsmodul im zweiten Server auf den ersten Server kopiert wird und die Datei in der ersten Datenbank durch die aktualisierte Datei ersetzt wird.
- System nach Anspruch 1, bei dem die Systemzeit zwischen dem zweiten Server und dem ersten Client eingestellt wird, bevor der erste Client die erste Dateikopie im zweiten Server durch die aktualisierte Datei ersetzt.
- System nach Anspruch 2, bei dem eine Zeitmarke entsprechend der eingestellten Systemzeit zugewiesen wird, nachdem die Dateikopie durch die aktualisierte Datei ersetzt wurde.
- System nach Anspruch 3, bei dem die der aktualisierten Datei entsprechende Zeitmarke mit einer neuen Zeitmarke verglichen wird, die der Datei im ersten Server vor dem Ersetzen der Datei durch die aktualisierte Datei entspricht, und die Datei durch die aktualisierte Datei ersetzt wird, wenn die Zeitmarke später als die neue Zeitmarke liegt.
- System nach Anspruch 1, bei dem der erste Client die Dateikopie im zweiten Server aktualisieren kann, jedoch ein zweiter Client die Datei im ersten Server nicht aktualisieren kann, wenn ein Trennungszustand zwischen dem ersten und dem zweiten Server erkannt wird.
- System nach Anspruch 1, bei dem die Datei eine Quellcodedatei ist.
- System nach Anspruch 1, bei dem die Datei eine Datei mit einem Versionsdatentyp ist.
- System nach Anspruch 7, bei dem die Systemzeit zwischen dem zweiten Server und dem ersten Client eingestellt wird, bevor der erste Client die Dateikopie im zweiten Server durch die aktualisierte Datei ersetzt.
- System nach Anspruch 8, bei dem die Datei durch die aktualisierte Datei dann nicht ersetzt wird, wenn eine Zeitmarke, die nach dem Ersetzen der Dateikopie durch die aktualisierte Datei etikettiert wurde, früher als eine neue Zeitmarke liegt, die der Datei im ersten Server entspricht.
- System nach Anspruch 7, bei dem ein zweiter Client die Datei im ersten Server nicht aktualisieren kann, während die Dateikopie durch den ersten Client aktualisiert wird.
- System nach Anspruch 7, bei dem der erste Client die Dateikopie im zweiten Server aktualisieren kann, jedoch ein zweiter Client die Datei im ersten Server nicht aktualisieren kann, wenn ein Trennungszustand zwischen dem ersten und dem zweiten Server erkannt wird.
- System nach Anspruch 7, bei dem die Datei eine Quellcodedatei ist.
- Verwaltungsverfahren für verteilte gleichzeitige Versionen zur Verwendung in einem System mit einem ersten Server mit einer Datei, einem zweiten Server mit einer der Datei entsprechenden Kopie und einem ersten Client, mit den folgenden Schritten: – Erfassen des Verbindungszustands zwischen dem ersten Server und dem zweiten Server; – Ersetzen der Dateikopie durch eine aktualisierte Datei aus dem ersten Client, wenn der Verbindungszustand eine Verbindung anzeigt; und – Kopieren der aktualisierten Datei durch den zweiten Server auf den ersten Server und Ersetzen der Datei durch die aktualisierte Datei.
- Verfahren nach Anspruch 13, ferner mit einem Einstellen der Systemzeit zwischen dem zweiten Server und dem ersten Client bevor die Datei im zweiten Server durch die aktualisierte Datei ersetzt wird.
- Verfahren nach Anspruch 14, ferner mit einem Vergleichen einer Zeitmarke, die etikettiert wurde, nachdem die Dateikopie durch die aktualisierte Datei ersetzt wurde, mit einer neuen Zeitmarke entsprechend der Datei im ersten Server vor dem Ersetzen der Datei durch die aktualisierte Datei, und ein Ersetzen der Datei durch die aktualisierte Datei, wenn die Zeitmarke später als die neue Zeitmarke liegt.
- Verfahren nach Anspruch 13, bei dem der erste Client die Dateikopie im zweiten Server aktualisieren kann, jedoch ein zweiter Client die Datei im ersten Server nicht aktualisieren kann, wenn ein Trennungszustand zwischen dem ersten und dem zweiten Server erkannt wird.
- Verfahren nach Anspruch 13, bei dem die Datei eine Quellcodedatei ist.
- Verfahren nach Anspruch 13, bei dem die Datei eine Datei mit Versionsdaten ist.
- Verfahren nach Anspruch 18, ferner mit einem Einstellen der Systemzeit zwischen dem zweiten Server und dem ersten Client bevor die Dateikopie im zweiten Server durch die aktualisierte Datei ersetzt wird.
- Verfahren nach Anspruch 18, bei dem der erste Client die Dateikopie im zweiten Server aktualisieren kann, jedoch ein zweiter Client die Datei im ersten Server nicht aktualisieren kann, wenn ein Trennungszustand zwischen dem ersten und dem zweiten Server erkannt wird.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW091115055A TWI256556B (en) | 2002-07-08 | 2002-07-08 | Distributed concurrent version management system and method |
TW02-91115055 | 2002-07-08 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10313048A1 true DE10313048A1 (de) | 2004-01-29 |
Family
ID=21688316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10313048A Ceased DE10313048A1 (de) | 2002-07-08 | 2003-03-24 | System und Verfahren zur Verwaltung verteilter gleichzeitiger Versionen |
Country Status (4)
Country | Link |
---|---|
US (1) | US20040006578A1 (de) |
DE (1) | DE10313048A1 (de) |
GB (1) | GB2390711B (de) |
TW (1) | TWI256556B (de) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2451253A1 (en) * | 2003-11-27 | 2005-05-27 | Ibm Canada Limited - Ibm Canada Limitee | Method for competitive peer programming |
US7343453B2 (en) | 2004-04-30 | 2008-03-11 | Commvault Systems, Inc. | Hierarchical systems and methods for providing a unified view of storage information |
US8266406B2 (en) | 2004-04-30 | 2012-09-11 | Commvault Systems, Inc. | System and method for allocation of organizational resources |
US7587423B2 (en) | 2004-09-17 | 2009-09-08 | Sap Ag | Multistep master data cleansing in operative business processes |
US7567986B2 (en) * | 2004-10-07 | 2009-07-28 | Microsoft Corporation | Method and system for limiting resource usage of a version store |
US7651593B2 (en) | 2005-12-19 | 2010-01-26 | Commvault Systems, Inc. | Systems and methods for performing data replication |
US20110010518A1 (en) * | 2005-12-19 | 2011-01-13 | Srinivas Kavuri | Systems and Methods for Migrating Components in a Hierarchical Storage Network |
US8661216B2 (en) * | 2005-12-19 | 2014-02-25 | Commvault Systems, Inc. | Systems and methods for migrating components in a hierarchical storage network |
US7606844B2 (en) | 2005-12-19 | 2009-10-20 | Commvault Systems, Inc. | System and method for performing replication copy storage operations |
US8572330B2 (en) * | 2005-12-19 | 2013-10-29 | Commvault Systems, Inc. | Systems and methods for granular resource management in a storage network |
AU2006331932B2 (en) | 2005-12-19 | 2012-09-06 | Commvault Systems, Inc. | Systems and methods for performing data replication |
US8726242B2 (en) | 2006-07-27 | 2014-05-13 | Commvault Systems, Inc. | Systems and methods for continuous data replication |
US20080147878A1 (en) * | 2006-12-15 | 2008-06-19 | Rajiv Kottomtharayil | System and methods for granular resource management in a storage network |
WO2009062182A1 (en) * | 2007-11-09 | 2009-05-14 | Topia Technology | Architecture for management of digital files across distributed network |
US7987152B1 (en) * | 2008-10-03 | 2011-07-26 | Gadir Omar M A | Federation of clusters for enterprise data management |
US9495382B2 (en) | 2008-12-10 | 2016-11-15 | Commvault Systems, Inc. | Systems and methods for performing discrete data replication |
US8204859B2 (en) | 2008-12-10 | 2012-06-19 | Commvault Systems, Inc. | Systems and methods for managing replicated database data |
KR101268574B1 (ko) * | 2009-11-03 | 2013-05-28 | 한국전자통신연구원 | 태그 위치 추정 방법 |
US8504517B2 (en) * | 2010-03-29 | 2013-08-06 | Commvault Systems, Inc. | Systems and methods for selective data replication |
US8725698B2 (en) | 2010-03-30 | 2014-05-13 | Commvault Systems, Inc. | Stub file prioritization in a data replication system |
US8504515B2 (en) | 2010-03-30 | 2013-08-06 | Commvault Systems, Inc. | Stubbing systems and methods in a data replication environment |
US8489656B2 (en) | 2010-05-28 | 2013-07-16 | Commvault Systems, Inc. | Systems and methods for performing data replication |
ES2723781T3 (es) * | 2011-08-03 | 2019-09-02 | Amadeus Sas | Método y sistema para mantener consistencia fuerte de contenidos replicados distribuidos en un sistema de cliente/servidor |
US10379988B2 (en) | 2012-12-21 | 2019-08-13 | Commvault Systems, Inc. | Systems and methods for performance monitoring |
JP6508894B2 (ja) * | 2014-07-28 | 2019-05-08 | キヤノン株式会社 | サーバ装置、サーバ装置の制御方法及びプログラム |
US10275320B2 (en) | 2015-06-26 | 2019-04-30 | Commvault Systems, Inc. | Incrementally accumulating in-process performance data and hierarchical reporting thereof for a data stream in a secondary copy operation |
US10248494B2 (en) | 2015-10-29 | 2019-04-02 | Commvault Systems, Inc. | Monitoring, diagnosing, and repairing a management database in a data storage management system |
US10616346B2 (en) | 2017-07-28 | 2020-04-07 | International Business Machines Corporation | Server connection capacity management |
US10831591B2 (en) | 2018-01-11 | 2020-11-10 | Commvault Systems, Inc. | Remedial action based on maintaining process awareness in data storage management |
US11553047B2 (en) | 2018-11-30 | 2023-01-10 | International Business Machines Corporation | Dynamic connection capacity management |
US20200192572A1 (en) | 2018-12-14 | 2020-06-18 | Commvault Systems, Inc. | Disk usage growth prediction system |
US11042318B2 (en) | 2019-07-29 | 2021-06-22 | Commvault Systems, Inc. | Block-level data replication |
US11809285B2 (en) | 2022-02-09 | 2023-11-07 | Commvault Systems, Inc. | Protecting a management database of a data storage management system to meet a recovery point objective (RPO) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3213766B2 (ja) * | 1992-03-16 | 2001-10-02 | 株式会社日立製作所 | レプリケートファイル更新システム |
US5428526A (en) * | 1993-02-03 | 1995-06-27 | Flood; Mark A. | Programmable controller with time periodic communication |
US6275831B1 (en) * | 1997-12-16 | 2001-08-14 | Starfish Software, Inc. | Data processing environment with methods providing contemporaneous synchronization of two or more clients |
US6408282B1 (en) * | 1999-03-01 | 2002-06-18 | Wit Capital Corp. | System and method for conducting securities transactions over a computer network |
DE60119822T8 (de) * | 2000-03-29 | 2007-05-31 | Fuji Photo Film Co. Ltd. | Verteiltes Datenverarbeitungssystem und Datenverarbeitungsverfahren in einem verteilten Datenverarbeitungssystem |
-
2002
- 2002-07-08 TW TW091115055A patent/TWI256556B/zh not_active IP Right Cessation
- 2002-11-27 US US10/305,031 patent/US20040006578A1/en not_active Abandoned
-
2003
- 2003-03-24 DE DE10313048A patent/DE10313048A1/de not_active Ceased
- 2003-04-17 GB GB0309007A patent/GB2390711B/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
TWI256556B (en) | 2006-06-11 |
GB2390711B (en) | 2006-01-04 |
GB2390711A (en) | 2004-01-14 |
GB0309007D0 (en) | 2003-05-28 |
US20040006578A1 (en) | 2004-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10313048A1 (de) | System und Verfahren zur Verwaltung verteilter gleichzeitiger Versionen | |
DE60220676T2 (de) | Konsistente lesevorgänge in einer verteilten datenbankumgebung | |
DE69729399T2 (de) | Datenverwaltungssystem und Verfahren für replizierte Daten | |
DE69932465T2 (de) | Dateidistributionssystem und dessen Verfahren | |
DE60204729T2 (de) | Objektenlöschen von einem Vorrichtungspeicher | |
DE69818232T2 (de) | Verfahren und system zur verhinderung des herunterladens und ausführens von ausführbaren objekten | |
DE60220418T2 (de) | Verfahren und Anbieter zur Systemsynchronisation | |
DE19708021C1 (de) | Verfahren zur Regelung eines Zugriffs von Rechnern auf Daten eines zentralen Rechners | |
EP0849666A2 (de) | Verfahren zum Instantiieren einer versionsbehafteten Klasse | |
DE202011110895U1 (de) | Echtzeitsynchronisierte Bearbeitung von Dokumenten durch mehrere Benutzer für das Bloggen | |
DE10112941A1 (de) | System und Verfahren für das parallele Lesen von primären und sekundären Sicherungen zur Wiederherstellung mehrerer gemeinsam benutzter Datenbankdateien | |
DE68921715T2 (de) | Konferenzverbindungssystem. | |
EP0791884A2 (de) | Verfahren zum rechnergestützten Abgleich mehrerer, in mindestens einem Rechner gespeicherten Dateikopien einer gespeicherten Datei | |
DE602004006224T2 (de) | Verfahren und Vorrichtung zur Datensynchronisierung eines verteilten Datenbanksystems | |
DE10311082A1 (de) | Elektronikdokumentmanagementverfahren und Programm | |
DE69723500T2 (de) | Datenqualitätsverwaltungssystem | |
EP1225511A1 (de) | Verfahren und system zur akten-verwaltung in verteilten umgebungen | |
DE19803697C2 (de) | Verfahren zum Aufrüsten eines Softwaresystems und Vorrichtung zur Durchführung des Verfahrens | |
EP1227616A1 (de) | Verfahren, Programm und Anordnung zur Synchronisierung von einem Network Manager mit einem Network Agenten | |
EP1673915B1 (de) | Betriebsverfahren für einen server und hiermit korrespondierende gegenstände | |
DE69308790T2 (de) | Dateienverwaltungsverfahren, Aufzeichnungsmedium und Rechnersystem dafür | |
AT522281A1 (de) | Verfahren zur Charakterisierung des Betriebszustands eines Computersystems | |
DE602004009149T2 (de) | Vorrichtung und Verfahren zur Bestimmung des Synchronisationszustandes von Datenbankkopien, die über eine Funkschnittstelle eines Funkkommunikationssystems verbunden werden | |
EP1844396B1 (de) | Verfahren zum unterbrechungsfreien software-update | |
DE60202858T2 (de) | Installation von softwareanwendungen in einem endgerät |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection |