DE4420451A1 - Inhibiting (blocking) mechanism for a CHECK-IN/CHECK-OUT model - Google Patents

Inhibiting (blocking) mechanism for a CHECK-IN/CHECK-OUT model

Info

Publication number
DE4420451A1
DE4420451A1 DE4420451A DE4420451A DE4420451A1 DE 4420451 A1 DE4420451 A1 DE 4420451A1 DE 4420451 A DE4420451 A DE 4420451A DE 4420451 A DE4420451 A DE 4420451A DE 4420451 A1 DE4420451 A1 DE 4420451A1
Authority
DE
Germany
Prior art keywords
check
transmission
data
transmissions
transfer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE4420451A
Other languages
German (de)
Other versions
DE4420451C2 (en
Inventor
Masaaki Aoshima
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of DE4420451A1 publication Critical patent/DE4420451A1/en
Application granted granted Critical
Publication of DE4420451C2 publication Critical patent/DE4420451C2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • 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/2308Concurrency control
    • G06F16/2336Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
    • G06F16/2343Locking methods, e.g. distributed locking or locking implementation details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users

Landscapes

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

Abstract

An inhibiting mechanism for a CHECK-IN/CHECK-OUT model, in which one or more clients (9) access a public database of a server (1), comprises a management section (2) for long transmissions, which is present in the server (1) and is used for the purpose of managing transmissions which are requested by the client (9) and comprise a CHECK-OUT operation which copies data from the public database (8) and a CHECK-OUT operation which writes data back to the public database (8), and also a management section (5) for short transmissions, which is present in the server (1) and is used for the purpose of managing transmissions which do not copy any data from the public database (8), as well as a transmission list (7) for storing information which refers to the contents of the transmissions carried out by the management sections (2, 5) for long and short transmissions, respectively. The management section (2) for long transmissions puts off the CHECK-OUT operation of any arbitrary data until another transmission which is accessing the arbitrary data is completed, if the other transmission has been detected by the transmission list (7) between the CHECK-IN operation and CHECK-OUT operation. <IMAGE>

Description

Die Erfindung bezieht sich im allgemeinen auf Sperrmechanismen, insbesondere auf einen Sperrmechanismus für ein CHECK-IN/CHECK-OUT-Modell.The invention relates generally to locking mechanisms, in particular to a locking mechanism for a CHECK-IN / CHECK-OUT model.

Neuere Informationsverarbeitungssysteme wie beispielsweise Workstations mit einem Server und mehreren Clients, besitzen ein System zum Ausführen von Übertragungsvorgängen, in dem auf die Daten einer gemeinschaftlichen Datenbank zugegriffen wird. In diesem Fall kann der Übertragungsvorgang von der Datenbank eines Servers mit hoher Geschwindigkeit abhängig von einer Anfrage eines Clients durchgeführt werden, wenn die Übertragungseinheit kurz ist, wie z. B. im Falle eines on-line-Systems von Banken.Newer information processing systems such as workstations with one Server and several clients have a system for executing Transfer operations in which to the data of a community database is accessed. In this case, the transfer process from the database of a server at high speed depending on a request from a client be carried out when the transmission unit is short, e.g. B. in the case of a on-line system of banks.

Die Länge und die Verwendungsart der Übertragungen von beispielsweise CAD (computer aided design)- und CASE (computer aided software environment)-Systemen unterscheiden sich von den Übertragungen der on-line Systeme der Banken. Es ist jedoch wünschenswert, die Datenbank als Datenspeicher auf dem Gebiet der Entwicklung, wie beispielsweise bei CAD und CASE, zu verwenden. Aus diesem Grunde wurden in Dateisystemen, die die Zusammenarbeit mehrerer Personen unterstützen, wie beispielsweise eine Entwicklungsarbeit, an der mehrere Entwicklungsingenieure gleichzeitig beschäftigt sind, zusätzlich zu dem gebräuchlichen CHECK-IN/CHECK-OUT-Modell eine Datenbank eingesetzt. Mithilfe der in ein derartiges Dateisystem eingeführten Datenbank können die damit verbundenen Vorteile der Verarbeitungsfunktionen o. ä. ausgenützt werden, wie beispielsweise Pflege der Übertragung, Bereitstellung eines qualitativen Datenmodells und die Möglichkeit der Datenwiederbeschaffung.The length and type of use of the transfers, for example CAD (computer aided design) and CASE (computer aided software environment) systems differ from the transfers of the online systems of the banks. It is however, it is desirable to use the database as a data store in the field of Development such as CAD and CASE to use. For this Basically, in file systems, the collaboration of several people support, such as a development work on which several Development engineers are employed at the same time, in addition to the common one CHECK-IN / CHECK-OUT model used a database. Using the in a Such a file system introduced database can have the associated advantages the processing functions or the like are used, such as maintaining the Transfer, provision of a qualitative data model and the possibility of Data recovery.

Durch die Verbindung des CHECK-IN/CHECK-OUT-Modells mit der Datenbank treten jedoch aufgrund der Natur der Übertragungen Probleme abhängig von den Übertragungen in dem jeweiligen Technikgebiet auf. So kann beispielsweise ein Editiervorgang eine längere Zeit benötigen und der Vorgang kann interaktive Operationen einschließen. Es ist daher erforderlich, diese Probleme zu lösen.By connecting the CHECK-IN / CHECK-OUT model to the database however, problems occur depending on the nature of the transfers Transfers in the respective technical area. For example, a Editing process take a long time and the process can be interactive Include operations. It is therefore necessary to solve these problems.

Fig. 1 zeigt den beispielhaften Aufbau eines herkömmlichen Übertragungsmodells und Fig. 2 zeigt den beispielhaften Aufbau eines herkömmlichen CHECK-IN/CHECK- OUT-Modells. Fig. 1 shows the exemplary structure of a conventional transmission model, and Fig. 2 shows the exemplary structure of a conventional CHECK-IN / CHECK-OUT model.

In Fig. 1 sind ein Client A, ein Client B und ein Server S jeweils auf unabhängige Workstations aufgeteilt. Mit dem Server S ist eine öffentliche Datenbank DB verbunden, die von den Clients A und B gemeinsam benutzt wird. So können beispielsweise auf der öffentlichen Datenbank DB Kontodaten einer Bank gespeichert sein und der Server S befindet sich auf derjenigen Workstation, die die Kontodaten verarbeitet. Zusätzlich befinden sich die Clients A und B jeweils auf denjenigen Workstations (oder Terminals), die über eine on-line Verbindung an den Server S angeschlossen sind. Wird von dem Client A oder B eine Anfrage ausgegeben, um auf den Inhalt der öffentlichen Datenbank DB zuzugreifen oder diesen zu erneuern, so führt der Server S aufgrund der zuvor beschriebenen Anordnung den Übertragungsvorgang abhängig von dieser Anfrage aus. In diesem Fall sind die Daten der durchgeführten Übertragung kurz und die Übertragung kann sehr schnell durchgeführt werden. Zusätzlich werden die Übertragungen in der Reihenfolge ihres Auftretens ausgeführt.In Fig. 1, a client A, a client B and a server S are each divided into independent workstations. A public database DB, which is shared by clients A and B, is connected to server S. For example, bank account data can be stored in the public database DB and the server S is located on the workstation that processes the account data. In addition, clients A and B are each located on those workstations (or terminals) that are connected to server S via an online connection. If a request is issued by client A or B in order to access or renew the content of the public database DB, the server S executes the transmission process depending on this request based on the arrangement described above. In this case, the data of the transfer performed is short and the transfer can be carried out very quickly. In addition, the transfers are performed in the order in which they occur.

Demzufolge wird der Client B bereits die erneuerten Daten empfangen, wenn der Client B auf den Inhalt der öffentlichen Datenbank DB zugreifen will, nachdem der Inhalt der öffentlichen Datenbank DB durch den von dem anderen Client A angeforderten Übertragungsvorgang erneuert worden ist. Die Daten werden in Übereinstimmung mit den im Laufe der Zeit auftretenden Übertragungen erzeugt und die Datenkonsistenz ist gewährleistet.As a result, the client B will already receive the renewed data when the client B wants to access the content of the public database DB after the content of the public database DB by that requested by the other client A. Transmission process has been renewed. The data is in accordance with the transmissions that occur over time and the data consistency is guaranteed.

Würde das in Fig. 1 gezeigte Übertragungsmodell auf ein Entwicklungsgebiet, wie beispielsweise CAD oder CASE, angewendet werden, so wird die öffentliche Datenbank DB abhängig von der Art der Entwicklungsarbeit für eine längere Zeit im Rahmen von mehreren Stunden oder mehreren Tagen ausschließlich von einem Client benutzt, wobei die öffentliche Datenbank DB dialogartig genutzt wird. Aufgrund der ausschließlichen Nutzung der Daten für eine längere Zeit verschlechtert sich die Leistungsfähigkeit des Übertragungsmodells und die Arbeit wird für lange Zeit unterbrochen, wenn eine Blockade auftritt. Daher wurde das CHECK-IN/CHECK-OUT-Modell vorgeschlagen, um diese Probleme des Übertragungsmodells zu beseitigen.If the transmission model shown in FIG. 1 were to be applied to a development area, such as CAD or CASE, depending on the type of development work, the public database DB is used by a client for a longer period of time in the course of several hours or several days , the public database DB being used like a dialog. Due to the exclusive use of the data for a long time, the performance of the transmission model deteriorates and the work is interrupted for a long time if a blockage occurs. Therefore, the CHECK-IN / CHECK-OUT model has been proposed to eliminate these problems of the transmission model.

Ähnlich zu dem in Fig. 1 dargestellten Übertragungsmodell ist bei dem in Fig. 2 gezeigten CHECK-IN/CHECK-OUT-Modell die öffentliche Datenbank DB mit dem Server S verbunden. Allerdings sind in Fig. 2 private Datenbanken PDB1 und PDB2 jeweils für die Clients A und B vorhanden. Der Benutzer des Clients A besitzt das Zugriffsrecht auf die private Datenbank PDB1 und der Benutzer des Clients B besitzt das Zugriffsrecht auf die private Datenbank PDB2. Das Zugriffsrecht auf die öffentliche Datenbank DB besitzen die Benutzer aller Clients, d. h. in diesem Fall die Benutzer der Clients A und B. Somit wird die öffentliche Datenbank DB gemeinsam durch die Clients A und B benutzt.Similar to the transmission model shown in FIG. 1, in the CHECK-IN / CHECK-OUT model shown in FIG. 2, the public database DB is connected to the server S. However, private databases PDB1 and PDB2 are available for clients A and B in FIG. 2, respectively. The user of client A has the right of access to the private database PDB1 and the user of client B has the right of access to the private database PDB2. The users of all clients have the right of access to the public database DB, ie in this case the users of clients A and B. Thus, the public database DB is used jointly by clients A and B.

Falls der Benutzer des Clients A die öffentliche Datenbank DB für einen Editiervorgang o. ä. benutzt, fordert der Client A eine Kopie der notwendigen Daten von dem Server S an. Infolge dieser Anfrage liest der Server S die notwendigen Daten aus der öffentlichen Datenbank DB aus und sendet die entsprechenden Daten an den Client. Der Client A kopiert die empfangenen notwendigen Daten in die private Datenbank PDB1. Der zuvor beschriebene Prozeß wird "check-out" genannt. Danach kann der Client A unter Zuhilfenahme der privaten Datenbank PDB1, die die notwendigen kopierten Daten gespeichert hält, die Daten dialogartig für längere Zeit bearbeiten, z. B. editieren. Auf ähnliche Weise kann auch der Client B über den Server S mittels des check-out- Vorganges die notwendigen Daten aus der öffentlichen Datenbank DB in die private Datenbank PDB2 kopieren und mit diesen Daten für lange Zeit unter Zuhilfenahme der privaten Datenbank PDB2 arbeiten.If the user of client A uses the public database DB for an editing operation or the like, the client A requests a copy of the necessary data from the server S. at. As a result of this request, the server S reads the necessary data from the public database DB and sends the corresponding data to the client. Of the Client A copies the received necessary data into the private database PDB1. The process described above is called "check-out". Then the client can A with the help of the private database PDB1, which copied the necessary ones Keeps data stored, edit the data like a dialog for a long time, e.g. B. edit. Similarly, the client B can also use the server S by means of the check-out Process the necessary data from the public database DB into the private one Copy database PDB2 and use this data for a long time with the help of private database PDB2 work.

Andererseits werden die Daten der privaten Datenbank PDB1 über den Server S an die öffentliche Datenbank DB zurückgegeben, wenn der Client A die Verarbeitungsvorgänge bezüglich des Inhalts der privaten Datenbank PDB1 beendet hat, beispielsweise das Editieren, so daß der Inhalt der öffentlichen Datenbank DB erneuert wird. Dieser Vorgang, wenn Daten von der privaten Datenbank PDB1 des Clients A erhalten werden und diese Daten an die öffentliche Datenbank DB über den Server S zurückgegeben werden, wird "check-in" genannt.On the other hand, the data of the private database PDB1 via the server S to the public database DB returned if the client A the Processing of the content of the private database PDB1 has ended, for example editing so that the content of the public database DB is renewed becomes. This process when data from the private database PDB1 of client A are obtained and this data to the public database DB via the server S returned is called "check-in".

Um in dem in Fig. 1 gezeigten Übertragungsmodell Datenkonsistenz der Datenbank zu gewährleisten, wird ein zweistufiger Sperrmechanismus angewendet. Die Konsistenz der Daten (oder deren Weiterbehandlungsmöglichkeit) wird beibehalten, wenn gewährleistet ist, daß der Inhalt der Datenbank in derselben Reihenfolge verändert wird, in der die Übertragungen erzeugt werden. Die Konsistenz der Daten kann nicht beibehalten werden, wenn eine doppelte Erneuerung stattfindet, bei der ein Übertragungsvorgang in Bezug auf Daten D erzeugt wird, während im Laufe einer anderen Übertragung ein Erneuerungsprozeß der Daten D zu Daten D′ ausgeführt wird. Bei einem Fehler kommt es zum Verlust der Erneuerung. Die Konsistenz der Daten kann jedoch beibehalten werden, wenn gewährleistet ist, daß der Inhalt der Datenbank in der Reihenfolge verändert wird, in der die Übertragungen erzeugt werden. In order to ensure data consistency of the database in the transmission model shown in FIG. 1, a two-stage locking mechanism is used. The consistency of the data (or its further processing option) is maintained if it is ensured that the content of the database is changed in the same order in which the transfers are generated. The consistency of the data cannot be maintained if a double renewal takes place, in which a transfer process with respect to data D is generated, while in the course of another transfer a renewal process of the data D to data D 'is carried out. In the event of an error, the renewal is lost. However, the consistency of the data can be maintained if it is ensured that the content of the database is changed in the order in which the transfers are made.

Dem herkömmlichen zweistufigen Sperrmechanismus entsprechend sperrt die eine Phase innerhalb einer Übertragung die Daten und die andere Phase gibt diese Daten wieder frei, um die anderen Übertragungen abzublocken.According to the conventional two-stage locking mechanism, one locks Phase within a transmission is the data and the other phase gives this data again to block the other transmissions.

Andererseits dauert es bei dem in Fig. 2 gezeigten CHECK-IN/CHECK-OUT-Modell lange Zeit, bis die Daten nach einem check-out-Vorgang verarbeitet werden können, beispielsweise editiert werden können, und es ist praktisch unmöglich, die Konsistenz der Daten wie bei dem in Fig. 1 gezeigten Übertragungsmodell aufrechtzuerhalten. Aus diesem Grund werden Übertragungen und deren Reihenfolge von einem System, das das CHECK-IN/CHECK-OUT-Modell anwendet, nicht verwaltet. Anstatt die Konsistenz der Daten basierend auf den Übertragungen beizubehalten, erlaubt ein derartiges System, daß die check-out-Phase und die check-in-Phase nicht unabhängig voneinander sind und auch, daß diejenigen Daten, die von einem Benutzer in einem Erneuerungsmodus eingecheckt werden, gleichzeitig von einem anderen Benutzer in einem Zugriffsmodus ausgecheckt werden.On the other hand, in the CHECK-IN / CHECK-OUT model shown in FIG. 2, it takes a long time until the data can be processed, for example edited, after a check-out process, and it is practically impossible to ensure the consistency of the data Maintain data as in the transmission model shown in FIG. 1. For this reason, transfers and their order are not managed by a system that uses the CHECK-IN / CHECK-OUT model. Instead of maintaining the consistency of the data based on the transfers, such a system allows the check-out phase and the check-in phase to be independent of each other and also allows the data that is checked in by a user in a renewal mode are checked out simultaneously by another user in an access mode.

Es wurde gefordert, einem Prozeß, der nur eine kurze Zeit benötigt, und einen langandauernden Prozeß auf dem gleichen System zu realisieren, in dem das in Fig. 2 gezeigte CHECK-IN/CHECK-OUT-Modell mit der bestehenden Datenbank des in Fig. 1 gezeigten Übertragungsmodells verbunden wird. Eine derartige Realisierung würde beispielsweise bei einem CAD-System ermöglichen, daß auf die Datenbank zur Beschaffung der Daten der notwendigen Teile zugegriffen werden kann, wenn mit den von der Datenbank ausgecheckten Entwicklungsdaten eine dialogartige Entwicklung gemacht wird.It was required to implement a process that only takes a short time and a long-running process on the same system, in which the CHECK-IN / CHECK-OUT model shown in FIG. 2 with the existing database of the one shown in FIG. 1 transmission model shown is connected. In the case of a CAD system, for example, such an implementation would make it possible to access the database for obtaining the data of the necessary parts if a dialog-like development is made with the development data checked out from the database.

Wird das CHECK-IN/CHECK-OUT-Modell mit der bestehenden Datenbank zusammengefügt, so beeinflussen die beiden zweistufigen Sperrmechanismen der bestehenden Datenbank und des CHECK-IN/CHECK-OUT-Modells sich gegenseitig, was zum Verlust der Datenkonsistenz der bestehenden Datenbank führen kann.Will the CHECK-IN / CHECK-OUT model with the existing database put together, influence the two two-stage locking mechanisms of existing database and the CHECK-IN / CHECK-OUT model mutually, which can lead to loss of data consistency in the existing database.

Nachfolgend wird unter Bezugnahme auf Fig. 3 beispielhaft beschrieben, wie es zum Verlust der Datenkonsistenz kommen kann, wenn die Übertragung des zweistufigen Sperrmechanismus und das CHECK-IN/CHECK-OUT-Modell einfach miteinander kombiniert werden. In the following, with reference to FIG. 3, it is described by way of example how data loss can occur if the transmission of the two-stage locking mechanism and the CHECK-IN / CHECK-OUT model are simply combined with one another.

In Fig. 3 bezeichnet LT eine Übertragung des Clients A im CHECK-IN/CHECK- OUT-Modell und ST eine Übertragung des Clients B mit dem zweistufigen Sperrmechanismus. Als Anfangswerte sind in der Datenbank ein Kontostand X und ein Kontostand Y gespeichert, die jeweils 100 Dollar betragen. In diesem Beispiel transferiert die Übertragung LT 20 Dollar von dem Kontostand X zu den Kontostand Y und die Übertragung ST berechnet die Summe der beiden Kontostände.In FIG. 3, LT denotes a transfer of client A in the CHECK-IN / CHECK-OUT model and ST denotes a transfer of client B with the two-stage locking mechanism. An account balance X and an account balance Y, which are each $ 100, are stored in the database as initial values. In this example, the transfer LT transfers $ 20 from the account balance X to the account balance Y and the transfer ST calculates the sum of the two account balances.

Zunächst checkt die Übertragung LT den Kontostand X aus und führt die Subtraktion von 20 Dollar aus (so daß X 80 Dollar beträgt). Anschließend checkt die Übertragung LT den Kontostand Y aus und führt die Addition von 20 Dollar durch (so daß Y 120 Dollar beträgt). Danach werden die Kontostände X und Y eingecheckt.First, the transfer LT checks out the balance X and carries out the subtraction from $ 20 (so X is $ 80). Then check the transmission LT accounts balance Y and adds $ 20 (so Y 120 Dollar is). Account balances X and Y are then checked in.

Wenn die Übertragung ST den Zugriffsvorgang (oder Lesevorgang) der Kontostände X und Y und den Additionsvorgang der Kontostände ausführt, wird andererseits das Auslesen des Kontostandes X, das der Eröffnungsübertragung folgt, möglich, nachdem die Übertragung LT den Kontostand X ausgecheckt hat. Dann wird als Kontostand X 100 Dollar ausgelesen.If the transfer ST the access process (or read process) of the account balances X and Y and the account balance adding process, on the other hand, will Account balance X, which follows the opening transfer, can be read out after the transfer LT has checked out the balance X. Then the balance X 100 dollars read out.

Anschließend wird das Lesen des Kontostandes Y ermöglicht, wenn die Übertragung LT den Kontostand Y eingecheckt hat, und in diesem Fall wird 120 Dollar als Kontostand Y ausgelesen, da, wie zuvor beschrieben, bereits 20 Dollar zu den Kontostand Y durch die Übertragung LT hinzuaddiert worden sind. Als Ergebnis wird "X+Y=220 Dollar" ausgegeben, wenn ein "Drucke X+Y"-Befehl ausgeführt wird. Dieses Resultat ist falsch, da die richtige Summe der Kontostände X und Y 200 Dollar wäre.Then the reading of the account balance Y is enabled when the transfer LT has checked in the Y balance, and in this case it will be $ 120 as Account balance Y read out, since, as described above, already $ 20 to the Account balance Y have been added by the transfer LT. As a result "X + Y = $ 220" issued when executing a "Print X + Y" command. This result is incorrect because the correct balance of X and Y balances is $ 200 would.

Aufgrund dieses Systems, das Datenfehler erzeugt, werden schwerwiegende Probleme hervorgerufen. Es ist denkbar, dieses Problem zu lösen, indem das CHECK- IN/CHECK-OUT-Modell und den Sperrmechanismus der bestehenden Datenbank angepaßt wird. Wenn jedoch Entwicklungsarbeit durch mehrere Entwicklungsingenieure durchgeführt wird, die sich des CHECK-IN/CHECK-OUT-Modells bedienen, treten oft Fälle auf, bei denen ein Entwicklungsingenieur auf einen Teil eines Planes zugreifen will, der von einem anderen Entwicklungsingenieur gerade verändert wird. Da zusätzlich eine derartige Veränderungsarbeit o. ä. gewöhnlich eine lange Zeit benötigen, ist dies sehr problematisch, da in der Praxis nicht derartig lange gewartet werden kann, bis die Veränderung beendet worden ist. Because of this system that generates data errors, serious problems arise evoked. It is conceivable to solve this problem by using the CHECK IN / CHECK-OUT model and the locking mechanism of the existing database is adjusted. However, if development work by multiple development engineers performed using the CHECK-IN / CHECK-OUT model often occur Cases where a development engineer accesses part of a plan wants to be changed by another development engineer. There in addition, such change work or the like usually takes a long time, this is very problematic because in practice you cannot wait that long, until the change is finished.  

Es ist daher Aufgabe der Erfindung, einen neuen und nützlichen Sperrmechanismus bereitzustellen, mit dessen Hilfe die zuvor beschriebenen Probleme beseitigt werden.It is therefore an object of the invention to provide a new and useful locking mechanism to provide, with the help of which the problems described above are eliminated.

Desweiteren soll ein Sperrmechanismus für ein CHECK-IN/CHECK-OUT-Modell bereitgestellt werden, der basierend auf Übertragungen einer bestehenden Datenbank Datenkonsistenz gewährleistet und eine Verringerung der Leistungsfähigkeit verhindert, die durch eine ausschließliche Nutzung der Daten für eine lange Zeit in dem CHECK- IN/CHECK-OUT-Modell verursacht wird.Furthermore, a locking mechanism for a CHECK-IN / CHECK-OUT model be provided based on transfers from an existing database Ensures data consistency and prevents a reduction in performance, through the exclusive use of the data for a long time in the CHECK IN / CHECK-OUT model is caused.

Schließlich soll ein Sperrmechanismus für ein CHECK-IN/CHECK-OUT-Modell geschaffen werden, bei dem mehrere Clients auf die öffentliche Datenbank eines Servers zugreifen, umfassend eine in dem Server vorhandene Verwaltungsvorrichtung für lange Übertragungen zur Verwaltung von Übertragungen, die von dem Client angefordert werden, mit einem CHECK-OUT-Vorgang, der Daten von der öffentlichen Datenbank kopiert, und einen CHECK-OUT-Vorgang, der Daten zurück in die öffentliche Datenbank schreibt, eine in dem Server vorhandene Verwaltungsvorrichtung für kurze Übertragungen zur Verwaltung von Übertragungen, die keine Daten von der öffentlichen Datenbank kopieren, und eine Übertragungsliste zur Speicherung von Informationen, die den Inhalt der Übertragungen angeben, die sowohl durch die Verwaltungsvorrichtung für lange Übertragungen als auch durch die Verwaltungsvorrichtung für kurze Übertragungen durchgeführt worden sind, wobei die Verwaltungsvorrichtung für lange Übertragungen eine Einrichtung beinhaltet, die das Einchecken willkürlicher Daten aufschiebt, bis eine andere Übertragung, die auf die willkürlichen Daten zugreift, beendet ist, wenn die andere Übertragung von der Übertragungsliste zwischen dem CHECK-OUT-Vorgang und dem CHECK-OUT- Vorgang erfaßt wird. Es ist gemäß dem erfindungsgemäßem Sperrmechanismus möglich, die Datenkonsistenz des herkömmlichen Übertragungsmodells beizubehalten und das CHECK-IN/CHECK-OUT-Modell dem herkömmlichen Datenbanksystem hinzuzufügen. Zusätzlich ist es für den Benutzer nicht mehr erforderlich, die Datenkonsistenz während des Betriebes aufrechtzuerhalten, wenn der erfindungsgemäße Sperrmechanismus mit dem Sperrmechanismus des CHECK-IN/CHECK-OUT-Modells hinzugefügt wird. D.h. es ist möglich, das herkömmliche Übertragungsmodell und das CHECK-IN/CHECK-OUT-Modell zu integrieren, wobei die Vorteile beider Systeme ohne Einschränkungen miteinander kombiniert werden.Finally, a locking mechanism for a CHECK-IN / CHECK-OUT model be created, in which several clients on the public database one Access server, comprising a management device present in the server for long transfers to manage transfers by the client can be requested with a CHECK-OUT process, the data from the public Copied database, and a CHECK-OUT process, the data back into the writes public database, one existing in the server Short transmission management device for managing transmission, that do not copy data from the public database, and a transfer list to store information indicating the content of the transmissions that both by the long transmission manager and by the Short transmission management device has been performed, the Long transmission management device includes a device that Checking in arbitrary data is delayed until another transfer is made to the accesses arbitrary data, is ended when the other transfer from the Transfer list between the CHECK-OUT process and the CHECK-OUT Operation is recorded. It is according to the locking mechanism according to the invention possible to maintain the data consistency of the conventional transmission model and the CHECK-IN / CHECK-OUT model the conventional database system to add. In addition, it is no longer required for the user Maintain data consistency during operation when the invention Locking mechanism with the locking mechanism of the CHECK-IN / CHECK-OUT model will be added. I.e. it is possible to use the conventional transmission model and that Integrate CHECK-IN / CHECK-OUT model, taking advantage of both systems can be combined with each other without restrictions.

Desweiteren soll ein Server mit einem Sperrmechanismus für ein CHECK-IN/CHECK- OUT-Modell bereitgestellt werden, bei dem einer oder mehrere Clients auf eine öffentliche mit dem Server verbundene Datenbank zugreifen, umfassend eine Verwaltungsvorrichtung für lange Übertragungen zur Verwaltung von Übertragungen, die von dem Client angefordert werden, mit einem CHECK-OUT-Vorgang, der Daten von der öffentlichen Datenbank kopiert, und einem CHECK-OUT-Vorgang, der Daten zurück in die öffentlich Datenbank schreibt, eine Verwaltungsvorrichtung für kurze Übertragungen zur Verwaltung von Übertragungen, die keine Daten von der öffentlichen Datenbank kopieren und eine Übertragungsliste zur Speicherung von Informationen, die den Inhalt der Übertragungen angeben, die durch die Verwaltungsvorrichtung für lange Übertragungen und die Verwaltungsvorrichtung von kurzen Übertragungen durchgeführt worden sind, wobei die Verwaltungsvorrichtung für lange Übertragungen eine Einrichtung beinhaltet, die das Einchecken von willkürlichen Daten aufschiebt, bis eine andere Übertragung, die auf die willkürlichen Daten zugreift, beendet ist, wenn die andere Übertragung von der Übertragungsliste zwischen dem CHECK-OUT-Vorgang und dem CHECK-OUT-Vorgang erfaßt ist. Mit dem erfindungsgemäßen Server ist es möglich, die Datenkonsistenz des herkömmlichen Übertragungsmodells aufrechtzuerhalten und das CHECK-IN/CHECK-OUT-Modell kann in das herkömmliche Datenbanksystem eingefügt werden. Zusätzlich ist es für die Benutzer nicht mehr erforderlich, die Datenkonsistenz während des Betriebes aufrechtzuerhalten, wenn der erfindungsgemäße Sperrmechanismus mit dem Sperrmechanismus des CHECK-IN/CHECK-OUT-Modells kombiniert wird. D.h. es ist möglich, das herkömmliche Übertragungsmodell und das CHECK-IN/CHECK-OUT- Modell miteinander zu kombinieren, wobei die jeweiligen Vorteile ohne Einschränkungen bestehen bleiben.Furthermore, a server with a locking mechanism for a CHECK-IN / CHECK- OUT model are provided, in which one or more clients on one  access public database connected to the server, including a Long transmission management device for managing transmission, which are requested by the client with a CHECK-OUT process, the data copied from the public database, and a CHECK-OUT process, the data writes back to the public database, an administrative device for short Transfers to manage transfers that have no data from the Copy public database and a transfer list for storing Information specifying the content of the transfers made by the Long transmission manager and the manager of short transfers have been made, the management device for long transmissions involves a facility that checks in arbitrary Postponing data until another transfer accessing the arbitrary data is finished when the other transfer from the transfer list between the CHECK-OUT process and the CHECK-OUT process is recorded. With the server according to the invention it is possible to maintain the data consistency of the conventional Transmission model and the CHECK-IN / CHECK-OUT model can be inserted into the conventional database system. In addition, it is for the Users no longer need data consistency during operation maintain when the locking mechanism according to the invention with the Lock mechanism of the CHECK-IN / CHECK-OUT model is combined. I.e. it is possible, the conventional transmission model and the CHECK-IN / CHECK-OUT- Model to combine with each other, the respective advantages without Restrictions remain.

Die Erfindung wird nachfolgend unter Bezugnahme auf die Zeichnung näher beschrieben. Es zeigt:The invention is described in more detail below with reference to the drawing described. It shows:

Fig. 1 ein systematisches Blockdiagramm eines beispielhaften Aufbaus eines herkömmlichen Übertragungsmodells, Fig. 1 is a system block diagram of an exemplary structure of a conventional transmission model,

Fig. 2 ein systematisches Blockdiagramm eines beispielhaften Aufbaus eines herkömmlichen CHECK-IN/CHECK-OUT-Modells, Fig. 2 is a system block diagram of an exemplary structure of a conventional check-in / check-out model,

Fig. 3 ein Diagramm zur Erläuterung eines besonderen Beispiels des Verlustes der Datenkonsistenz, wenn eine Übertragung mit einem zweistufigen Sperrmechanismus und das CHECK-IN/CHECK-OUT-Modell einfach miteinander kombiniert werden, Fig. 3 is a diagram for explaining a specific example of the loss of data consistency, when a transmission with a two-stage locking mechanism and the check-in / check-out model are simply combined with each other,

Fig. 4. ein systematisches Blockdiagramm zur Erläuterung der Funktionsweise der Erfindung, Fig. 4. is a system block diagram for explaining the operation of the invention,

Fig. 5 ein systematisches Blockdiagramm eines Ausführungsbeispieles eines erfindungsgemäßen Sperrmechanismus, Fig. 5 is a system block diagram of one embodiment of a locking mechanism according to the invention,

Fig. 6 ein Flußdiagramm zur Erläuterung der Funktionsweise des Sperrmechanismus- Ausführungsbeispieles, Fig. 6 is a flowchart for explaining the operation of the Sperrmechanismus- embodiment,

Fig. 7 ein Flußdiagramm zur Erläuterung der Funktionsweise eines in Fig. 5 dargestellten Übertragungs-Verwaltungsteils und Fig. 7 is a flowchart for explaining the operation of a transmission management part shown in Fig. 5 and

Fig. 8 ein Diagramm zur Erläuterung der durch die Erfindung gewährten Datenkonsistenz. Fig. 8 is a diagram for explaining the data consistency afforded by the invention.

Nachfolgend wird zunächst unter Bezugnahme auf Fig. 4 die Funktionsweise der Erfindung beschrieben.The mode of operation of the invention is first described below with reference to FIG. 4.

Fig. 4 zeigt einen Server 1, der eine öffentliche Datenbank 8 mit einem Client 9 verbindet. Der Server 1 umfaßt ein Verwaltungsteil 2 für lange Übertragungen und ein Verwaltungsteil 5 für kurze Übertragungen sowie eine Übertragungsliste 7. Das Verwaltungsteil 2 für lange Übertragungen beinhaltet ein CHECK-OUT-Teil 3 und ein CHECK-IN-Teil 4. Das Verwaltungsteil 5 für kurze Übertragungen beinhaltet ein Zugriffsteil 6. Die Übertragungsliste 7 beinhaltet eine Erneuerungsliste 7a und eine Zugriffsliste 7b. Fig. 4 shows a server 1, which connects a public database 8 with a client 9. The server 1 comprises an administration part 2 for long transmissions and an administration part 5 for short transmissions as well as a transmission list 7 . The management part 2 for long transmissions includes a CHECK-OUT part 3 and a CHECK-IN part 4 . The management part 5 for short transmissions includes an access part 6 . The transmission list 7 contains a renewal list 7 a and an access list 7 b.

Erfindungsgemäß wird ein Zeitintervall zwischen dem CHECK-OUT-Vorgang und dem CHECK-OUT-Vorgang als eine lange Übertragung betrachtet und die Übertragung selbst umfaßt zwei Phasen. Eine erste Übertragungsphase umfaßt lediglich das Auschecken der Daten und eine zweite Übertragungsphase umfaßt lediglich das Einchecken der Daten. Der Server 1 ermittelt die Phase für jede lange Übertragung. Werden die Daten nach einem CHECK-OUT-Vorgang wieder eingecheckt, so überwacht der Server 1 die CHECK-IN-Zeit abhängig davon, ob andere Übertragungen auf dieselben Daten zugreifen, um die Datenkonsistenz aufrechtzuerhalten.According to the invention, a time interval between the CHECK-OUT process and the CHECK-OUT process is considered a long transmission and the transmission itself comprises two phases. A first transfer phase only involves checking out the data and a second transfer phase only includes checking in the data. The server 1 determines the phase for each long transmission. If the data is checked in again after a CHECK-OUT process, the server 1 monitors the CHECK-IN time depending on whether other transmissions are accessing the same data in order to maintain data consistency.

Wenn der Client 9 im Erneuerungsmodus das Ausschecken von Daten anfordert, bestimmt das Verwaltungsteil 2 für lange Übertragungen des Servers 1, daß dieser CHECK-OUT-Vorgang in zwei Phasen aufgeteilt wird. Zusätzlich eröffnet das Verwaltungsteil 2 für lange Übertragungen die lange Übertragung und startet das CHECK-OUT-Teil 3, wenn die Anfrage gültig ist. Das CHECK-OUT-Teil 3 dient zum Auschecken der angeforderten Daten. D.h. das CHECK-OUT-Teil 3 liest die angeforderten Daten von der öffentlichen Datenbank 8 aus und kopiert die ausgelesenen und angeforderten Daten zu dem Client 9. Zu diesem Zeitpunkt wird eine Übertragungsidentifikation (ID oder ID-Nummer) der langen Übertragung, eine Daten- Identifikation und ein Übertragungsstatus in der Erneuerungsliste 7a der Übertragungsliste 7 gespeichert. Der Übertragungsstatus gibt den Status der Übertragung an, z. B. "noch aktiv", "beendet" o. ä.If the client 9 in the regeneration mode requests the Ausschecken of data, the management section 2 determines for long transmissions of the server 1 that the check-out process is divided into two phases. In addition, the administration part 2 opens the long transmission for long transmissions and starts the CHECK-OUT part 3 if the request is valid. The CHECK-OUT part 3 is used to check out the requested data. That is, the CHECK-OUT part 3 reads out the requested data from the public database 8 and copies the read and requested data to the client 9 . At this time, a transmission identification (ID or ID number) of the long transmission, a data identification and a transmission status are stored in the renewal list 7 a of the transmission list 7 . The transfer status indicates the status of the transfer, e.g. B. "still active", "ended" or similar

Das Verwaltungsteil 5 für kurze Übertragungen verwaltet die Daten gemäß dem herkömmlichen zweistufigen Sperrmechanismus, d. h. das Sperren der Daten wird seitens der öffentlichen Datenbank 8 verwaltet. Wird eine kurze Übertragung von einem von dem Client 9 abweichenden Client erzeugt, um auf die Daten zugreifen zu können, so bestimmt das Verwaltungsteil 5 für kurze Übertragungen, ob die Daten den in der Erneuerungsliste 7a ausgecheckten Daten entsprechen. Entsprechen die Daten den in der Erneuerungsliste 7a gespeicherten ausgecheckten Daten, so werden die Übertragungsidentifikation, die Datenidentifikation und der Übertragungsstatus in der Zugriffsliste 7b der Übertragungsliste 7 gespeichert. Ist diese kurze Übertragung beendet, so wird die gespeicherte Information aus der Zugriffsliste 7b gelöscht.The management part 5 for short transmissions manages the data in accordance with the conventional two-stage locking mechanism, ie the locking of the data is managed by the public database 8 . If a short transmission is generated by a client different from the client 9 in order to be able to access the data, the administration part 5 determines for short transmissions whether the data corresponds to the data checked out in the renewal list 7 a. If the data corresponds to the checked-out data stored in the renewal list 7 a, the transmission identification, the data identification and the transmission status are stored in the access list 7 b of the transmission list 7 . If this short transmission is completed, the stored information from the access list 7 is deleted b.

Ein Zugriff auf die Daten ist möglich, wenn der Client das Auschecken der Daten im Zugriffsmodus anfordert und auch wenn das Verwaltungsteil 2 für lange Übertragungen die Übertragung öffnet, so daß die Übertragung durch das CHECK-OUT-Teil 3 ausgeführt wird. In jedem dieser beiden Fälle wird die Bestimmung der Erneuerungsliste 7a und die Speicherung in der Zugriffsliste 7b analog zu dem zuvor beschriebenen ausgeführt.Access to the data is possible if the client requests the data to be checked out in access mode and also if the administration part 2 opens the transmission for long transmissions, so that the transmission is carried out by the CHECK-OUT part 3 . In each of these two cases, the determination of the renewal list 7 a and the storage in the access list 7 b is carried out analogously to that described above.

Beendet der Client 9 die Datenbearbeitung und fordert das Einchecken der Daten an, so bestimmt das CHECK-IN-Teil 4 des Verwaltungsteiles 2 für lange Übertragungen im Server 1, ob der CHECK-OUT-Vorgang in zwei Phasen analog zu dem CHECK-OUT- Vorgang aufgeteilt wird. Ist die Anfrage gültig, so bestimmt das Verwaltungsteil 2 für lange Übertragungen, ob weitere offene Übertragungen existieren, die auf dieselben Daten zugreifen, indem die Zugriffsliste 7b ausgewertet wird. Existiert eine weitere offene Übertragung, so tritt ein Wartezustand auf, bis diese andere offene Übertragung beendet ist. Falls keine weitere offene Übertragung existiert, wird andererseits der CHECK-OUT-Vorgang ausgeführt, um die öffentliche Datenbank 8 zu erneuern. Während des Wartens auf diesen CHECK-OUT-Vorgang wird der Zugriff von anderen Übertragungen auf die ausgecheckten Daten vorübergehend unterbunden.If the client 9 ends the data processing and requests the check-in of the data, the CHECK-IN part 4 of the administration part 2 for long transmissions in the server 1 determines whether the CHECK-OUT process in two phases is analogous to the CHECK-OUT Operation is split. If the request is valid, the administration part 2 determines for long transmissions whether there are further open transmissions that access the same data by evaluating the access list 7 b. If there is another open transmission, a wait state occurs until this other open transmission has ended. If there is no further open transfer, on the other hand, the CHECK-OUT process is carried out to renew the public database 8 . While waiting for this CHECK-OUT process, the access of other transmissions to the checked-out data is temporarily blocked.

Wird das Auschecken des CHECK-IN/CHECK-OUT-Modells und der Zugriff der Übertragung bezüglich identischer Daten gleichzeitig erzeugt, so wird entsprechend der Zugriff der Übertragung zwischen dem CHECK-OUT-Vorgang und dem CHECK- OUT-Vorgang zwangsweise vor dem CHECK-OUT-Vorgang ausgeführt, um die Datenkonsistenz zwischen den Übertragungen zu gewährleisten.Checking out the CHECK-IN / CHECK-OUT model and accessing the Transmission of identical data is generated at the same time Access of the transfer between the CHECK-OUT process and the CHECK OUT operation is forcibly performed before the CHECK OUT operation To ensure data consistency between transfers.

Nachfolgend wird ein Ausführungsbeispiel des erfindungsgemäßen Sperrmechanismuss für ein CHECK-IN/CHECK-OUT-Modell beschrieben. Fig. 5 zeigt den Aufbau dieses Sperrmechanismus-Ausführungsbeispieles und Fig. 6 zeigt ein Flußdiagramm zur Verdeutlichung der Funktionsweise dieses Ausführungsbeispieles.An exemplary embodiment of the locking mechanism according to the invention for a CHECK-IN / CHECK-OUT model is described below. Fig. 5 shows the structure of this locking mechanism embodiment and Fig. 6 shows a flowchart to illustrate the operation of this embodiment.

In Fig. 5 ist der clientseitige Teil über der gestrichelten Linie und der serverseitige Teil unter der gestrichelten Linie dargestellt. Auch wenn tatsächlich mehrere Clients mit dem Server verbunden sind, wird in Fig. 5 der Einfachheit halber nur ein Client dargestellt.In FIG. 5, the client-side portion is shown above the dotted line and the server-side portion below the dashed line. Even if several clients are actually connected to the server, only one client is shown in FIG. 5 for the sake of simplicity.

Der clientseitige Teil umfaßt eine private Datenbank 20 für die ausschließliche Benutzung durch den Benutzer, einen Speicher 21 zum Puffern von Daten, die in die private Datenbank 20 eingegeben werden und von dieser ausgegeben werden, ein Verwaltungsteil 22 zur Verwaltung der privaten Datenbank, ein Verwaltungsteil 23 zur Verwaltung von kurzen Übertragungen und ein Kommunikationsteil 24 um die Kommunikation zwischen der Client-Seite und der Server-Seite zu steuern.The client-side part comprises a private database 20 for the exclusive use by the user, a memory 21 for buffering data which is input into and output from the private database 20 , an administration part 22 for administration of the private database, an administration part 23 to manage short transmissions and a communication part 24 to control the communication between the client side and the server side.

Die Server-Seite umfaßt ein Kommunikationsteil 25 zur Steuerung der Kommunikation zwischen der Server-Seite und der Client-Seite, ein Übertragungs-Verwaltungsteil 26 zur Verwaltung verschiedenartiger, von der Client-Seite angeforderter Übertragungen, ein Verwaltungsteil 27 zur Verwaltung der öffentlichen Datenbank, einen Speicher 28 zum Puffern von Daten und eine öffentliche Datenbank 29. Das Übertragungs- Verwaltungsteil 26 umfaßt ein Verwaltungsteil 26a für kurze Übertragungen wie z. B. Zugriff und Erneuerung, die nicht einen Kopiervorgang der Daten beinhalten, und ein Verwaltungsteil 26b für lange Übertragungen, das zur Verwaltung von CHECK- IN/CHECK-OUT-artigen Übertragungen dient, die einen Kopiervorgang der Daten beinhalten, sowie eine Übertragungsliste 26c, die eine Erneuerungsliste und eine Zugriffsliste beinhaltet.The server side comprises a communication part 25 for controlling the communication between the server side and the client side, a transmission management part 26 for managing various types of transmissions requested by the client side, an administration part 27 for managing the public database Data storage 28 and a public database 29 . The transmission management part 26 includes a management part 26 a for short transfers such. B. access and renewal, which do not include a copying process of the data, and a management part 26 b for long transmissions, which is used to manage CHECK-IN / CHECK-OUT-type transmissions, which include a copying process of the data, and a transmission list 26th c, which includes a renewal list and an access list.

Im Falle einer langen Übertragung nutzt die Client-Seite ausschließlich die Daten, nach dem die Daten aus der öffentlichen Datenbank 29 der Server-Seite ausgecheckt und in die private Datenbank 20 der Client-Seite kopiert worden sind. Daher ist es nicht erforderlich, die lange Übertragung auf der Client-Seite zu verwalten. Im Falle eines Multiprozesses werden jedoch mehrere Kurzübertragungen durch den gleichen Benutzer erzeugt und Vorgänge wie z. B. Zugriff auf die öffentliche Datenbank 29 der Server- Seite werden ausgeführt. Aus diesem Grund ist das Verwaltungsteil 23 für kurze Übertragungen auf der Client-Seite vorhanden.In the case of a long transmission, the client side uses only the data after the data has been checked out from the public database 29 on the server side and copied into the private database 20 on the client side. Therefore, it is not necessary to manage the long transmission on the client side. In the case of a multiprocess, however, several short transfers are generated by the same user and processes such as e.g. B. Access to the public database 29 on the server side is carried out. For this reason, the management part 23 for short transmissions is provided on the client side.

Die Server-Seite kommuniziert mit mehreren Clients über das Kommunikationsteil 25 und das Übertragungs-Verwaltungsteil 26 identifiziert die angeforderte Übertragung. Die kurze Übertragung, wie beispielsweise der Zugriff, der keinen CHECK- IN/CHECK-OUT-Vorgang besitzt, wird durch das Verwaltungsteil 26a für kurze Übertragungen durchgeführt. Andererseits wird die lange Übertragung, wie z. B. der Erneuerungsmodus oder der Zugriffsmodus des CHECK-IN/CHECK-OUT-Modells, durch das Verwaltungsteil 26b für lange Übertragungen durchgeführt.The server side communicates with a plurality of clients via the communication part 25 and the transmission management part 26 identifies the requested transmission. The short transfer, such as the access that has no CHECK-IN / CHECK-OUT process, is carried out by the management part 26 a for short transfers. On the other hand, the long transmission such. B. the renewal mode or the access mode of the CHECK-IN / CHECK-OUT model, carried out by the management part 26 b for long transmissions.

Während des Betriebes des Verwaltungsteils 26a für kurze Übertragungen und des Verwaltungsteils 26b für lange Übertragungen wird jeweils eine Registrierung in der Übertragungsliste 26c bzw. ein Zugriff auf diese durchgeführt. Die Übertragungsidentifikation, die Datenidentifikation und der Übertragungsstatus werden in der Erneuerungsliste und in der Zugriffsliste der Übertragungsliste 26c gespeichert. Der Übertragungsstatus gibt an, ob die Übertragung weiterhin verarbeitet wird oder die Übertragung bereits beendet ist. Für den Zustand, bei dem die Verarbeitung der Übertragung bereits beendet ist, ist ein Bestätigungsflag vorhanden, um einen Bestätigungszustand anzuzeigen, bei dem die Übertragung ausgeführt wird und die Übertragung auf die Daten zurückgeführt wird, oder es wird ein Abbruchzustand begonnen, bei dem die Übertragung nicht ausgeführt wird und der dem Zustand vor der Übertragung entspricht.During the operation of the administrative part 26 a for short transmissions and the administrative part 26 b for long transmissions, a registration in the transmission list 26 c or an access to it is carried out. The transmission identification, the data identification and the transmission status are stored in the renewal list and in the access list of the transmission list 26 c. The transmission status indicates whether the transmission is still being processed or whether the transmission has already ended. For the state in which the processing of the transfer is already completed, an acknowledgment flag is provided to indicate an acknowledgment state in which the transfer is being carried out and the transfer is due to the data, or an aborting state in which the transfer is started is not executed and corresponds to the state before the transfer.

Das Verwaltungsteil 27 zur Verwaltung der öffentlichen Datenbank greift auf die öffentliche Datenbank 29 abhängig von einem Befehl des Übertragungs- Verwaltungsteils 26 zu und verwaltet über den Speicher 28 das Lesen bzw. Schreiben der angeforderten Daten aus der öffentlichen Datenbank bzw. in die öffentliche Datenbank.The management part 27 for managing the public database accesses the public database 29 in response to a command from the transmission management part 26 and manages the reading or writing of the requested data from the public database or into the public database via the memory 28 .

Fig. 6 ist ein Flußdiagramm zur Erläuterung der Funktionsweise des in Fig. 5 dargestellten Ausführungsbeispieles. FIG. 6 is a flow chart for explaining the operation of the embodiment shown in FIG. 5.

In Fig. 6 wird in einem Schritt S1 zunächst die notwendigen Daten auf Anfrage der Client-Seite ausgecheckt und die notwendigen Daten von der öffentlichen Datenbank 29 in die private Datenbank 20 kopiert. Im Falle des Auscheckens im Erneuerungsmodus wird eine Erneuerungssperre bezüglich der Daten in der öffentlichen Datenbank 29 veranlaßt. Andererseits wird im Falle eines Auscheckens im Zugriffsmodus eines Zugriffsperre veranlaßt. Somit umfaßt dieser Schritt S1 die Kommunikationsteile 24 und 25 und das Verwaltungsteil 26b für lange Übertragungen.In FIG. 6, the necessary data is first checked out in a step S1 on request from the client side and the necessary data is copied from the public database 29 into the private database 20 . In the case of check-out in the renewal mode, a renewal lock on the data in the public database 29 is initiated. On the other hand, in the case of a check out in the access mode, an access lock is initiated. Thus, this step S1 includes the communication parts 24 and 25 and the management part 26 b for long transmissions.

Anschließend wird in einem Schritt S2 die Identifikation (ID) des Clients, die ID- Nummer der ausgecheckten Daten und das Bestätigungsflag, das den Übertragungszustand angibt, in die Übertragungsliste 26c des Übertragungs- Verwaltungsteils 26 auf der Server-Seite geschrieben. Somit umfaßt der Schritt S2 das Verwaltungsteil 26b für lange Übertragungen und die Übertragungsliste 26c.Then, in a step S2, the identification (ID) of the client, the ID number of the checked-out data and the confirmation flag, which indicates the transmission status, are written into the transmission list 26 c of the transmission management part 26 on the server side. Thus, step S2 includes the management part 26 b for long transmissions and the transmission list 26 c.

Anschließend ist es, selbst wenn ein Zugriff eines anderen Clients auf die ausgecheckten Daten erfolgt und selbst wenn eine Erneuerungssperre bezüglich dieser Daten bereits vollzogen ist, in Schritt S3 möglich, auf die Daten der öffentlichen Datenbank 29 zuzugreifen, die sich im Zustand vor der Erneuerung befindet. Zusätzlich wird dieser Zugriff in der Übertragungsliste 26c auf der Server-Seite registriert, um die Datenkonsistenz aufrechtzuerhalten, wenn dieser Zugriff gemacht wird. Somit umfaßt dieser Schritt S3 das Verwaltungsteil 26a für kurze Übertragungen und die Übertragungsliste 26c.Subsequently, even if another client accesses the checked-out data and even if a renewal lock on this data has already been implemented, it is possible in step S3 to access the data in the public database 29 which is in the state before the renewal . In addition, this access is registered in the transmission list 26 c on the server side in order to maintain data consistency when this access is made. Thus, this step S3 includes the management part 26 a for short transmissions and the transmission list 26 c.

In Schritt S4 wird ein Flag gesetzt, das den Endzustand in dem Bestätigungsflag der Übertragungsliste 26c bezeichnet, wenn der Bestätigungszustand oder der Abbruchzustand der in der Übertragungsliste 26c registrierten Übertragung auftritt. Wie zuvor beschrieben, bezeichnet der Bestätigungszustand den Zustand, bei dem die Übertragung beendet worden ist und auf die Daten zurückgeführt wird, und der Abbruchzustand bezeichnet den Zustand, bei dem die Übertragung fehlgeschlagen ist und entspricht dem Zustand vor der Übertragung. Somit umfaßt dieser Schritt S4 das Verwaltungsteil 26a für kurze Übertragungen und die Übertragungsliste 26c. In step S4, a flag is set which indicates the final state in the confirmation flag of the transmission list 26 c when the confirmation state or the abort state of the transmission registered in the transmission list 26 c occurs. As described above, the confirmation state denotes the state in which the transmission has ended and the data is being traced back, and the abort state denotes the state in which the transmission failed and corresponds to the state before the transmission. Thus, this step S4 includes the management part 26 a for short transmissions and the transmission list 26 c.

Ist der Editiervorgang in der privaten Datenbank 20 bezüglich der auf der Client-Seite ausgecheckten Daten abgeschlossen, so wird in Schritt S5 von der Client-Seite ein CHECK-OUT-Vorgang der Daten von der Server-Seite angefordert. Somit umfaßt dieser Schritt S5 die Kommunikationsteile 24 und 25.If the editing process in the private database 20 is completed with respect to the data checked out on the client side, a CHECK-OUT process of the data is requested from the server side in step S5. Thus, this step S5 includes the communication parts 24 and 25 .

In diesem Fall wird in einem Schritt S6 die Übertragungsliste 26c in Bezug auf die Daten, die dieselbe Datenidentifikation wie die auszucheckenden Daten (d. h., in der dieselben Daten gespeichert sind) überprüft. Somit umfaßt dieser Schritt S6 das Verwaltungsteil 26b für lange Übertragungen.In this case, in a step S6, the transmission list 26 c is checked with regard to the data which have the same data identification as the data to be checked out (ie in which the same data are stored). Thus, this step S6 includes the management part 26 b for long transmissions.

In einem Schritt S7 wird festgestellt, ob eine Übertragung existiert, die sich auf dieselben Daten bezieht und die ein Bestätigungsflag aufweist, das sich nicht im Endzustand befindet. Somit umfaßt dieser Schritt S7 das Übertragungs-Verwaltungsteil 26.In a step S7, it is determined whether there is a transmission that relates to the same data and that has a confirmation flag that is not in the final state. Thus, this step S7 includes the transmission management part 26 .

Existiert eine derartige Übertragung und ist das Resultat in Schritt S7 JA, so wird in einem Schritt S8 ein Zugriff auf die ausgecheckten Daten unterbunden und der Wartezustand begonnen, um das Ende des CHECK-OUT-Vorganges abzuwarten. Dieser Wartezustand wird aufgehoben, falls die Übertragung den Endzustand erreicht. D.h., daß der Prozeß vom Schritt S7 wieder in Schritt S8 zurückkehrt. Somit umfaßt dieser Schritt S8 das Übertragungs-Verwaltungsteil 26.If such a transfer exists and if the result in step S7 is YES, access to the checked-out data is prevented in step S8 and the waiting state is started in order to wait for the end of the CHECK-OUT process. This waiting state is canceled if the transmission reaches the final state. That is, the process returns from step S7 to step S8. Thus, this step S8 includes the transmission management part 26 .

Ist jedoch das Ergebnis der Entscheidung in Schritt S7 NEIN, so wird in einem Schritt S9 die CHECK-IN-Anfrage auf der Server-Seite ausgeführt und der Prozeß wird beendet, nachdem die angeforderten Daten in die öffentliche Datenbank 29 eingecheckt worden sind. Somit umfaßt dieser Schritt 29 das Übertragungs-Verwaltungsteil 26.If, however, the result of the decision in step S7 is NO, the CHECK-IN request is carried out on the server side in step S9 and the process is ended after the requested data have been checked into the public database 29 . Thus, this step 29 includes the transmission management part 26 .

Im Wartezustand des CHECK-OUT-Vorganges können nachfolgende Datenzugriffe durch andere Übertragungen auftreten und es ist möglich, daß der CHECK-OUT- Vorgang nicht ausgeführt werden kann. Daher wird der Schritt S8 ausgeführt, um mit einer derartigen Situation fertigzuwerden. D.h., daß in dem Wartezustand des CHECK- OUT-Vorganges der Zugriff auf die durch den CHECK-OUT-Vorgang erhaltenen Daten, die die Voraussetzung für den CHECK-OUT-Vorgang der anderen Übertragungen sind, unterbunden wird. In diesem Fall ist die Wartezeit der durch die zuvor beschriebene Kurzübertragung verursachte Blockade vernachlässigbar, wenn die für den CHECK-OUT-Vorgang und den CHECK-OUT-Vorgang benötigte lange Zeit mit der für die Übertragung, z. B. bei einem gewöhnlichen Zugriff, benötigte kurze Zeit verglichen wird. Die lange Übertragung, die die im Erneuerungsmodus ausgecheckten Daten ausschließlich nutzt, kann warten, bis die lange Übertragung, die dieselben Daten im Zugriffsmodus auscheckt, beendet ist, und es ist daher möglich, daß die Leistungsfähigkeit verringert wird. Es ist jedoch möglich, die Wartezeit durch Ausnutzen der Nachrichtenfunktion zu verringern. Zusätzlich wird die kurze Übertragung nicht auf die lange Übertragung warten, da die kurze Übertragung durch den grundlegenden zweistufigen Sperrmechanismus verwaltet wird.In the waiting state of the CHECK-OUT process, subsequent data accesses can occur occur through other transmissions and it is possible that the CHECK-OUT- Operation cannot be performed. Therefore, step S8 is executed to proceed with to cope with such a situation. This means that in the waiting state of the CHECK OUT process the access to those obtained by the CHECK-OUT process Data that is the prerequisite for the CHECK-OUT process of others Transfers are prevented. In this case, the waiting time is that of the Block transmission previously described caused blockage negligible if the took a long time for the CHECK-OUT process and the CHECK-OUT process  with the for transmission, e.g. B. with a normal access, took a short time is compared. The long transmission that those checked out in renewal mode Data used only can wait until the long transfer, the same data checked out in access mode, and it is therefore possible that the Performance is reduced. However, it is possible to wait through Reduce exploitation of the messaging function. In addition, the short Do not wait for the long transmission because the short transmission is through the basic two-stage locking mechanism is managed.

Fig. 7 ist ein Zeitdiagramm zur Erläuterung der Funktionsweise des Übertragungs- Verwaltungsteils 26, insbesondere zur Erläuterung der Funktionsweise des Verwaltungsteils 26b zur Verwaltung langer Übertragungen in diesem Falle. Fig. 7 is a timing chart for explaining the operation of the transmission management part 26 , particularly for explaining the operation of the management part 26 b for managing long transmissions in this case.

In Fig. 7 wird in einem Schritt T1 die erste CHECK-IN- oder CHECK-OUT-Anfrage empfangen und in einem Schritt T2 in einem Flag ein Wert zur Identifikation des CHECK-OUT-Vorganges bzw. CHECK-OUT-Vorganges gesetzt. In einem Schritt T3 wird entschieden, ob die CHECK-IN-Anfrage oder die CHECK-OUT-Anfrage des Benutzers erfaßt ist. Falls in Schritt T3 die CHECK-IN-Anfrage erfaßt worden ist, wird in einem Schritt T4 entschieden, ob das Flag den CHECK-OUT-Vorgang bezeichnet und, falls das Resultat in Schritt T4 NEIN ist, wird in einem Schritt T6 eine Fehlermeldung ausgegeben und die Anfrage wird nicht ausgeführt. Andererseits wird zu Schritt T3 zurückgekehrt, falls das Resultat im Schritt T4 JA ist. Falls im Schritt T3 die CHECK-OUT-Anfrage erfaßt worden ist, wird in einem Schritt T5 entschieden, ob das Flag den CHECK-OUT-Vorgang bezeichnet. Falls die Entscheidung in Schritt T5 NEIN ist, wird in einem Schritt T7 das Flag auf einen Wert gesetzt, das den CHECK- OUT-Vorgang bezeichnet. Ist in dem Schritt T5 das Ergebnis JA oder ist Schritt T7 abgeschlossen, so wird zu Schritt T3 zurückgekehrt.In Fig. 7, the first check-in or check-out request is received, and set a value for identifying the check-out process or check-out process in a step T2 in a flag in a step T1. In a step T3 it is decided whether the CHECK-IN request or the CHECK-OUT request of the user has been recorded. If the CHECK-IN request has been detected in step T3, a decision is made in step T4 as to whether the flag denotes the CHECK-OUT process and, if the result in step T4 is NO, an error message is output in step T6 and the request is not executed. On the other hand, it returns to step T3 if the result in step T4 is YES. If the CHECK-OUT request has been detected in step T3, a decision is made in step T5 as to whether the flag denotes the CHECK-OUT process. If the decision in step T5 is NO, the flag is set in step T7 to a value indicating the CHECK-OUT process. If the result in step T5 is YES or step T7 is completed, step T3 is returned to.

Fig. 8 ist ein Diagramm zur Erläuterung der durch die Erfindung gewährleisteten Datenkonsistenz. Das in Fig. 8 gezeigte spezielle Beispiel entspricht dem in Fig. 3 gezeigten Beispiel, wo die Datenkonsistenz nicht gewährleistet war, so daß die vorteilhafte Wirkung der Erfindung leichter gewürdigt werden kann. Fig. 8 is a diagram for explaining the guaranteed by the invention, data consistency. The specific example shown in FIG. 8 corresponds to the example shown in FIG. 3, where data consistency was not guaranteed, so that the advantageous effect of the invention can be more easily appreciated.

In Fig. 8 bezeichnet LT eine lange Übertragung des CHECK-IN/CHECK-OUT- Modells durch den Client A und ST bezeichnet eine lange Zugriffs-Übertragung durch den Client B. Die Anfangswerte der beiden Kontostände X und Y sind auf der Server- Seite in der öffentlichen Datenbank 29 gespeichert und betragen beide 100 Dollar. In diesem Fall transferiert die lange Übertragung LT 20 Dollar von dem Konto X zu dem Konto Y und die lange Übertragung ST berechnet die Summe der beiden Kontostände X und Y.In FIG. 8, LT denotes a long transfer of the CHECK-IN / CHECK-OUT model by client A and ST denotes a long transfer of access by client B. The initial values of the two account balances X and Y are on the server side stored in the public database 29 and both are $ 100. In this case, the long transfer LT transfers $ 20 from account X to account Y and the long transfer ST calculates the sum of the two account balances X and Y.

Zunächst wird durch die lange Übertragung LT der Kontostand X ausgecheckt, 20 Dollar von dem Kontostand X subtrahiert, der Kontostand Y ausgecheckt, 20 Dollar zu den Kontostand Y hinzuaddiert und der Kontostand X eingecheckt. Die lange Übertragung ST öffnet den Übertragungsvorgang und greift auf den Kontostand X zu (d. h. liest diesen). Somit sind bis zu diesem Punkt die Vorgänge identisch mit denen des in Fig. 3 gezeigten herkömmlichen Falles.First, the long transfer LT checks out the X balance, subtracts $ 20 from the X balance, checks out the Y balance, adds $ 20 to the Y balance, and checks in the X balance. The long transmission ST opens the transmission process and accesses the account balance X (ie reads it). Thus, the processes up to this point are identical to those of the conventional case shown in FIG. 3.

Wenn jedoch der Kontostand Y in Fig. 8 eingecheckt wird, wird anhand der Übertragungsliste 26c festgestellt, daß die andere Übertragung (ST), die die gleichen Daten (Kontostand X) wie die Übertragung (LT) verarbeitet, noch nicht beendet ist, und es wird das Einchecken des Kontostandes Y aufgeschoben. Anschließend wird das Einchecken des Kontostandes Y durch die lange Übertragung LT vollzogen, wenn die lange Übertragung ST den Kontostand Y ausgelesen, die Summe der Kontostände X und Y ausgedruckt und die Übertragung geschlossen hat. Demzufolge beträgt das Ergebnis von "X+Y" in der langen Übertragung LT "200 Dollar", was von dem Ergebnis des in Fig. 3 dargestellten gewöhnlichen Falles abweicht. Somit ist es, im Gegensatz zu dem in Fig. 3 dargestellten herkömmlichen Fall, im Fig. 8 gezeigten Fall der Erfindung möglich, Datenkonsistenz zu erreichen.However, if the account balance Y is checked in in FIG. 8, it is determined from the transfer list 26 c that the other transfer (ST) which processes the same data (account balance X) as the transfer (LT) has not yet ended, and check-in of account balance Y is postponed. The check in of the account balance Y is then carried out by the long transfer LT, when the long transfer ST has read the account balance Y, has printed out the sum of the account balances X and Y and has closed the transfer. As a result, the result of "X + Y" in the long transmission LT is "$ 200", which is different from the result of the ordinary case shown in FIG. 3. Thus, in contrast to the conventional case shown in FIG. 3, it is possible to achieve data consistency in FIG. 8 of the invention.

Fig. 8 zeigt also ein spezielles Beispiel, bei dem der CHECK-OUT-Vorgang vorübergehend aufgeschoben wird, bis die damit verbundene Übertragung abgeschlossen ist, so daß das CHECK-IN/CHECK-OUT-Modell und die Übertragungen ineinander integriert werden können, wobei Datenkonsistenz gewährleistet ist. Fig. 8 thus shows a specific example in which the CHECK-OUT process is temporarily postponed until the associated transfer is completed, so that the CHECK-IN / CHECK-OUT model and the transfers can be integrated with each other Data consistency is guaranteed.

Claims (7)

1. Sperrmechanismus für ein CHECK-IN/CHECK-OUT-Modell, bei dem ein oder mehrere Clients (9) auf eine öffentliche Datenbank (8) eines Servers (1) zugreifen, gekennzeichnet durch
eine in dem Server (1) vorhandene Verwaltungsvorrichtung (2) für lange Übertragungen, zur Verwaltung von Übertragungen, die von dem Client (9) angefordert worden sind und einen CHECK-OUT-Vorgang, der Daten von der öffentlichen Datenbank (8) kopiert, und einen CHECK-OUT-Vorgang, der Daten zurück in die öffentliche Datenbank (8) schreibt, umfaßt,
eine in dem Server (1) vorhandene Verwaltungsvorrichtung (5) für kurze Übertragungen, zur Verwaltung von Übertragungen, die keine Daten von der öffentlichen Datenbank (8) kopieren, und
eine Übertragungsliste (7) zum Speichern von Informationen, die den Inhalt der durch die Verwaltungsvorrichtungen (2, 5) für lange bzw. kurze Übertragungen ausgeführten Übertragungen bezeichnen,
wobei die Verwaltungsvorrichtung (2) für lange Übertragungen eine Einrichtung beinhaltet, die dazu dient, das Einchecken von beliebigen Daten solange aufzuschieben, bis eine andere Übertragung, die auf die beliebigen Daten zugreift, beendet ist, wenn die andere Übertragung durch die Übertragungsliste (7) zwischen dem CHECK-OUT- Vorgang und dem CHECK-OUT-Vorgang erfaßt ist.
1. Locking mechanism for a CHECK-IN / CHECK-OUT model, in which one or more clients ( 9 ) access a public database ( 8 ) of a server ( 1 ), characterized by
a management device ( 2 ) in the server ( 1 ) for long transmissions, for managing transmissions requested by the client ( 9 ) and a CHECK-OUT process that copies data from the public database ( 8 ), and a CHECK-OUT process which writes data back to the public database ( 8 ),
a management device ( 5 ) in the server ( 1 ) for short transmissions, for managing transmissions that do not copy data from the public database ( 8 ), and
a transmission list ( 7 ) for storing information indicating the content of the transmissions carried out by the management devices ( 2 , 5 ) for long and short transmissions,
the long transfer management device ( 2 ) including means for deferring the check-in of any data until another transfer accessing the arbitrary data is complete when the other transfer through the transfer list ( 7 ) between the CHECK-OUT process and the CHECK-OUT process.
2. Sperrmechanismus nach Anspruch 1, dadurch gekennzeichnet, daß die Verwaltungsvorrichtung (2) für lange Übertragungen eine Einrichtung beinhaltet, die, wenn eine Übertragung, die auf die beliebigen Daten zugreift und zwischen dem CHECK-OUT-Vorgang und dem CHECK-OUT-Vorgang erzeugt worden ist, auf das Einchecken der beliebigen Daten wartet, die Ausführung anderer Übertragungen, die auf die beliebigen Daten zugreifen, so lange unterbindet, bis die Übertragung beendet ist.2. Locking mechanism according to claim 1, characterized in that the management device ( 2 ) for long transmissions includes a device, if a transmission that accesses the arbitrary data and between the CHECK-OUT process and the CHECK-OUT process generated, waiting for the check-in of the arbitrary data, the execution of other transfers which access the arbitrary data is stopped until the transfer is finished. 3. Sperrmechanismus nach Anspruch 1 oder 2, dadurch gekennzeichnet,
daß die Übertragungsliste (7) mindestens eine Identifizierungsnummer jeder Übertragung, eine Identifizierungsnummer jeder Daten und eine Statusinformation bezüglich jeder Übertragung entsprechend einem Erneuerungsmodus und einem Zugriffsmodus jeder Übertragung beinhaltet und
daß die Verwaltungsvorrichtung (2) für lange Übertragungen und die Verwaltungsvorrichtung (5) für kurze Übertragungen abhängig von einer Übertragung, die ausgeführt wird, auf die Übertragungsliste (7) zugreifen, auf die Übertragung bezogene Informationen in einem Teil der Übertragungsliste entsprechend dem Modus abspeichern und die in Zusammenhang mit der Übertragung gespeicherten Informationen aus der Übertragungsliste (7) wieder löschen, wenn die Übertragung beendet ist.
3. Locking mechanism according to claim 1 or 2, characterized in
that the transmission list ( 7 ) includes at least one identification number of each transmission, one identification number of each data and status information regarding each transmission according to a renewal mode and an access mode of each transmission, and
that the long transmission management device ( 2 ) and the short transmission management device ( 5 ) access the transmission list ( 7 ) depending on a transmission being carried out, store information related to the transmission in a part of the transmission list according to the mode, and delete the information stored in connection with the transmission from the transmission list ( 7 ) when the transmission has ended.
4. Sperrmechanismus nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Übertragungsliste (7) in dem Server (1) vorhanden ist.4. Locking mechanism according to one of claims 1 to 3, characterized in that the transmission list ( 7 ) in the server ( 1 ) is present. 5. Server mit einem Sperrmechanismus für ein CHECK-IN/CHECK-OUT-Modell, wobei ein Client (9) oder mehrere Clients auf eine mit dem Server (1) verbundene öffentliche Datenbank (8) zugreifen, gekennzeichnet durch
eine Verwaltungsvorrichtung (2) für lange Übertragungen, zur Verwaltung von durch den Client (9) angeforderten Übertragungen, die einen CHECK-OUT-Vorgang, der Daten von der öffentlichen Datenbank (8) kopiert, und einen CHECK-OUT-Vorgang, der Daten zurück in die öffentliche Datenbank (8) schreibt, beinhalten,
eine Verwaltungsvorrichtung (5) für kurze Übertragungen, zur Verwaltung von Übertragungen, die keine Daten von der öffentlichen Datenbank (8) kopieren, und eine Übertragungsliste (7) zum Speichern von Informationen, die den Inhalt der durch die Verwaltungsvorrichtungen (2, 5) für lange bzw. kurze Übertragungen ausgeführten Übertragungen bezeichnen,
wobei die Verwaltungsvorrichtung (2) für lange Übertragungen eine Einrichtung beinhaltet, die dazu dient, das Einchecken beliebiger Daten solange aufzuschieben, bis eine andere Übertragung, die auf die beliebigen Daten zugreift, beendet ist, wenn die andere Übertragung durch die Übertragungsliste (7) zwischen dem CHECK-OUT- Vorgang und dem CHECK-OUT-Vorgang erfaßt ist.
5. Server with a locking mechanism for a CHECK-IN / CHECK-OUT model, wherein a client ( 9 ) or more clients access a public database ( 8 ) connected to the server ( 1 ), characterized by
a long transmission manager ( 2 ) for managing transmissions requested by the client ( 9 ), copying a CHECK-OUT process copying data from the public database ( 8 ) and a CHECK-OUT process the data back in the public database ( 8 ),
a management device ( 5 ) for short transmissions, for managing transmissions that do not copy data from the public database ( 8 ), and a transmission list ( 7 ) for storing information relating to the content of those managed by the management devices ( 2 , 5 ) for denote long or short transmissions,
the long transfer management device ( 2 ) including means for deferring the check-in of any data until another transfer accessing the arbitrary data is complete when the other transfer through the transfer list ( 7 ) between the CHECK-OUT process and the CHECK-OUT process.
6. Server nach Anspruch 5, dadurch gekennzeichnet, daß die Verwaltungsvorrichtung (2) für lange Übertragungen eine Einrichtung beinhaltet, die dazu dient, die Ausführung anderer Übertragungen, die auf die beliebigen Daten zugreifen, solange zu unterbinden, bis eine Übertragung beendet ist, die auf die beliebigen Daten zugreift und zwischen dem CHECK-OUT-Vorgang und dem CHECK-OUT-Vorgang erzeugt worden ist und auf das Einchecken der beliebigen Daten wartet.6. Server according to claim 5, characterized in that the management device ( 2 ) for long transmissions includes a device which serves to prevent the execution of other transmissions that access the arbitrary data until a transmission is complete accesses any data and has been generated between the CHECK-OUT process and the CHECK-OUT process and waits for the arbitrary data to be checked in. 7. Server nach Anspruch 5 oder 6, dadurch gekennzeichnet,
daß die Übertragungsliste (7) mindestens eine Identifizierungsnummer jeder Übertragung, eine Identifizierungsnummer jeder Daten und eine mit jeder Übertragung verbundene Statusinformation entsprechend einem Erneuerungsmodus und einem Zugriffsmodus jeder Übertragung beinhaltet, und
daß die Verwaltungsvorrichtung (2) für lange Übertragungen und die Verwaltungsvorrichtung (5) für kurze Übertragungen abhängig von einer Übertragung, die ausgeführt wird, auf die Übertragungsliste (7) zugreifen, mit der Übertragung verbundene Informationen in einem Teil der Übertragungsliste (7) entsprechend dem Modus abspeichern, wenn die Übertragung ausgeführt wird, und die mit der Übertragung verbundenen Informationen aus der Übertragungsliste (7) wieder löschen, wenn die Übertragung beendet ist.
7. Server according to claim 5 or 6, characterized in
that the transmission list ( 7 ) includes at least one identification number of each transmission, one identification number of each data and status information associated with each transmission according to a renewal mode and an access mode of each transmission, and
that the long-transmission management device ( 2 ) and the short-transmission management device ( 5 ) access the transmission list ( 7 ) depending on a transmission being executed, information related to the transmission in a part of the transmission list ( 7 ) according to the Save the mode when the transfer is carried out and delete the information associated with the transfer from the transfer list ( 7 ) when the transfer is complete.
DE4420451A 1993-07-08 1994-06-10 Lock mechanism for a CHECK-IN / CHECK-OUT model Expired - Fee Related DE4420451C2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16899993A JP3512439B2 (en) 1993-07-08 1993-07-08 Locking method in check-in / check-out model

Publications (2)

Publication Number Publication Date
DE4420451A1 true DE4420451A1 (en) 1995-01-19
DE4420451C2 DE4420451C2 (en) 1998-05-28

Family

ID=15878478

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4420451A Expired - Fee Related DE4420451C2 (en) 1993-07-08 1994-06-10 Lock mechanism for a CHECK-IN / CHECK-OUT model

Country Status (4)

Country Link
US (1) US5809503A (en)
JP (1) JP3512439B2 (en)
KR (1) KR0126245B1 (en)
DE (1) DE4420451C2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999018522A1 (en) * 1997-10-07 1999-04-15 Sap Ag Knowledge provider with logical hyperlinks

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930794A (en) * 1996-10-18 1999-07-27 Sagent Technologies, Inc. Database repository with deferred transactions
US6047284A (en) 1997-05-14 2000-04-04 Portal Software, Inc. Method and apparatus for object oriented storage and retrieval of data from a relational database
US6092055A (en) 1997-05-14 2000-07-18 Portal Software, Inc. Method and apparatus for providing a clean accounting close for a real time billing system
US6012059A (en) * 1997-08-21 2000-01-04 Dataxel Corporation Method and apparatus for replicated transaction consistency
US6678702B1 (en) * 1997-11-27 2004-01-13 Siemens Aktiengesellschaft Method for updating data records in communication systems
US6941360B1 (en) * 1999-02-25 2005-09-06 Oracle International Corporation Determining and registering participants in a distributed transaction in response to commencing participation in said distributed transaction
JP3844933B2 (en) 2000-02-16 2006-11-15 株式会社日立製作所 Database server processing method
GB2366051B (en) * 2000-05-02 2005-01-05 Ibm Method, system and program product for private data access or use based on related public data
KR20030035122A (en) * 2001-10-30 2003-05-09 포디홈네트 Method for controlling a concurrency by using multi-version technique in embedded database management system for internet information appliances
US8099393B2 (en) 2002-03-22 2012-01-17 Oracle International Corporation Transaction in memory object store
CN1307811C (en) * 2003-06-20 2007-03-28 英业达股份有限公司 Infrared data synchronous module and method thereof
US7243088B2 (en) * 2003-08-06 2007-07-10 Oracle International Corporation Database management system with efficient version control
US7269588B1 (en) 2003-09-24 2007-09-11 Oracle International Corporation Neighborhood locking technique for increasing concurrency among transactions
US7555481B1 (en) 2003-10-28 2009-06-30 Oracle Corporation Method and apparatus for increasing transaction concurrency by early release of locks in groups
JP4526058B2 (en) * 2003-11-07 2010-08-18 シヤチハタ株式会社 Electronic seal system
US7739244B2 (en) * 2004-10-14 2010-06-15 Oracle International Corporation Operating logging for online recovery in shared memory information systems
US7984248B2 (en) * 2004-12-29 2011-07-19 Intel Corporation Transaction based shared data operations in a multiprocessor environment
US8223935B2 (en) 2005-04-30 2012-07-17 Oracle International Corporation Revenue management systems and methods
AU2006263656A1 (en) 2005-06-28 2007-01-04 Oracle International Corporation Revenue management system and method
CA2616194C (en) 2005-07-28 2015-02-17 Oracle International Corporation Revenue management system and method
US8223777B2 (en) 2005-11-15 2012-07-17 Oracle International Corporation Gateway for achieving low latency and high availability in a real time event processing system
US7747591B2 (en) * 2006-03-24 2010-06-29 Oracle International Corp. Web feature service (WFS) locking support based on light-weight locking model in the database
US7640242B2 (en) * 2006-03-24 2009-12-29 Oracle International Corp. Light weight locking model in the database for supporting long duration transactions
US8751532B2 (en) * 2006-05-11 2014-06-10 International Business Machines Corporation Nomadic data collection and management method including pessimistic locking of data
US8219971B2 (en) * 2007-08-20 2012-07-10 International Business Machines Corporation System and method for source code sectional locking for improved management
FR2931272B1 (en) * 2008-05-13 2012-04-20 Thales Sa METHOD FOR IMPORT EXPORT OF DATA FROM A DATABASE

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4216871A1 (en) * 1991-05-21 1993-01-21 Digital Equipment Corp EXECUTIVE RULES TO ENSURE SERIAL PRODUCTION OF DISTRIBUTED TRANSACTIONS

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4224664A (en) * 1976-05-07 1980-09-23 Honeywell Information Systems Inc. Apparatus for detecting when the activity of one process in relation to a common piece of information interferes with any other process in a multiprogramming/multiprocessing computer system
US4249241A (en) * 1978-10-23 1981-02-03 International Business Machines Corporation Object access serialization apparatus for a data processing system
JPS6394343A (en) * 1986-10-09 1988-04-25 Nec Corp Filing control system
JPS63113644A (en) * 1986-10-30 1988-05-18 Fujitsu Ltd Exclusive control system for data base
US5175852A (en) * 1987-02-13 1992-12-29 International Business Machines Corporation Distributed file access structure lock
JPS63247849A (en) * 1987-04-02 1988-10-14 Nec Corp Transaction processing system
US4881166A (en) * 1987-07-24 1989-11-14 Amoco Corporation Method for consistent multidatabase transaction processing
US5193188A (en) * 1989-01-05 1993-03-09 International Business Machines Corporation Centralized and distributed wait depth limited concurrency control methods and apparatus
JP2740238B2 (en) * 1989-02-27 1998-04-15 日本電気株式会社 File exclusive control unit
JPH03113674A (en) * 1989-09-28 1991-05-15 Nec Corp Design data control system
JPH03118645A (en) * 1989-10-02 1991-05-21 Nippon Telegr & Teleph Corp <Ntt> Exclusive control method for data base
JPH03123946A (en) * 1989-10-07 1991-05-27 Nippon Telegr & Teleph Corp <Ntt> Exclusive control method for data base
US5247672A (en) * 1990-02-15 1993-09-21 International Business Machines Corporation Transaction processing system and method with reduced locking
US5261089A (en) * 1990-05-16 1993-11-09 International Business Machines Corporation Optimization of commit procedures by utilizing a two-phase commit procedure only when necessary
US5280612A (en) * 1991-11-26 1994-01-18 International Business Machines Corporation Multiple version database concurrency control system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4216871A1 (en) * 1991-05-21 1993-01-21 Digital Equipment Corp EXECUTIVE RULES TO ENSURE SERIAL PRODUCTION OF DISTRIBUTED TRANSACTIONS

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GB-Z: Information Systems (1991), Vol. 16, Nr. 1, S. 13-20 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999018522A1 (en) * 1997-10-07 1999-04-15 Sap Ag Knowledge provider with logical hyperlinks
AU764026B2 (en) * 1997-10-07 2003-08-07 Sap Aktiengesellschaft Knowledge provider with logical hyperlinks

Also Published As

Publication number Publication date
KR0126245B1 (en) 1998-04-03
US5809503A (en) 1998-09-15
JP3512439B2 (en) 2004-03-29
KR950004014A (en) 1995-02-17
DE4420451C2 (en) 1998-05-28
JPH0728679A (en) 1995-01-31

Similar Documents

Publication Publication Date Title
DE4420451C2 (en) Lock mechanism for a CHECK-IN / CHECK-OUT model
DE19708021C1 (en) Method for regulating access by computers to data on a central computer
DE4216871C2 (en) Execution rules to ensure the serializability of distributed transactions
DE102008015662B4 (en) Elimination of data
DE10112941B4 (en) System and method for parallel reading of primary and secondary backups to restore multiple shared database files
DE4497149B4 (en) Computer-based method for data replication in peer-to-peer environment
DE3611223C2 (en)
EP1237098B1 (en) Integrated federated database system
DE3908459C2 (en) Network server
DE69839145T2 (en) Compensatory resource manager
DE60306674T2 (en) METHOD AND SYSTEMS FOR REGULATING ACCESS TO A DATA OBJECT BY LOCKING
DE3439302C2 (en)
EP0635792B1 (en) Coordination method for parallel access to resource configurations by a plurality of processors
DE4033336A1 (en) METHOD FOR GENERATING A FAILURE MESSAGE AND MECHANISM FOR FAILURE MESSAGE
DE10003015A1 (en) Computer-aided method for automatically transforming a process model
DE10040987B4 (en) Method and apparatus for matching updates of redundant data in relational databases
EP1758051A1 (en) System, method and computer program for workflow based on data processing
DE10038289A1 (en) Core banking activities integration system, involves preparing application-development environment business platforms for integration into the various processes usually required in separate core banking systems
DE10209803B4 (en) Method, data storage system and computer program for providing file system access to a disk array
DE112007002327T5 (en) Persistent locks on concurrency control resources
DE60315030T2 (en) AVOIDING DATA LOSS WHEN UPDATING A DATA WAREHOUSE
DE69830886T2 (en) Status-based object transition control and nested locking
DE4418968C2 (en) Method for controlling data exchange and data collection in an anesthesia data collection system
EP1691323B1 (en) Data processing system and method for processing transactional data
EP0825532B1 (en) Method of operation for a multiprocessor data processing system and multiprocessor data processing system operating according to said method

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee