DE102012221037B4 - Einheit und Verfahren zum Realisieren einer Ressourcensperre - Google Patents

Einheit und Verfahren zum Realisieren einer Ressourcensperre Download PDF

Info

Publication number
DE102012221037B4
DE102012221037B4 DE102012221037.7A DE102012221037A DE102012221037B4 DE 102012221037 B4 DE102012221037 B4 DE 102012221037B4 DE 102012221037 A DE102012221037 A DE 102012221037A DE 102012221037 B4 DE102012221037 B4 DE 102012221037B4
Authority
DE
Germany
Prior art keywords
lock
time
resource
resources
realization
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102012221037.7A
Other languages
English (en)
Other versions
DE102012221037A1 (de
Inventor
Noriaki Kohno
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE102012221037A1 publication Critical patent/DE102012221037A1/de
Application granted granted Critical
Publication of DE102012221037B4 publication Critical patent/DE102012221037B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/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
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • G06F16/1767Concurrency control, e.g. optimistic or pessimistic approaches
    • G06F16/1774Locking methods, e.g. locking methods for file systems allowing shared and concurrent access to files
    • 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
    • G06F9/526Mutual exclusion algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Technology Law (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Verfahren zum parallelen Zugriff auf in Transaktionen genutzte Ressourcen, wobei jeweils in einer Transaktion vor dem Zugriff auf darin genutzte Ressourcen eine Reihenfolge ermittelt wird, in der der Erwerb von Zugriffssperren für diese Ressourcen angefragt wird, wobei diese Reihenfolge so ermittelt wird, dass sie der Reihenfolge entspricht, in der die jeweils erforderlichen Ressourcen einer Transaktion in einer zuvor ermittelten Sperrreihenfolge aller Ressourcen auftreten, wobei die Sperrreihenfolge aller Ressourcen so bestimmt wird, dass jeweils in einer Transaktion eine Zugriffssperre für eine Ressource mit einem kleineren Ausschlusserwartungswert vor einer Zugriffssperre für eine Ressourcen mit einem größerem Ausschlusserwartungswert angefordert wird, wobei der Ausschlusserwartungswert einer Ressource zunimmt allein mit der zuvor ermittelten, sich innerhalb einer bestimmten Zeitdauer ergebenden Summe der Wartezeiten jeweils von der Anforderung einer Zugriffssperre für die Ressource bis zu deren Erwerb oder auch zusätzlich mit der sich innerhalb der bestimmten Zeitdauer ergebenden Summe der Zeiten jeweils vom Erwerb einer Zugriffssperre für eine Ressource bis zur Anforderung einer nachfolgenden Zugriffssperre für eine andere Ressource innerhalb der Transaktion.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung bezieht sich auf eine Einheit und ein Verfahren zum Realisieren einer Ressourcensperre. Die vorliegende Erfindung bezieht sich insbesondere auf eine Einheit und ein Verfahren zum Realisieren von Ressourcensperren für eine Vielzahl von Ressourcen in einer speziellen Reihenfolge in Bezug auf die Vielzahl von Ressourcen.
  • VERWANDTE TECHNOLOGIE
  • Im Finanzbankensystem und dergleichen gibt es Fälle, bei denen Sperren auf eine Vielzahl von Daten in einer Datenbank angewendet werden und anschließend eine Aktualisierung ausgeführt wird. Wenn z.B. eine elektronische Überweisung vom Konto A zum Konto B ausgeführt wird, werden Sperren auf den Datensatz der Datenbank, der das Saldo für das Konto B enthält, und auf den Datensatz der Datenbank, der das Saldo für das Konto A enthält, angewendet und anschließend wird Geld vom Konto A abgebucht und dem Konto B gutgeschrieben. Wenn zufällig eine Vielzahl von Transaktionen, die eine Vielzahl von Sperren anwenden, gleichzeitig ausgeführt wird, wird eine Blockierung auftreten, wenn die Reihenfolge der Anwendung von Sperren irregulär ist. Wenn z.B. eine elektronische Überweisung vom Konto A zum Konto B nahezu gleichzeitig mit einer elektronischen Überweisung vom Konto B zum Konto A ausgeführt wird, und die Sperren für eine Transaktion in der Reihenfolge der Konten A, B und die Sperren für die andere Transaktion in der Reihenfolge der Konten B, A angewendet werden, werden die Sperren an beiden Konten A, B ohne einen Festschreibvorgang nicht aufgehoben, somit wird eine Blockierung erzeugt.
  • Als ein allgemeines Verfahren zum Vermeiden einer Blockierung ist ein Verfahren bekannt, bei dem die Sperrreihenfolge z.B. durch die Reihenfolge der Kontonummern für eine Vielzahl von Ressourcen, die Sperren anwenden, festgelegt ist, und bei Vorgängen, die eine Sperrung erfordern, werden zuerst Sperren auf alle Ressourcen, die eine Sperrung erfordern, in Übereinstimmung mit der Sperrreihenfolge angewendet. Bei diesem Verfahren wird zuerst die Sperrreihenfolge von Konto A und Konto B durch die Reihenfolge der Kontonummern so festgelegt, dass sie in der Reihenfolge Konto A und dann Konto B erfolgt.
  • Wenn des Weiteren eine elektronische Überweisung vom Konto A zum Konto B ausgeführt wird oder eine elektronische Überweisung vom Konto B zum Konto A ausgeführt wird, werden in jedem Fall zuerst Sperren des Kontos A und des Kontos B in der Reihenfolge der Konten A, B realisiert.
    Anschließend wird ein Vorgang, bei dem Guthaben vom Konto A abgebucht werden und Guthaben dem Konto B gutgeschrieben werden, oder ein Vorgang, bei dem Guthaben vom Konto B abgebucht und Guthaben dem Konto A gutgeschrieben werden, ausgeführt.
  • Es wird angemerkt, dass außerdem bekannte Technologien, die veröffentlicht wurden, vorhanden sind, die die Sperrreihenfolge festlegen, um eine Blockierung zu vermeiden (siehe z.B. die Patentdokumente 1 und 2).
    Das Patentdokument 1 offenbart eine Technologie, bei der Regeln der Sperrreihenfolge aufgezeichnet werden und Aufzeichnungsmittel der Regel der Sperrreihenfolge eingerichtet werden, Sperrbefehl-Verschiebungsmittel einen Sperrbefehl zum Ende eines Programms verschieben unter strikter Einhaltung der Regeln der Sperrreihenfolge, und Entsperrbefehl-Verschiebungsmittel einen Entsperrbefehl zum Anfang eines Programms verschieben.
  • Das Patentdokument 2 offenbart eine Technologie, die eine Vielzahl von gemeinsam genutzten Ressourcen und eine Management-Tabelle der exklusiven Steuerung aufweist, die eine Prioritätsreihenfolge für eine exklusive Steuerung speichert, die für jede aus der Vielzahl von gemeinsam genutzten Ressourcen eingerichtet wird, wobei Programmsteuermittel die gemeinsam genutzten Ressourcen in Übereinstimmung mit einer Reihenfolge gemäß der Prioritätsreihenfolge, die in der Management-Tabelle der exklusiven Steuerung gespeichert ist, exklusiv sperren, wenn eine Vielzahl von Programmen, die die Vielzahl von gemeinsam genutzten Ressourcen verwenden, unabhängig ausgeführt wird.
  • Des Weiteren ist eine Technologie bekannt, die eine Minderung der Leistungsfähigkeit des Systems infolge des Wartens auf eine Sperre vermindert (siehe z.B. die Patentdokumente 3 bis 7).
    Das Patentdokument 3 offenbart eine Technologie, die einen mechanischen Befehl verwendet, um Speicherinhalte eines speziellen Bereichs in einer Hauptspeichereinrichtung zu untersuchen, eine Sperre realisiert, wenn keine Sperre realisiert wurde, die Anzahl von Versuchen zum Realisieren einer Sperre zählt, wenn die Realisierung einer Sperre fehlschlägt, und das Betriebssystem (OS) benachrichtigt, dass außerdem eine andere Task ausgeführt werden kann, wenn die Anzahl der Versuche zum Realisieren einer Sperre einen im Voraus festgelegten oberen Grenzwert übersteigt.
  • Das Patentdokument 4 offenbart eine Technologie, die auf gemeinsam genutzte Speicherdaten von einer Vielzahl von Prozessoren, die Sperrbefehle und Entsperrbefehle aufweisen, zugreift, wobei der gemeinsam genutzte Speicher aufweist: einen Adressinformations-Speicherabschnitt zum Speichern von Adressinformationen, die die Adresse von Daten angeben, und einen Zugriffszähler zum Zählen der Anzahl von Versuchen zum Sperren der Daten, die die Adressinformationen angeben, die den Adressinformationen für jeden Prozessor entsprechen, und einen Zugriffshalteabschnitt, der einen Satz von Sperrsteckerabschnitten (lock plugs parts) vorhält, der Sperrstecker (lock plugs) speichert, die angeben, ob Adressinformationen entsprechende Daten gesperrt wurden, und dadurch wird die Realisierung einer Sperre in einer Reihenfolge beginnend mit jenen, die eine hohe Anzahl von Sperrversuchen aufweisen, zugewiesen.
  • Das Patentdokument 5 offenbart eine Technologie, die die erforderliche Verarbeitungszeit misst, wenn jede Transaktion ausgeführt wird, indem die mittlere erforderliche Dauer gespeichert wird, und die mittlere erforderliche Dauer von vorhergehenden Transaktionen, die gesichert wurden, als Entscheidungsgrundlage für eine Planung verwendet, wenn es einen Wettbewerb zwischen Transaktionen um identische Daten gibt.
  • Das Patentdokument 6 offenbart eine Technologie, die auf Ablaufaufzeichnungen und Abbildungstabellen Bezug nimmt und diese analysiert, eine Operation, ein Programm, das auf Grundlage der Operation ausgeführt wird, und eine Ablaufaufzeichnung für die Operation zuordnet und speichert, die gespeicherte Operation, ein Programm, das auf Grundlage der Operation ausgeführt wird, und eine Ablaufaufzeichnung des Programms vergleicht, die Ablaufaufzeichnung für die Operation für jede Form der Sperre bewertet, die durch die Programmausführungseinheit verwendete Sperrform festlegt und eine Vielzahl von Programmausführungseinheiten für das festgelegte Sperrformat einstellt.
  • Das Patentdokument 7 offenbart eine Technologie, enthaltend Sperrprioritäts-Einstellmittel, die einen Wert, der durch eine einfache ansteigende Funktion für die Anzahl von auf die Sperrressourcen wartenden Tasks berechnet wird, wenn die Task gesperrt ist, als Task-Sperrpriorität aufstellen und Sperrreihenfolge-Änderungsmittel, die Anforderungen in einer Sperrwartematrix gemäß der Sperrpriorität neu anordnen.
  • DOKUMENTE NACH DEM STAND DER TECHNIK
    • Japanische ungeprüfte Patentveröffentlichung Nr. H6-103091
    • Japanische ungeprüfte Patentveröffentlichung Nr. 2002-7148
    • Japanische ungeprüfte Patentveröffentlichung Nr. H5-257902
    • Japanische ungeprüfte Patentveröffentlichung Nr. H6-332789
    • Japanische ungeprüfte Patentveröffentlichung Nr. H10-143410
    • Japanische ungeprüfte Patentveröffentlichung Nr. 2009-37544
    • Japanische ungeprüfte Patentveröffentlichung Nr. H5-12041
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • PROBLEME, DIE DURCH DIE ERFINDUNG GELÖST WERDEN SOLLEN
  • Eine Blockierung kann unter Verwendung des oben erwähnten Verfahrens, das die Sperrreihenfolge im Voraus festlegt, vermieden werden. Es gibt jedoch Probleme mit der Verarbeitungsleistung. Wenn Transaktionen, die Guthaben gutschreiben oder Guthaben von einem bestimmten Konto abbuchen, konzentriert werden, wird der Systemdurchsatz durch die Zeitdauer gesteuert, während der die Sperre an dem Konto gehalten wird (Sperrhaltezeit). Wenn z.B. die mittlere Sperrhaltezeit für ein bestimmtes Konto 0,02 Sekunden beträgt, können die Vorgänge, die dieses Konto betreffen, lediglich bei einer maximalen Rate von 50 pro Sekunde (= 1/0,02) ausgeführt werden. Für ein Konto, bei dem die Vorgänge konzentriert werden, ist die einzelne Sperrhaltezeit für dieses Konto vorzugsweise so kurz wie möglich, bei dem oben erwähnten Verfahren bestehen jedoch die folgenden beiden Probleme.
    • (1) Die Wartedauer zum Realisieren einer weiteren Sperre ist in der Sperrhaltezeit enthalten. In Abhängigkeit von der Sperrreihenfolge ist die Wartezeit zum Realisieren einer weiteren Sperre (Sperrwartezeit) ist in der Sperrhaltezeit enthalten. Wenn z.B. zuvor festgestellt wurde, dass eine Sperre in der Reihenfolge der Konten A, B realisiert wird, ist die Sperrwartezeit für das Konto B in der Sperrwartezeit für das Konto A enthalten und das ist ungünstig, wenn Vorgänge für das Konto A konzentriert werden.
    • (2) Sperrrealisierung kann nicht verzögert werden Bei dem oben erwähnten Verfahren wird eine Vielzahl von Sperren gleichzeitig realisiert, um den Vorgang zu beginnen, um jedoch die Sperrhaltezeit zu verkürzen, wird die Sperrrealisierung vorzugsweise verzögert, bis sie tatsächlich erforderlich ist. Wenn jedoch im Voraus festgelegt ist, dass die Sperren in der Reihenfolge der Konten A, B realisiert werden, muss zuerst die Sperre am Konto A realisiert werden, auch wenn die Verarbeitung für das Konto A konzentriert erfolgt und die Sperrhaltezeit für das Konto A nicht verkürzt werden kann.
  • Bei einem System, das eine große Anzahl von Transaktionen verarbeitet und ein Warten auf eine Sperre häufig vorkommt, können die Steuerung des Auftretens dieser beiden Probleme und die möglichst große Verkürzung der Gesamt-Sperrbelegungszeit in dem Gesamtsystem den Durchsatz des Gesamtsystems verbessern.
  • Bei der Technologie der Patentdokumente 1 und 2 ist jedoch die Reihenfolge für die Sperrrealisierung im Voraus festgelegt, so dass die oben erwähnten beiden Probleme nicht gelöst werden können.
    Des Weiteren kann die Technologie der Patentdokumente 3 bis 7 eine Verringerung der Leistungsfähigkeit des Systems infolge des Wartens auf eine Sperre verhindern, diese Technologie stellt jedoch keine Gegenmaßnahmen für die oben erwähnten beiden Probleme bereit.
  • Eine Aufgabe der vorliegenden Erfindung besteht darin, die Zeit, während der Ressourcensperren gehalten werden, für das Gesamtsystem zu verkürzen.
  • Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, die Sperrwartezeit für andere Ressourcen, die in der Zeitdauer enthalten ist, während der die Ressourcensperre gehalten wird, für das Gesamtsystem zu verkürzen.
  • Eine noch weitere Aufgabe der vorliegenden Erfindung besteht darin, die Zeit bis die Ressourcen verwendet werden, die in der Zeit zum Halten einer Ressourcensperre enthalten ist, für das Gesamtsystem zu verkürzen.
  • MITTEL ZUR LÖSUNG VON PROBLEMEN
  • Auf der Grundlage dieser Aufgabe stellt die vorliegende Erfindung eine Einheit zum Realisieren von Ressourcensperren für eine Vielzahl von Ressourcen in einer speziellen Reihenfolge für eine Vielzahl von Ressourcen bereit, wobei die Einheit aufweist:
    • einen Erzeugungsabschnitt, der einen Zeitausschluss-Erwartungswert erzeugt, der einen Erwartungswert für die Länge der Zeit darstellt, die aus der Zeit zum Halten einer Sperre an der Ressource für den Fall, dass eine Realisierung der Ressourcensperre hinausgezögert wird, für jede Ressource von einer Vielzahl von Ressourcen ausgeschlossen ist; und
    • einen Festlegungsabschnitt, der eine spezielle Reihenfolge festlegt, so dass Ressourcen mit einem höheren Zeitausschluss-Erwartungswert, der durch den Erzeugungsabschnitt erzeugt wird, in der Reihenfolge später zugewiesen werden.
  • Dabei kann der Erzeugungsabschnitt ein Abschnitt sein, der einen Zeitausschluss-Erwartungswert erzeugt, der den Erwartungswert des Sperrwartezeit-Ausschlusses enthält, der der Erwartungswert für die Länge der Sperrwartezeit für eine andere Ressource ist, die aus der Zeit zum Halten einer Sperre an der Ressource für den Fall, bei dem eine Realisierung der Ressourcensperre für jede Ressource aus einer Vielzahl von Ressourcen hinausgezögert wird, ausgeschlossen ist; oder er kann ein Abschnitt sein, der einen Zeitausschluss-Erwartungswert erzeugt, der einen Zeitausschluss-Erwartungswert vor einer Verwendung (Pre-Use) enthält, der der Erwartungswert für die Länge der Zeit ist, bis ältere Ressourcen (age resources) verwendet werden, die aus der Zeit zum Halten einer Sperre an der Ressource für den Fall, bei dem die Realisierung der Ressourcensperre für jede Ressource aus einer Vielzahl von Ressourcen hinausgezögert wird, ausgeschlossen sind.
  • In diesem Fall kann die Einheit ferner einen Abrufabschnitt aufweisen, der die Anzahl abruft, wie oft eine Realisierung jeder Ressourcensperre durch ein Anwendungsprogramm, das jede Ressource aus einer Vielzahl von Ressourcen verwendet, angefordert wurde, wobei der Erzeugungsabschnitt einen Erwartungswert des Sperrhaltezeitausschlusses anhand der Anzahl, wie oft jede Ressource durch den Abrufabschnitt abgerufen wurde, für jede Ressource aus der Vielzahl von Ressourcen erzeugt; oder die Einheit kann ferner einen Abrufabschnitt aufweisen, der eine Realisierungszeit abruft, zu der eine Software eine Sperre für jede Ressource realisiert, und eine Anforderungszeit, zu der eine Realisierung der Sperre für jede Ressource für Software angefordert wird, die eine Vielzahl von Ressourcen für den Fall verwaltet, bei dem ein Anwendungsprogramm, das verschiedene Ressourcen aus einer Vielzahl von Ressourcen verwendet, das Realisieren der Ressourcensperre anfordert; wobei der Erzeugungsabschnitt einen Erwartungswert des Sperrwartezeitauschlusses auf der Grundlage der Anforderungszeit und der Realisierungszeit, die durch den Abrufabschnitt abgerufen werden, für jede Ressource aus der Vielzahl von Ressourcen erzeugt.
  • Des Weiteren kann die Einheit ferner einen Abrufabschnitt aufweisen, der die Anzahl, wie oft ein Realisieren jeder Ressourcensperre als die zweite oder nachfolgende Anforderung zum Realisieren einer Ressourcensperre angefordert wurde, durch ein Anwendungsprogramm, das jede Ressource aus einer Vielzahl von Ressourcen verwendet, abruft; wobei der Erzeugungsabschnitt einen Erwartungswert eines Sperrzeitausschlusses vor einer Verwendung auf der Grundlage der Anzahl, wie oft jede Ressource durch den Abrufabschnitt abgerufen wurde, für jede Ressource aus der Vielzahl von Ressourcen erzeugt; oder sie kann ferner einen Abrufabschnitt aufweisen, der die Realisierungszeit aufruft, zu der jede Ressourcensperre realisiert wurde für den Fall, bei dem die Realisierung jeder Ressourcensperre als eine erste Anforderung zum Realisieren einer Ressourcensperre durch ein Anwendungsprogramm, das jede Ressource aus einer Vielzahl von Ressourcen verwendet, angefordert wird, und die Anforderungszeit zum Anfordern der Realisierung jeder Ressourcensperre für den Fall abruft, dass ein Anwendungsprogramm eine Realisierung jeder Ressourcensperre als die zweite oder nachfolgende Anforderung zum Realisieren einer Ressourcensperre anfordert; wobei der Erzeugungsabschnitt einen Zeitausschluss-Erwartungswert vor einer Verwendung auf der Grundlage der Realisierungszeit und der Anforderungszeit, die durch den Abrufabschnitt abgerufen werden, für jede Ressource aus der Vielzahl von Ressourcen erzeugt.
  • Die vorliegende Erfindung stellt des Weiteren eine Einheit zum Realisieren von Ressourcensperren für eine Vielzahl von Ressourcen in einer speziellen Reihenfolge für eine Vielzahl von Ressourcen bereit, wobei die Einheit aufweist:
    • einen Speicherabschnitt, der eine im Voraus aufgestellte Reihenfolge als eine spezielle Reihenfolge speichert;
    • einen Abrufabschnitt, der in dem Fall, wenn das Realisieren einer speziellen Ressourcensperre als eine erste Anforderung zum Realisieren einer Ressourcensperre durch ein Anwendungsprogramm, das spezielle Ressourcen aus einer Vielzahl von Ressourcen verwendet, angefordert wird,
    • als eine erste Anforderungszeit den Zeitpunkt einer Anforderung zum Realisieren eines Sperrens anderer Ressourcen in Bezug auf Software abruft, die eine Vielzahl von Ressourcen verwaltet, wenn es sich um andere Ressourcen handelt, die Ressourcen sind, für die keine Sperre realisiert wird, und die Ressourcen mit einer früheren Reihenfolge als die speziellen Ressourcen sind und bei denen geplant ist, dass sie durch das Anwendungsprogramm in einer im Voraus eingerichteten Reihenfolge verwendet werden,
    • als die erste Realisierungszeit die Zeit abruft, zu der eine weitere Ressourcensperre durch die Software realisiert wurde,
    • anschließend als die erste Anforderungszeit die Zeit abruft, zu der eine Realisierung einer Sperre für spezielle Ressourcen in Bezug auf die Software angefordert wurde,
    • als die erste Realisierungszeit die Zeit abruft, zu der eine spezielle Ressourcensperre durch die Software realisiert wurde, und
    • als eine zweite Realisierungszeit die Zeit abruft, zu der eine Sperre einer speziellen Ressourcen realisiert wurde; und
    • für den Fall, bei dem eine Realisierung einer Sperre einer speziellen Ressourcen als eine zweite oder nachfolgende Anforderung zum Realisieren einer Ressourcensperre durch ein Anwendungsprogramm, das spezielle Ressourcen aus einer Vielzahl von Ressourcen verwendet, angefordert wurde,
    • als die erste Anforderungszeit die Zeit einer Anforderung zum Realisieren eines Sperrens anderer Ressourcen in Bezug auf Software abruft, die eine Vielzahl von Ressourcen verwaltet, wenn es sich um andere Ressourcen handelt, die Ressourcen sind, für die keine Sperre realisiert werden soll, und die Ressourcen mit einer früheren Reihenfolge als spezielle Ressourcen sind und bei denen geplant ist, dass sie durch ein Anwendungsprogramm, das eine Vielzahl von Ressourcen für eine im Voraus aufgestellte Reihenfolge verwaltet, verwendet werden,
    • als die erste Realisierungszeit die Zeit abruft, an der eine Sperre weiterer Ressourcen durch die Software realisiert wurde,
    • anschließend als die zweite Anforderungszeit die Zeit abruft, an der eine Realisierung einer Sperre von speziellen Ressourcen in Bezug auf die Software angefordert wurde, als die erste Realisierungszeit die Zeit abruft, an der eine Sperre spezieller Ressourcen durch die Software realisiert wurde, und
    • als die erste Realisierungszeit die Zeit abruft, an der eine Sperre spezieller Ressourcen realisiert wurde;
    • einen Erzeugungsabschnitt, der einen Erwartungswert des Sperrwartezeitausschlusses erzeugt, der ein Erwartungswert für die Länge der Wartezeit auf das Sperren anderer Ressourcen ist, die von der Haltezeit der Sperre an jeder Ressource ausgeschlossen ist, durch das Hinauszögern der Realisierung jeder Ressourcensperre auf der Grundlage der Zeit, die als die erste Anforderungszeit durch den Abrufabschnitt abgerufen wird, auf der Grundlage jeder Ressource aus einer Vielzahl von Ressourcen und auf der Grundlage der Zeit, die als die erste realisierte Zeit durch den Abrufabschnitt abgerufen wird, und einen Zeitausschluss-Erwartungswert vor einer Verwendung erzeugt, der ein Erwartungswert der Länge der Zeit ist, bis jede Ressource verwendet wird, ausschließlich der Zeit zum Halten jeder Ressourcensperre durch Hinauszögern der Realisierung der Sperren für jede Ressource auf der Grundlage der Zeit, die als die zweite Anforderungszeit durch den Abrufabschnitt abgerufen wird, und der Zeit, die als die zweite Realisierungszeit durch den Abrufabschnitt abgerufen wird; und
    • einen Aktualisierungsabschnitt, der die im Voraus aufgestellte Reihenfolge, die im Speicher aufgezeichnet ist, aktualisiert, so dass Ressourcen mit einem größeren Gesamterwartungswert, der auf der Grundlage des durch den Erzeugungsabschnitt erzeugten Erwartungswerts des Sperrwartezeitausschlusses und des Zeitausschluss-Erwartungswerts vor einer Verwendung erhalten wird, so zugewiesen werden, dass sie in der Reihenfolge an einem späteren Zeitpunkt liegen.
  • Die vorliegende Erfindung stellt des Weiteren ein Verfahren zum Realisieren von Ressourcensperren für eine Vielzahl von Ressourcen in einer speziellen Reihenfolge für eine Vielzahl von Ressourcen bereit, wobei das Verfahren aufweist:
    • einen Erzeugungsschritt, der einen Zeitausschluss-Erwartungswert erzeugt, der ein Erwartungswert für die Länge der Zeit ist, die von der Zeit zum Halten einer Sperre an der Ressource für den Fall, dass die Realisierung der Ressourcensperre hinausgezögert wird, für jede Ressource aus einer Vielzahl von Ressourcen ausgeschlossen ist; und
    • einen Festlegungsschritt, der eine spezielle Reihenfolge festlegt, so dass Ressourcen mit einem höheren Zeitausschluss-Erwartungswert, der durch den Erzeugungsabschnitt erzeugt wird, in der Reihenfolge zu einem späteren Zeitpunkt zugewiesen werden.
  • Die vorliegende Erfindung stellt des Weiteren ein Programm bereit, das eine Funktion des Computers als eine Einheit zum Realisieren von Ressourcensperren für eine Vielzahl von Ressourcen in einer speziellen Reihenfolge für eine Vielzahl von Ressourcen bewirkt, wobei: der Computer in der Lage ist, als ein Erzeugungsabschnitt zu funktionieren, der einen Zeitausschluss-Erwartungswert erzeugt, der ein Erwartungswert für die Länge der Zeit ist, die aus der Zeit zum Halten einer Sperre an der Ressource für den Fall, dass eine Realisierung der Ressourcensperre für jede Ressource aus einer Vielzahl von Ressourcen hinausgezögert wird, ausgeschlossen ist; und als ein Festlegungsabschnitt zu funktionieren, der eine spezielle Reihenfolge festlegt, so dass Ressourcen mit einem höheren Zeitausschluss-Erwartungswert, der durch den Erzeugungsabschnitt erzeugt wird, in der Reihenfolge zu einem späteren Zeitpunkt zugewiesen werden.
  • Die vorliegende Erfindung kann die Zeit, in der Ressourcensperren gehalten werden, für das Gesamtsystem verkürzen.
  • Figurenliste
    • 1 ist ein Blockschaubild, das ein Beispiel der Gesamtkonfiguration eines Datenverarbeitungssystems gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
    • 2 ist ein Blockschaubild, das die Beziehung zwischen einer Anwendung des Datenverarbeitungssystems, einer Sperrsteuereinheit und einem DBMS für eine Ausführungsform der vorliegenden Erfindung zeigt.
    • 3 ist ein Blockschaubild, das den Zustand des Informationsaustausches zwischen Komponenten des Datenverarbeitungssystems einer Ausführungsform der vorliegenden Erfindung zeigt.
    • 4 ist ein Schaubild, das ein Beispiel eines statistischen Berichts veranschaulicht, der durch die Sperrsteuereinheit des Datenverarbeitungssystems gemäß einer Ausführungsform der vorliegenden Erfindung vorgehalten wird.
    • 5-1 ist ein Ablaufplan, der ein Funktionsbeispiel der Sperrsteuereinheit eines Datenverarbeitungssystems gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
    • 5-2 ist ein Ablaufplan, der ein Funktionsbeispiel der Sperrsteuereinheit eines Datenverarbeitungssystems gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
    • 6 ist ein Ablaufplan, der ein Funktionsbeispiel einer statistischen Verarbeitungseinheit für das Datenverarbeitungssystem gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
    • 7 ist ein Schaubild, das die Wirkung des Datenverarbeitungssystems gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
    • 8 ist ein Blockschaltbild, das die Hardware-Konfiguration für einen Computer zeigt, der die Ausführungsform der vorliegenden Erfindung anwenden kann.
  • GENAUE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Ausführungsformen der vorliegenden Erfindung werden im Folgenden unter Bezugnahme auf die angefügten Zeichnungen beschrieben.
  • Zuerst wird eine Zusammenfassung der Funktionsweise der Ausführungsform der vorliegenden Erfindung beschrieben.
    In der Ausführungsform der vorliegenden Erfindung wird die Sperrreihenfolge in einer Weise festgelegt, die die Wirkung, dass die Sperrwartedauer für andere Ressourcen in die Sperrhaltezeit möglichst nicht eingeschlossen wird (Wirkung des Sperrwartezeitausschlusses), und die Wirkung, dass eine Sperrrealisierung hinausgezögert werden kann, bis sie tatsächlich gefordert wird (Wirkung der Sperrrealisierung) unter Verwendung eines statistischen Berichts, wann die Ressourcensperrung tatsächlich realisiert wird, maximal macht. Des Weiteren wird die Ressourcensperre-Haltezeit dort, wo eine Sperrung konzentriert erfolgt, durch Realisieren der Sperre auf der Grundlage der Sperrreihenfolge verkürzt, und deswegen wird die Gesamt-Sperrbelegungszeit des Gesamtsystems verkürzt ,und somit wird der Durchsatz des Gesamtsystems verbessert.
  • In diesem Fall wird die Sperrreihenfolge durch eines der folgenden beiden Verfahren unter Verwendung des statistischen Berichts des Systems festgelegt.
  • Das erste Verfahren ist ein Verfahren, das verwendet wird, wenn lediglich die Wirkung des Sperrwartezeitausschlusses erwartet wird. Bei diesem Verfahren wird die Anzahl von Sperranforderungen in einer bestimmten Zeitperiode für jede Ressource, die einer Sperrung unterzogen wird, abgerufen, und die Sperrreihenfolge beruht auf der ansteigenden Reihenfolge für die Anzahl von Sperranforderungen.
  • Das zweite Verfahren ist ein Verfahren, das verwendet wird, wenn sowohl die Wirkung des Sperrwartezeitausschlusses als auch die Wirkung der Sperrrealisierungsverzögerung erwartet werden können. Bei diesem Verfahren werden die Anzahl von Sperranforderungen in einer speziellen Zeitperiode und die Anzahl von Anforderungen für eine nachfolgende Sperrung in Transaktionen während dieser Periode abgerufen, und die Sperrreihenfolge wird so eingestellt, dass sie die ansteigende Reihenfolge für den nach der folgenden Formel berechneten Bewertungswert ist.
  • Bewertungswert = mittlere Sperrwartedauer x Anzahl von Sperranforderungen + erwartete Zeitdauer der mittleren Sperrrealisierungsverzögerung x Anzahl von nachfolgenden Sperranforderungen.
  • Dabei können die mittlere Sperrwartedauer und die erwartete Zeitdauer der mittleren Sperrrealisierungsverzögerung im Voraus durch Schätzen oder durch eine statistische Verarbeitung ermittelt werden.
  • Im Folgenden wird die Konfiguration des Datenverarbeitungssystems, das diese Operation ausführt, genau beschrieben.
  • 1 ist ein Blockschaubild, das ein Beispiel der Gesamtkonfiguration eines Datenverarbeitungssystems gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
  • Wie im Blockschaubild gezeigt wird das Datenverarbeitungssystem der Ausführungsform der vorliegenden Erfindung konfiguriert durch Einrichten einer Sperrsteuereinheit 30, einer statistischen Verarbeitungseinheit 40 und einer Tabelle 50 der Sperrreihenfolge, die zwischen dem Datenbank-Managementsystem (DBMS) 20 und dem Anwendungsprogramm 10 (im Folgenden als „Anwendung“ bezeichnet) eingerichtet ist.
  • Des Weiteren ist in 2 der Abschnitt, der die Anwendung 10, das DBMS 20 und die Sperrsteuereinheit 30 enthält, aus der Gesamtkonfiguration des in 1 dargestellten Datenverarbeitungssystems herausgezogen und die Beziehung aller Komponenten ist dargestellt.
  • Im Folgenden werden die Komponenten des Datenverarbeitungssystems der Ausführungsform der vorliegenden Erfindung unter Bezugnahme auf 1 und 2 vollständig beschrieben.
  • Die Anwendung 10 ist ein Programm, das Arbeitsvorgänge ausführt und wie in 2 dargestellt einen Vorgang 11 zum Übertragen einer Sperrabsicht, einen Vorgang 12a, 12b einer Sperrrealisierungsanforderung und einen Vorgang 13 einer Festschreibanforderung (commit request) in Bezug auf die Sperrsteuereinheit 30 ausführt. Es wird angemerkt, dass in 2 die Vorgänge 12a, 12b einer Sperrrealisierungsanforderung gezeigt sind, wenn jedoch keine Notwendigkeit der Unterscheidung zwischen ihnen besteht, werden sie als Vorgang 12 einer Sperrrealisierungsanforderung bezeichnet.
  • Des Weiteren ist in 2 der Fall gezeigt, dass der Vorgang 12 einer Sperrrealisierungsanforderung zweimal ausgeführt wird, der Vorgang 12 einer Sperrrealisierungsanforderung kann jedoch auch dreimal oder öfter ausgeführt werden.
  • Der Vorgang 11 zum Übertragen einer Sperrabsicht ist ein Vorgang, der am Beginn einer Transaktion ausgeführt wird, und ist ein Vorgang, der mitteilt, welche Ressourcen in der Datenbank gesperrt werden.
  • Der Vorgang 12 einer Sperrrealisierungsanforderung ist ein Vorgang, der in dem Moment ausgeführt wird, wenn eine Ressourcensperre tatsächlich angefordert wird, und er ist ein Vorgang, der das Realisieren einer Sperre an diesen Ressourcen anfordert.
  • Der Vorgang 13 einer Festschreibanforderung ist ein Vorgang, der nach einer Verwendung der Sperrressourcen in der Datenbank ausgeführt wird, und er ist ein Vorgang, der das Aufheben der Sperre an den Ressourcen durch das Anfordern eines Festschreibvorgangs anfordert.
  • Das DBMS 20 ist ein Programm, das die Datenbank verwaltet, die die Ressourcen speichert, die einer Sperrung unterzogen werden. Wenn im Einzelnen eine Verwendung von Ressourcen in einer Datenbank gefordert wird, werden die Ressourcen an die anfordernde Quelle bereitgestellt. Es wird angemerkt, dass das DBMS 20 ein allgemeines Ressourcen-Managementprogramm sein kann, das die Ressourcen, die einer Sperrung unterzogen werden, verwaltet, hier jedoch wird das DBMS 20 als ein repräsentatives Programm verwendet. Mit anderen Worten, in der Ausführungsform der vorliegenden Erfindung wird das DBMS 20 als ein Beispiel von Software bereitgestellt, die eine Vielzahl von Ressourcen verwaltet.
  • Die Sperrsteuereinheit 30 führt einen Vorbereitungsvorgang 31, einen Sperrrealisierungsvorgang 32 und einen Sperraufhebungsvorgang 33 wie in 2 dargestellt auf der Grundlage der Annahme aus, dass eine Tabelle 50 der Sperrreihenfolge aufgestellt wurde. Der Vorbereitungsvorgang 31 ist ein Vorgang, der in Übereinstimmung mit dem Vorgang 11 zum Übertragen einer Sperrabsicht ausgeführt wird, und er ist ein Vorgang, der Vorbereitungen für den Sperrrealisierungsvorgang 32 ausführt. Im Einzelnen wird eine Sperrreihenfolge für alle Ressourcen, für die eine Sperrabsicht übertragen wurde, aus der Tabelle 50 der Sperrreihenfolge gelesen, und eine Sperrsubjektliste wird in aufsteigender Reihenfolge der Sperrreihenfolge erzeugt.
  • Die Sperrrealisierungsvorgang 32 ist ein Vorgang, der auf der Grundlage des Vorgangs 12 einer Sperrrealisierungsanforderung der Anwendung 10 ausgeführt wird, und er ist ein Vorgang, der Ressourcensperren realisiert. Im Einzelnen werden die angeforderten Ressourcen in der Sperrsubjektliste gesucht, und wenn es Ressourcen mit einer kleineren Nummer der Sperrreihenfolge gibt, für die keine Sperre realisiert wurde, wird das Realisieren dieser Sperren am DBMS 20 in aufsteigender Folge der Nummer der Sperrreihenfolge angefordert. Anschließend wird die nächste Ressourcensperrrealisierung am DBMS 20 angefordert. Des Weiteren werden die Ressourcen, für die eine Sperre realisiert wurde, in der Sperrsubjektliste aufgezeichnet, damit eine abgeschlossene Sperrrealisierung vorhanden ist.
  • Der Sperraufhebungsvorgang 33 ist ein Vorgang, der auf der Grundlage des Vorgangs 13 einer Festschreibanforderung der Anwendung 10 ausgeführt wird, und er ist ein Vorgang, der die Ressourcensperre aufhebt. Im Einzelnen wird ein Aufheben der Sperre an allen Ressourcen, die gesperrt wurden, bei dem DBMS 20 angefordert. Des Weiteren wird die Sperrsubjektliste gelöscht, nachdem die Sperre aufgehoben wurde. Es wird angemerkt, dass hier der Sperraufhebungsvorgang 33 in Übereinstimmung mit dem Vorgang 13 einer Festschreibanforderung der Anwendung 10 ausgeführt wird, er kann jedoch außerdem durch Anfordern einer Aufhebung der Sperre mittels Zurücknahme ausgeführt werden.
  • Die statistische Verarbeitungseinheit 40 erhält einen statistischen Bericht durch Überwachen der Aktionen der Sperrsteuereinheit 30 und legt die Sperrreihenfolge auf der Grundlage dieses statistischen Berichts fest. Das Verfahren zum Festlegen der Sperrreihenfolge in der statistischen Verarbeitungseinheit 40 wird im Folgenden genau beschrieben. In der Ausführungsformen der vorliegenden Erfindung ist eine statistische Verarbeitungseinheit 40 als ein Beispiel eines Festlegungsabschnitts bereitgestellt, der die Reihenfolge festlegt.
  • Die Tabelle 50 der Sperrreihenfolge speichert die Sperrreihenfolge, die durch die statistische Verarbeitungseinheit 40 entschieden wurde, und präsentiert die Sperrreihenfolge der Sperrsteuereinheit 30. Die Tabelle 50 der Sperrreihenfolge kann durch eine Speichereinheit realisiert werden, auf die durch die Sperrsteuereinheit 30 schnell zugegriffen werden kann, wie etwa ein Hauptspeicher 90C (siehe 8) oder dergleichen eines Computers.
  • Es wird angemerkt, dass die Tabelle der Sperrreihenfolge zum Verhindern eine Blockierung zu einem bestimmten Zeitpunkt festgelegt sein muss. Die statistische Verarbeitungseinheit 40 führt z.B. einen täglichen oder monatlichen statistischen Vorgang aus, erzeugt eine neue Tabelle 50 der Sperrreihenfolge und ersetzt die alte Tabelle 50 der Sperrreihenfolge durch die neue Tabelle 50 der Sperrreihenfolge. Der Zeitpunkt für das Ersetzen der Tabelle 50 der Sperrreihenfolge kann festgelegt werden, wenn die Tabelle 50 der Sperrreihenfolge die durchschnittliche Tendenz der Sperrrealisierung für die Anwendung 10 in ausreichendem Maße ausdrückt.
  • Wenn des Weiteren der Mechanismus der Ausführungsform der vorliegenden Erfindung anfänglich verwendet wird, wurde die Sperrreihenfolge auf der Grundlage eines statistischen Vorgangs noch nicht erhalten, deswegen kann die Sperrreihenfolge durch eine Person, die eine Vorhersage trifft und/oder glaubt, erfolgreich zu sein, oder durch eine mechanische Festlegung in Übereinstimmung mit Kontonummern oder dergleichen festgelegt werden. Nach dem Betrieb für eine festgelegte Zeitperiode kann ferner die Tabelle 50 der Sperrreihenfolge, die durch die statistische Verarbeitungseinheit 40 erzeugt wird, ersetzt werden.
  • Im Folgenden wird das Verfahren zum Festlegen der Sperrreihenfolge in der statistischen Verarbeitungseinheit 40 genau beschrieben.
  • Zunächst kann das Verfahren zum Festlegen der Sperrreihenfolge aus den folgenden beiden Festlegungsverfahren auf der Grundlage der Eigenschaften der Anwendung 10 ausgewählt werden.
  • Das erste Festlegungsverfahren ist ein Verfahren zum Festlegen auf der Grundlage der Anzahl von Sperranforderungen und entspricht dem oben erwähnten ersten Verfahren.
  • In den Fällen, wenn keine Wirkung der Sperrrealisierungsverzögerung erwartet werden kann und lediglich die Wirkung des Sperrwartezeitausschlusses erwartet werden kann, wie etwa dann, wenn zwischen dem Realisieren einer Vielzahl von Sperren nahezu keine Vorgänge vorhanden sind, kann eine erhebliche Wirkung des Sperrwartedauerausschlusses durch Hinauszögern der Sperrrealisierung von Ressourcen mit einer großen Anzahl von Sperranforderungen erhalten werden. Deswegen ruft die statistische Verarbeitungseinheit 40 die Anzahl von Sperranforderungen in einer bestimmten Zeitperiode für jede Ressource ab, die einer Sperre unterzogen wird, und die Sperrreihenfolge erfolgt auf der Grundlage der aufsteigenden Reihenfolge der Anzahl von Sperranforderungen.
  • Das zweite Verfahren ist ein Verfahren zum Festlegen auf der Grundlage der Anzahl von Sperranforderungen und der Anzahl von nachfolgenden Sperranforderungen und entspricht dem oben erwähnten zweiten Verfahren.
    In den Fällen, bei denen sowohl eine Wirkung des Sperrwartedauerausschlusses als auch eine Wirkung der Sperrrealisierungsverzögerung erwartet werden kann, erhält die statistische Verarbeitungseinheit 40 die Anzahl von Sperranforderungen in einer bestimmten Zeitperiode, und die Anzahl von Anforderungen für nachfolgende Sperren in Transaktionen während dieser Periode wird abgerufen, und die Sperrreihenfolge wird so eingestellt, dass sie die aufsteigende Reihenfolge für den durch die folgende Gleichung berechneten Bewertungswert darstellt. Bewertungswert = mittlere Sperrwartezeit × Anzahl von Sperranforderungen + mittlere Sperrrealisierungsverz o ¨ gerungszeit × Anzahl von nachfolgenden Sperranforderungen .
    Figure DE102012221037B4_0001
  • Dabei drückt der Bewertungswert den Erwartungswert für den Umfang aus, in dem die Sperrrealisierungszeit des Gesamtsystems während einer feststehenden Periode für den Fall vermindert werden kann, dass eine spezielle Ressourcensperrrealisierung hinausgezögert wird. Im Einzelnen ist der Ausdruck „mittlere Sperrwartezeit × Anzahl von Sperranforderungen“ die Summe der Erwartungswerte für den Betrag der Sperrwartezeit, der ausgeschlossen werden kann, wenn eine Sperrrealisierung einer speziellen Ressource hinausgezögert wird, und der Ausdruck „mittlere Sperrrealisierungsverzögerungszeit × Anzahl von nachfolgenden Sperranforderungen“ repräsentiert den erwarteten Gesamtwert, um den eine Sperrrealisierung hinausgezögert kann auf der Grundlage der Beziehung zwischen einer Sperrrealisierung einer speziellen Ressource und dem Zeitpunkt zur Verwendung der Ressource, falls hinausgezögert. Des Weiteren kann eine Wirkung der Verkürzung der Sperrhaltezeit für das Gesamtsystem erhalten werden, indem eine spätere Nummer in der Sperrreihenfolge Ressourcen mit einer großen Wartewirkung oder mit anderen Worten Ressourcen mit einem großen Bewertungswert zugewiesen wird.
  • Es wird angemerkt, wenn die Werte der mittleren Sperrwartezeit und der mittleren Erwartungsdauer der Sperrrealisierungsverzögerung bereits bekannt sind oder geschätzt werden können, kann die statistische Verarbeitungseinheit 40 den Sperranforderungs-Zählwert für alle Guthaben in einer festen Zeitperiode und den Zählwert für nachfolgende Sperranforderungen abrufen, der die Anzahl von Sperranforderungen von zwei oder größer für eine Transaktion in einer festen Zeitperiode darstellt, und der mittlere Wert kann gemäß Formel 1 berechnet werden.
  • Wenn andererseits der Wert für die mittlere Sperrwartezeitdauer nicht bekannt ist und nicht geschätzt werden kann, ruft die statistische Verarbeitungseinheit 40 die Differenz zwischen der Zeit, die für eine Sperrrealisierung erforderlich ist (im Folgenden als „Sperranforderungszeit“ bezeichnet) und der tatsächlichen Zeit, zu der eine Sperre realisiert wird (als „Sperrrealisierungszeit“ bezeichnet), von der Sperrsteuereinheit 30 für alle Sperrrealisierungen in einer festen Zeitperiode ab und dividiert sie anschließend durch die Anzahl von Sperranforderungen in der festen Zeitperiode, um die mittlere Sperrwartezeit zu erhalten. Wenn ferner der Zeitwert für die den mittleren Erwartungswert der Sperrrealisierungsverzögerung nicht bekannt ist und nicht geschätzt werden kann, ruft die statistische Verarbeitungseinheit 40 die Differenz zwischen der Realisierungszeit einer anfänglichen Sperre (im Folgenden als die „Realisierungszeit einer anfänglichen Sperre“ bezeichnet) und dem Zeitpunkt, an dem eine zweite oder spätere Anforderung einer Sperrrealisierung für eine Transaktion ausgegeben wurde (im Folgenden als der „Zeitpunkt einer nachfolgenden Sperranforderung“ bezeichnet) von der Sperrsteuereinheit 30 für Realisierungen einer zweiten und späteren Sperre für eine Transaktion ab und dividiert sie anschließend durch die Anzahl von Sperranforderungen in der festen Zeitperiode, um die mittlere Sperrwartezeit zu erhalten.
  • Um eine genauere Sperrreihenfolge bestimmen, kann die statistische Verarbeitungseinheit 40 ferner die einzelnen Sperrwartezeiten summieren anstelle des Multiplizierens des Zählwerts von Sperranforderungen mit der mittleren Sperrwartezeit und die Zeiten der einzelnen Erwartungswerte der Sperrrealisierungsverzögerung summieren anstelle des Multiplizierens der mittleren Zeit des Erwartungswerts der Sperrrealisierungsverzögerung mit dem Zählwert der nachfolgenden Sperranforderungen. Für diesen Fall lautet die Gleichung zum Berechnen des Bewertungswerts zum Bestimmen der Sperrreihenfolge wie nachfolgend angegeben. Bewertungswert = Sperrwartezeit + ( Zeit der nachfolgenden Sperranforderungen Realisierungszeit einer anf a ¨ nglichen Sperre )
    Figure DE102012221037B4_0002
    wobei die erste Summe die Summe der Sperranforderungen bezeichnet, die für eine spezielle Ressource in einer festen Zeitperiode ausgegeben werden, und die zweite Summe die Summe der Anforderungen von zweiten und nachfolgenden Sperren bezeichnet, die in Bezug auf spezielle Ressourcen während einer festen Zeitperiode ausgegeben werden.
  • (Gleichung 1) und (Gleichung 2) sind jedoch lediglich Beispiele zum Berechnen des Bewertungswerts. Jede Gleichung kann verwendet werden, solange der Wert ansteigt, wenn der erste Term größer wird, und der Wert abnimmt, wenn der zweite Term größer wird. Anstelle einer einfachen Addition des ersten Terms und des zweiten Terms wie in (Gleichung 1) und (Gleichung 2) kann z.B. eine Gleichung, bei der der Term 1 und der Term 2 gewichtet und anschließend addiert werden, ebenfalls verwendet werden.
  • Es wird angemerkt, dass hier die statistische Verarbeitungseinheit 40 durch Berechnung den Erwartungswert des Umfangs festlegt, in dem die Sperrwartezeit eliminiert werden kann, wenn eine spezielle Ressourcensperrrealisierung hinausgezögert wird (ein Beispiel des Erwartungswerts des Sperrwartezeitausschlusses), und den Erwartungswert des Umfangs festlegt, in dem eine Sperrrealisierung hinausgezögert werden kann durch die Beziehung zu dem Zeitpunkt der Verwendung der Ressource für den Fall, dass eine Sperrrealisierung für eine spezielle Ressource hinausgezögert wird, und den Erwartungswert des Umfangs festlegt, in dem die Sperrbelegungszeit aus dem Gesamtsystem während der Zeit eliminiert werden kann. (Ein Beispiel des Zeitausschluss-Erwartungswerts und des gesamten Erwartungswerts) durch eine auf diesen Erwartungswerten beruhende Berechnung. Diese Erwartungswerte können jedoch durch das Durchsuchen von Werten, die zuvor in einer Tabelle oder dergleichen aufgestellt wurden, anstelle durch Berechnung der Erwartungswerte ermittelt werden. In diesem Zusammenhang kann die statistische Verarbeitungseinheit 40 ein Beispiel eines Erzeugungsabschnitts sein, der den Erwartungswert des Sperrwartezeitausschlusses, den Erwartungswert des Zeitausschlusses vor einer Verwendung und den Erwartungswert des Zeitausschlusses erzeugt.
  • Hier wird der Vorgang beschrieben, bei dem die Sperrsteuereinheit 30 die statistischen Zeitangaben abruft, die durch die statistische Verarbeitungseinheit 40 verwendet werden. Es wird angemerkt, dass ein Beispiel eines Falls beschrieben wird, bei dem die mittlere Sperrwartezeit und der mittlere Erwartungswert der Sperrrealisierungsverzögerungszeit weder bereits bekannt sind noch durch „Gleichung 1“ geschätzt werden können.
  • 3 ist ein Blockschaubild, das einen Zustand des Austauschs von Daten zwischen Komponenten des in 1 dargestellten Datenverarbeitungssystems darstellt. In dem Schaubild führt die Anwendung 10 eine zweite Sperrrealisierungsanforderung aus.
  • Zunächst überträgt die Anwendung 10 die erste Sperrrealisierungsanforderung zu der Sperrsteuereinheit 30, und die Sperrsteuereinheit 30 setzt den Sperranforderungszähler auf „1“. Des Weiteren überträgt die Sperrsteuereinheit 30 eine Sperrrealisierungsanforderung für die geforderten Ressourcen an das DBMS 20 und zeichnet zu diesem Zeitpunkt außerdem die Sperranforderungszeit auf.
  • Wenn dagegen die Sperrrealisierungsantwort für die angeforderten Ressourcen von dem DBMS 20 empfangen wird, zeichnet die Sperrsteuereinheit 30 diese Zeit als die Sperrrealisierungszeit auf. Des Weiteren überträgt die Sperrsteuereinheit 30 die Sperrrealisierungsantwort an die Anwendung 10 und zeichnet diese Zeit als die Realisierungszeit einer anfänglichen Sperre auf.
  • Wenn daraufhin die Anwendung 10 eine zweite Sperrrealisierungsanforderung zu der Sperrsteuereinheit 30 überträgt, zeichnet die Sperrsteuereinheit 30 diese Zeit als die Zeit einer nachfolgenden Sperranforderung auf und setzt den Sperranforderungszähler und den Zähler der nachfolgenden Sperranforderung auf „1“. Die Sperrsteuereinheit 30 überträgt des Weiteren eine Sperrrealisierungsanforderung für die angeforderten Ressourcen zu dem DBMS 20 und zeichnet zu diesem Zeitpunkt außerdem die Sperranforderungszeit auf.
  • Wenn dagegen die Sperrrealisierungsantwort für die angeforderten Ressourcen von dem DBMS 20 empfangen wird, zeichnet die Sperrsteuereinheit 30 diese Zeit als die Sperrrealisierungszeit auf. Des Weiteren überträgt die Sperrsteuereinheit 30 die Sperrrealisierungsantwort an die Anwendung 10.
  • Es wird angemerkt, dass im Vorhergehenden eine Sperrrealisierungsanforderung für lediglich ein angefordertes Vermögen von der Anwendung 10 zu dem DBMS 20 für die erste Sperrrealisierungsanforderung übertragen wurde. Es ist jedoch für die Anwendung 10 möglich, eine Sperrrealisierungsanforderung für eine Vielzahl von Ressourcen zu dem DBMS 20 für die erste Sperrrealisierungsanforderung zu übermitteln, wie etwa in dem Fall, wenn die Nummer der Sperrreihenfolge in der Sperrobjektliste klein ist und Ressourcen vorhanden sind, bei denen noch keine Sperre realisiert wurde. In diesem Fall werden die Sperranforderungszeit und die Sperrrealisierungszeit für jede Sperrrealisierungsanforderung aufgezeichnet.
  • Auf diese Weise ruft die Sperrsteuereinheit 30 die Sperranforderungszeit, die Sperrrealisierungszeit, die Anforderungszeit der nächsten Sperre, die Anforderungszeit der anfänglichen Sperre, den Sperranforderungszähler und den Anforderungszähler der nachfolgenden Sperre als statistische Zeitangaben ab. Dabei ist die Sperranforderungszeit die Anforderungszeit, an der eine Sperrrealisierung für eine spezielle Ressource in Bezug auf die Software angefordert wird, wobei die erste Anforderungszeit ein Beispiel ist; die Sperrrealisierungszeit ist die Realisierungszeit zum Realisieren einer Sperre an einer speziellen Ressource durch die Software, wobei die erste Realisierungszeit ein Beispiel ist; die Realisierungszeit einer anfängliche Sperre ist ein Beispiel der zweiten Realisierungszeit, wenn eine Sperre an speziellen Ressourcen für den Fall realisiert wurde, dass das Realisieren einer Sperre an speziellen Ressourcen als die erste Anforderung einer Ressourcensperrrealisierung durch das Anwendungsprogramm angefordert wurde; und die Anforderungszeit der nachfolgenden Sperre ist ein Beispiel der zweiten Anforderungszeit, wenn eine Sperrrealisierung von speziellen Ressourcen für den Fall angefordert wurde, dass eine Sperrrealisierung der speziellen Ressourcen als eine zweite oder nachfolgende Sperrrealisierung der Ressourcen durch das Anwendungsprogramm angefordert wurde. Ferner ist der Sperranforderungszähler ein Beispiel für die Anzahl, wie oft eine Sperrrealisierung für eine spezielle Ressource angefordert wurde, und der Zähler nachfolgender Sperranforderungen ist ein Beispiel für die Anzahl, wie oft eine Sperranforderung für spezielle Ressourcen als eine zweite oder nachfolgende Anforderung für eine Sperrrealisierung der Ressourcen durch das Anwendungsprogramm angefordert wurde. Des Weiteren ist die Sperrsteuereinheit 30 ein Beispiel eines Abrufabschnitts, der das Konto abruft, eines Abrufabschnitts, der die Anforderungszeit und die Realisierungszeit abruft, und eines Abrufabschnitts, der die Zeit der ersten Anforderung, die Zeit der ersten Realisierung, die Zeit der zweiten Anforderung und die Zeit der zweiten Realisierung abruft.
  • Des Weiteren zeichnet die Sperrsteuereinheit 30 die abgerufenen statistischen Zeitangaben in einem Speicherabschnitt für statistische Zeitangaben auf, der in die Einheit integriert, in den Zeichnungen jedoch nicht gezeigt ist.
  • 4 ist ein Schaubild, das ein Beispiel der statistischen Zeitangaben veranschaulicht, die durch den Speicherabschnitt für statistische Zeitangaben aufgezeichnet werden.
  • Wie in dem Schaubild dargestellt sind die statistischen Zeitangaben der Transaktionskennung, der Ressourcenkennung, der Sperranforderungszeit, der Sperrrealisierungszeit, der Zeit der anfänglichen Sperrrealisierung, der Zeit der nachfolgenden Sperranforderung, dem Sperranforderungszähler und dem Zähler nachfolgender Sperranforderungen zugehörig.
  • Die Transaktionskennung stellt Informationen dar, die eine Transaktion unterscheiden, die eine einzelne Verarbeitungseinheit ist, die eine Vielzahl von Vorgängen enthält, wobei eine Anwendung 10 die Ressourcen einer Datenbank verwendet.
  • Die Ressourcenkennung stellt Informationen dar, die die Ressourcen unterscheiden, die von der Anwendung 10 verwendet werden.
  • Die Sperranforderungszeit ist die Zeit, zu der eine Sperrrealisierung in dem DBMS 20 durch die Sperrsteuereinheit 30 angefordert wurde, und die Sperrrealisierungszeit ist die Zeit, zu der das DBMS 20 berichtet, dass eine Sperre durch die Sperrsteuereinheit 30 realisiert wurde.
  • Die Zeit der anfänglichen Sperrrealisierung ist die durch die Sperrsteuereinheit 30 berichtete Zeit, zu der eine Sperre durch die Anwendung 10 realisiert wurde, auf der Grundlage der Realisierungsanforderung der ersten Sperre von der Anwendung 10, und die Anforderungsinformation einer nachfolgenden Sperre ist die Zeit, zu der die Sperrsteuereinheit 30 von der Anwendung eine Realisierungsanforderung einer zweiten oder nachfolgenden Sperre empfängt.
  • Der Sperranforderungszähler ist ein Zähler, der die Tatsache aufzeichnet, dass eine Sperrrealisierungsanforderung durch die Anwendung 10 gestellt wurde, und der Anforderungszähler einer nachfolgenden Sperre ist ein Zähler, der die Tatsche aufzeichnet, dass von der Anwendung 10 eine Realisierungsanforderung für eine zweite oder nachfolgende Sperre empfangen wurde.
  • Anschließend wird die Funktionsweise des Datenverarbeitungssystems der Ausführungsform der vorliegenden Erfindung beschrieben.
  • Das Datenverarbeitungssystem weist eine Anwendung 10 auf, die eine Vielzahl von Sperrsubjektressourcen während eines Vorgangs 11 zum Übertragen einer Sperrabsicht zu einer Sperrsteuereinheit 30 überträgt. Deswegen erzeugt die Sperrsteuereinheit 30 eine Sperrsubjektliste, indem eine Vielzahl von Sperrsubjektressourcen, die von einer Anwendung 10 übertragen wurden, während eines Vorbereitungsvorgangs 31 in Übereinstimmung mit der Sperrreihenfolge in der Tabelle 50 der Sperrreihenfolge angeordnet werden. Im Folgenden wird ein Fall beschrieben, bei dem eine Sperrsubjektliste erzeugt wird, die die Ressourcen „A“, „B“ und „C“ in dieser Reihenfolge anordnet.
  • Anschließend überträgt die Anwendung 10 eine Sperrrealisierungsanforderung zu der Sperrsteuereinheit 30 in einem Vorgang 32 der Anforderung einer Sperrrealisierung. Anschließend führt die Sperrsteuereinheit 30 den Sperrrealisierungsvorgang 32 aus.
  • 5-1 und 5-2 sind Ablaufpläne, die ein Funktionsbeispiel einer Sperrsteuereinheit 30 zu diesem Zeitpunkt veranschaulichen.
  • Wie in 5-1 dargestellt ermittelt die Sperrsteuereinheit 31, wie oft diese Sperrrealisierungsanforderung gemacht wurde (Schritt 301).
  • Wenn dabei festgestellt wird, dass diese Sperrrealisierungsanforderung die erste Sperrrealisierungsanforderung ist, werden die folgenden Operationen ausgeführt. Mit anderen Worten, die Sperrsteuereinheit 30 zeichnet „1“ in dem Sperranforderungszähler auf (Schritt 302). In 4 wird z.B. „1“ für die Ressource „B“ angegeben, die durch eine erste Sperrrealisierungsanforderung angefordert wurde.
  • Anschließend bezieht sich die Sperrsteuereinheit 30 auf die in der Tabelle 50 der Sperrreihenfolge aufgezeichnete Sperrreihenfolge und ermittelt, ob die Nummer der Sperrreihenfolge kleiner als die gerade angeforderte Ressource ist und ermittelt, ob die Ressource, für die keine Sperre realisiert wurde, auf der Sperrsubjektliste steht (Schritt 304).
  • Das Ergebnis besteht darin, dass, wenn ermittelt wird, dass eine Ressource auf der Sperrsubjektliste steht, die eine kleinere Nummer der Sperrreihenfolge aufweist als die Ressource, die gerade angefordert wird und für die zur Zeit keine Sperre realisiert wurde, die Sperrsteuereinheit 30 zu dem DBMS 20 eine Sperrrealisierungsanforderung für die Ressourcen mit der kleinsten Nummer der Sperrreihenfolge von diesen Ressourcen überträgt und diese Zeit als die Sperranforderungszeit aufzeichnet (Schritt 305). Des Weiteren wird in Reaktion auf diese Sperrrealisierungsanforderung eine Sperrrealisierungsantwort, die bestätigt, dass eine Ressourcensperre realisiert wurde, durch das DBMS 20 empfangen, und diese Zeit wird als die Sperrrealisierungszeit aufgezeichnet (Schritt 306). In 4 wurde z.B. die Ressource „B“ durch eine erste Sperrrealisierungsanforderung angefordert, jedoch ist die Ressource „A“ vorhanden, die eine kleinere Nummer der Reihenfolge als die Ressource „B“ aufweist, so dass die Sperranforderungszeit „T11“ und die Sperrrealisierungszeit „T21“ für die Ressource „A“ aufgezeichnet werden.
  • Anschließend kehrt der Vorgang zum Schritt 304 zurück, und die Sperrsteuereinheit 30 ermittelt, ob in der Sperrsubjektliste eine Ressource mit einer Nummer der Sperrreihenfolge vorhanden ist, die kleiner ist als die der gegenwärtig angeforderten Ressource und für die keine Sperre realisiert wurde, und dieser Vorgang wird ausgeführt, bis keine weitere derartige Ressource vorhanden ist. Es wird angemerkt, dass diese Ermittlung ausgeführt wird, indem aufgezeichnet wird, dass die Ressourcen, für die eine Sperre realisiert wurde, gesperrt worden sind.
  • Des Weiteren, wenn die Nummer der Sperrreihenfolge kleiner ist als die der gegenwärtig angeforderten Ressource und festgestellt wird, dass keine weiteren Ressourcen vorhanden sind, für die keine Sperre realisiert wurde, sendet die Sperrsteuereinheit 30 eine Sperrrealisierungsanforderung für die gegenwärtig angeforderte Ressource zu dem DBMS 20 und zeichnet diese Zeit als die Sperranforderungszeit auf (Schritt 307). Des Weiteren wird eine Sperrrealisierungsantwort empfangen, die aussagt, dass durch das DBMS 20 eine Ressourcensperre realisiert wurde in Reaktion auf die Sperrrealisierungsanforderung und die Zeit als die Sperrrealisierungszeit aufgezeichnet wurde (Schritt 308). In 4 werden z.B. in Bezug auf die Ressource „B“, für die eine erste Sperrrealisierungsanforderung angefordert wurde, eine Sperranforderungszeit „T12“ und eine Sperrrealisierungszeit „T22“ aufgezeichnet, die zeitlich nach der Sperrrealisierungszeit für die Ressource „A“ liegen.
  • Des Weiteren überträgt die Sperrsteuereinheit 30 zu der Anwendung 10 eine Sperrrealisierungsantwort, die aussagt, dass eine Sperre für die gerade angeforderte Ressource in Reaktion auf die Sperrrealisierungsanforderung realisiert wurde, und die Zeit wird als Realisierungszeit einer anfänglichen Sperre aufgezeichnet (Schritt 309). In 4 wird z.B. in Bezug auf die Ressource „B“, für die eine erste Sperrrealisierungsanforderung angefordert wurde, eine Anforderungszeit „T31“ einer anfänglichen Sperre aufgezeichnet. Die Realisierungszeit einer anfänglichen Sperre für die Ressource „B“ wird jedoch später zu der Realisierungszeit einer anfänglichen Sperre einer anderen Ressource verschoben, so dass die Spalte Zeit einer anfänglichen Sperranforderung oder Ressource „B“ leer sein wird.
  • Wenn dagegen festgestellt wird, dass die aktuelle Sperrrealisierungsanforderung im Schritt 301 eine zweite oder nachfolgende Sperrrealisierungsanforderung ist, wird die folgende Operation ausgeführt.
  • Mit anderen Worten, wie in 5-2 veranschaulicht zeichnet die Sperrsteuereinheit 30 „1“ im Zähler der Sperranforderung und im Zähler der nachfolgenden Sperranforderung auf und zeichnet außerdem die Zeit als die Zeit einer nachfolgenden Sperranforderung auf (Schritt 352). Es wird angemerkt, die Realisierungszeit der anfänglichen Sperre für die Ressource, für die eine erste Sperrrealisierungsanforderung angefordert wurde, wird zu der Spalte für die Zeit der anfänglichen Sperrrealisierung für die gerade angeforderte Ressource verschoben.
  • In 4 werden z.B. in Bezug auf die Ressource „A“, für die eine zweite Sperrrealisierungsanforderung angefordert wurde, die Zeit „T32“ der nachfolgenden Sperranforderung, „1“ für den Sperranforderungszähler und „1“ für den Zähler nachfolgender Sperranforderungen aufgezeichnet, wobei die Zeit „T31“ der anfänglichen Sperrrealisierung, die für die Ressource „B“ aufgezeichnet wurde, außerdem aufgezeichnet wird.
  • Anschließend ermittelt die Sperrsteuereinheit 30, ob eine Sperre für die gerade angeforderte Ressource bereits realisiert wurde (Schritt 353). Wenn eine Sperre für eine Ressource, für die noch keine Sperre realisiert wurde, im Schritt 305 und im Schritt 306 von 5-1 oder im Schritt 355 und im Schritt 356 der nachfolgend beschriebenen 5-2 realisiert wird, erfolgt dieser Typ der Ermittlung, da die Möglichkeit besteht, dass die Sperre für die gerade angeforderte Ressource bereits realisiert wurde.
  • Wenn dabei festgestellt wird, dass für die gerade angeforderte Ressource eine Sperre bereits realisiert wurde, geht der Vorgang zum Schritt 359.
  • Wenn dagegen festgestellt wird, dass für die gerade angeforderte Ressource noch keine Sperre realisiert wurde, nimmt die Sperrsteuereinheit 30 Bezug auf die in der Tabelle 50 der Sperrreihenfolge aufgezeichnete Sperrreihenfolge und ermittelt, ob die Nummer einer Sperrreihenfolge kleiner ist als das gerade angeforderte Vermögen (asset) und ob eine Ressource, für die noch keine Sperre realisiert wurde, vorhanden ist, die in der Sperrsubjektliste an einer höherer Stelle steht (Schritt 354).
  • Als ein Ergebnis, wenn die Nummer einer Sperrreihenfolge kleiner als die gerade angeforderte Ressource ist und festgestellt wird, dass Ressourcen vorhanden sind, für die keine Sperre realisiert wurde, überträgt die Sperrsteuereinheit 30 eine Sperrrealisierungsanforderung für die Ressource mit der kleinsten Nummer der Reihenfolge zu dem DBMS 20 und zeichnet diese Zeit als die Sperranforderungszeit auf (Schritt 355). Des Weiteren wird eine Sperrrealisierungsantwort empfangen, die angibt, dass in Reaktion auf die Sperrrealisierungsanforderung durch das DBMS 20 eine Ressourcensperre realisiert wurde, und die Zeit wird als die Sperrrealisierungszeit aufgezeichnet (Schritt 356).
  • Anschließend kehrt der Vorgang zum Schritt 354 zurück, und die Sperrsteuereinheit 30 ermittelt, ob in der Sperrsubjektliste eine Ressource vorhanden ist mit einer kleineren Nummer der Sperrreihenfolge als die gerade angeforderte Ressource und für die noch keine Sperre realisiert wurde, bis kein derartiges Vermögen mehr vorhanden ist. Es wird angemerkt, dass das Ermitteln ausgeführt werden kann, indem aufgezeichnet wird, dass für die Ressource aus den Ressourcen auf der Sperrsubjektliste, für die eine Sperre realisiert werden soll, eine Sperrrealisierung durchgeführt wurde.
  • Des Weiteren, wenn die Nummer der Sperrreihenfolge kleiner ist als die gerade angeforderte Ressource und festgestellt wird, dass keine weiteren Ressourcen vorhanden sind, für die keine Sperre realisiert werden konnte, überträgt die Sperrsteuereinheit 30 eine Sperrrealisierungsanforderung für die gerade angeforderte Ressource zu dem DBMS 20 und zeichnet diese Zeit als die Sperranforderungszeit auf (Schritt 357). Des Weiteren wird eine Sperrrealisierungsantwort empfangen, die aussagt, dass durch das DBMS 20 in Reaktion auf die Sperrrealisierungsanforderung eine Ressourcensperre realisiert wurde, und die Zeit wird als die Sperrrealisierungszeit aufgezeichnet (Schritt 358). In 4 werden z.B. in Bezug auf die Ressource „C“, für die eine dritte Sperrrealisierungsanforderung angefordert wurde, eine Sperranforderungszeit „T13“ und eine Sperrrealisierungszeit „T23“, die zeitlich nach der Sperrrealisierungszeit für die Ressource „A“ liegen, aufgezeichnet.
  • Des Weiteren überträgt die Sperrsteuereinheit 30 an die Anwendung 10 eine Sperrrealisierungsantwort, die angibt, dass für die gerade angeforderte Ressource in Reaktion auf die Sperrrealisierungsanforderung eine Sperre realisiert wurde (Schritt 359).
  • Wenn die Sperrsteuereinheit 30 statistische Zeitangaben auf diese Weise in der Einheit in dem Aufzeichnungsabschnitt für statistische Zeitangaben aufzeichnet, verarbeitet die statistische Verarbeitungseinheit 40 die statistischen Zeitangaben, die in dem Aufzeichnungsabschnitt für statistische Zeitangaben aufgezeichnet wurden.
  • 6 ist ein Ablaufplan, der ein Funktionsbeispiel der statistischen Verarbeitungseinheit 40 zu diesem Zeitpunkt zeigt.
  • Wie in der Darstellung veranschaulicht ruft die statistische Verarbeitungseinheit 40 statistische Zeitangaben aus dem Aufzeichnungsabschnitt für statistische Zeitangaben und Datensätze aus dem in den Zeichnungen nicht gezeigten Speicher ab, der sich in der Einheit befindet.
  • Anschließend berechnet die statistische Verarbeitungseinheit 40 die mittlere Sperrwartezeit auf der Grundlage der Sperranforderungszeit und der Sperrrealisierungszeit für alle Ressourcen, die in den statistischen Zeitangaben enthalten sind (Schritt 402). Wenn z.B. statistische Zeitangaben in der in 4 gezeigten Form aufgezeichnet sind, wird die Differenz zwischen der Sperranforderungszeit und der Sperrrealisierungszeit für jede Kombination aus Transaktionskennung und Ressourcenkennung berechnet, und dann wird die mittlere Sperrwartezeit durch Dividieren dieser Differenz durch die Anzahl von Kombinationen von Transaktionskennung und Ressourcenkennung berechnet.
  • Anschließend berechnet die statistische Verarbeitungseinheit 40 die mittlere erwartete Zeitdauer der Sperrrealisierungsverzögerung auf der Grundlage der Realisierungszeit einer anfänglichen Sperre und der Anforderungszeit nachfolgender Sperren für alle Ressourcen, die in den statistischen Zeitangaben enthalten sind (Schritt 403). Wenn z.B. statistische Zeitangaben in der in 4 gezeigten Form aufgezeichnet sind, wird die Differenz zwischen der Zeit der anfänglichen Sperrrealisierung und der Zeit nachfolgender Sperranforderungen für jede Kombination von Transaktionskennung und Ressourcenkennung berechnet, und dann wird die mittlere erwartete Zeit der Sperrrealisierungsverzögerung berechnet, indem diese Differenz durch die Anzahl von Kombinationen aus Transaktionskennung und Ressourcenkennung dividiert wird. In diesem Fall werden jedoch Kombination aus Transaktionskennung und Ressourcenkennung, für die die Realisierungszeit einer anfänglichen Sperre und die Anforderungszeit nachfolgender Sperren nicht aufgezeichnet wurden, nicht berücksichtigt.
  • Anschließend konzentriert sich die statistische Verarbeitungseinheit 40 auf eine Ressource aus allen Ressourcen und führt die folgende Operation an dieser Ressource als die Bewertungssubjektressource aus.
  • Mit anderen Worten, die statistische Verarbeitungseinheit 40 berechnet zunächst den Sperranforderungs-Zählwert auf der Grundlage des Sperranforderungszählers für die Bewertungssubjektressource (Schritt 404). Wenn z.B. statistische Zeitangaben in einer in 4 veranschaulichten Form aufgezeichnet sind, wird ein Datensatz, der die Ressourcenkennung der Bewertungssubjektressource enthält, aus den statistischen Zeitangaben extrahiert, und die Summe des Sperranforderungszählers für diese Datensätze bzw. die Anzahl von Datensätzen wird ermittelt, und dieser Wert wird als Sperranforderungs-Zählwert verwendet.
  • Des Weiteren berechnet die statistische Verarbeitungseinheit 40 den Zählwert der nachfolgenden Sperranforderungen auf der Grundlage des Zählers nachfolgender Sperranforderungen für die Bewertungssubjektressource (Schritt 405). Wenn z.B. statistische Zeitangaben in der in 4 dargestellten Form aufgezeichnet sind, wird ein Datensatz, der die Ressourcenkennung der Bewertungssubjektressource enthält, aus den statistischen Zeitangaben extrahiert, und die Summe des Zählers nachfolgender Sperranforderungen für diese Datensätze wird bestimmt und dieser Wert wird als der Zählwert nachfolgender Sperranforderungen verwendet.
  • Des Weiteren berechnet die statistische Verarbeitungseinheit 40 den Bewertungswert für die Bewertungssubjektressource unter Verwendung der Gleichung „mittlere Sperrwartezeit x Sperranforderungszählwert + mittlere erwartete Zeitdauer der Sperrrealisierungsverzögerung x Zählwert nachfolgender Sperranforderungen“ (Schritt 406). Zu diesem Zeitpunkt wird der im Schritt 402 berechnete Wert als „mittlere Sperrwartezeit“ verwendet, der im Schritt 404 berechnete Wert wird als „Sperranforderungszählwert“ verwendet, der im Schritt 403 berechnete Wert wird als „mittlere erwartete Zeitdauer der Sperrrealisierungsverzögerung“ verwendet, und der im Schritt 405 berechnete Wert wird als „Zählwert nachfolgender Sperranforderungen“ verwendet.
  • Anschließend ermittelt die statistische Verarbeitungseinheit 40, ob andere Ressourcen vorhanden sind, für die kein Bewertungswert berechnet wurde (Schritt 407).
  • Wenn als Ergebnis festgestellt wird, dass Ressourcen vorhanden sind, für die kein Bewertungswert berechnet wurde, wird der Vorgang der Schritte 404 bis 406 wiederholt.
  • Wenn dagegen festgestellt wird, dass keine Ressourcen vorhanden sind, für die kein Bewertungswert berechnet wurde, werden sämtliche Ressourcen in der Reihenfolge des kleinsten Bewertungswerts sortiert (Schritt 408), und die sortierten Ergebnisse werden zu der Tabelle 50 der Sperrreihenfolge exportiert (Schritt 409).
  • Es wird angemerkt, dass die Sperrsteuereinheit 30 in diesem Funktionsbeispiel den Sperranforderungszähler aufzeichnet, der die Tatsache speichert, dass eine Sperrrealisierungsanforderung von der Anwendung 10 empfangen wurde, und den Zähler nachfolgender Sperranforderungen aufzeichnet, der die Tatsache speichert, dass eine zweite oder nachfolgende Sperrrealisierungsanforderung von der Anwendung 10 empfangen wurden, wobei die statistische Verarbeitungseinheit 40 den Sperranforderungs-Zählwert abruft, indem die Sperranforderungszähler für jede Ressource zählen, und den Zählwert nachfolgender Sperranforderungen abruft, indem die Zähler nachfolgender Sperranforderungen für jede Ressource zählen, wobei das jedoch keine Einschränkung darstellt. Die Sperrsteuereinheit 30 kann den Sperranforderungs-Zählwert ermitteln, indem die Zähler immer dann weiterzählen, wenn eine Sperrrealisierungsanforderung von der Anwendung 10 vorliegt, und ermittelt den Zählwert nachfolgender Sperranforderungen, indem die Zähler immer dann weiterzählen, wenn eine zweite oder nachfolgende Sperrrealisierungsanforderung vorliegt.
  • Des Weiteren wurde in diesem Funktionsbeispiel der Fall, bei dem die mittlere Sperrwartezeit und die mittleren erwarteten Zeitwerte der Sperrrealisierungsverzögerung (Formel 1) nicht bereits bekannt waren und nicht geschätzt werden konnten, als ein Beispiel verwendet, dies stellt jedoch keine Einschränkung dar. Wenn z.B. die mittlere Sperrwartezeit und die mittleren erwarteten Zeitwerte der Sperrrealisierungsverzögerung in (Formal 1) bereits bekannt sind oder geschätzt werden können oder wenn (Formel 2) verwendet wird, können die zweckmäßigen Änderungen ausgeführt werden.
  • Zunächst wird der Fall beschrieben, bei dem die mittlere Sperrwartezeit und die mittleren erwarteten Zeitwerte der Sperrrealisierungsverzögerung in (Formel 1) bereits bekannt sind oder geschätzt werden können. In diesem Fall werden der mittleren Sperrwartezeit und der mittleren erwarteten Zeitdauer der Sperrrealisierungsverzögerung Werte zugewiesen, und es besteht keine Notwendigkeit, diese Werte auf der Grundlage der statistischen Zeitangaben zu berechnen. Deswegen muss die Sperrsteuereinheit 30 die Sperrwartezeit, die Sperrrealisierungszeit, die Realisierungszeit einer anfänglichen Sperre und die Anforderungszeit nachfolgender Sperren nicht erfassen, und die statistische Verarbeitungseinheit 40 muss die Schritte 402 und 403 nicht ausführen.
  • Anschließend wird der Fall beschrieben, bei dem (Formel 2) verwendet wird. In diesem Fall werden der Zählwert der Sperranforderungen und der Zählwert nachfolgender Sperranforderungen nicht verwendet, deswegen muss die Sperrsteuereinheit 30 den Sperranforderungszähler und den Zähler nachfolgender Sperranforderungen nicht erfassen. Des Weiteren führt die statistische Verarbeitungseinheit 40 die Vorgänge von Schritt 402 bis Schritt 405 nicht aus und muss den Vorgang zum Berechnen des Werts für „(Sperrrealisierungszeit - Sperranforderungszeit) + (Zeit einer nachfolgenden Sperranforderung - Zeit einer anfänglichen Sperrrealisierung)“ nicht ausführen. Wenn zu diesem Zeitpunkt keine Zeit einer nachfolgenden Sperranforderung und keine Zeit einer anfänglichen Sperrrealisierung in dem Datensatz aufgezeichnet sind, der die Ressourcenkennung der Bewertungssubjektressource enthält, ist der Term (Zeit einer nachfolgenden Sperranforderung - Zeit einer anfänglichen Sperrrealisierung) „0“.
  • Deswegen werden bei der vorliegenden Ausführungsform die Ressourcen in der Tabelle 50 der Sperrreihenfolge so angeordnet, dass Ressourcen mit einem hohen Erwartungswert der Verringerung der Sperrrealisierungszeit an einer späteren Stelle stehen, falls die Sperrrealisierung hinausgezögert wird. Deswegen wird eine Blockierung verhindert, und es besteht die Möglichkeit, dass die Leistungsfähigkeit verbessert wird.
  • 7 ist ein Schaubild, das die Ergebnisse der Verkürzung der Sperrhaltezeit für die Ressource A durch zeitliche Verschiebung der Sperrrealisierung der Ressource A zeigt.
    1. (a) zeigt ein Beispiel für den Fall, wenn die Sperrreihenfolge so festgelegt wird, dass sie in der Reihenfolge der Ressourcen A, B erfolgt, wobei keine Optimierung ausgeführt wird.
    2. (b) zeigt ein Beispiel des Falls, wenn die Sperrreihenfolge optimiert wurde und so geändert wurde, dass sie in der Reihenfolge der Ressourcen B, A erfolgt. Die Wirkung 1 in dem Oval aus gestrichelten Linien zeigt die (Wirkung der möglichst großen Eliminierung der Sperrwartezeit aus der Sperrhaltezeit für den Fall, wenn die Sperrrealisierung hinausgezögert wird), und die Wirkung 2 in dem Oval aus gestrichelten Linien zeigt die „Wirkung der möglichst großen Eliminierung der Zeit, wenn eine Ressource nicht verwendet wird, aus der Sperrhaltezeit für den Fall, wenn die Sperrrealisierung hinausgezögert wird).
  • Abschließend wird eine geeignete Computerhardware-Konfiguration zum Anwenden der Ausführungsform der vorliegenden Erfindung beschrieben. 8 ist ein Schaubild, das ein Beispiel dieses Typs von Computerhardware-Konfiguration veranschaulicht. Wie in dem Schaubild dargestellt weist der Computer eine CPU (zentrale Verarbeitungseinheit) 90a, die ein Berechnungsmittel darstellt, einen Hauptspeicher 90c, der über einen M/B- (Motherboard) Chipsatz 90b mit der CPU 90a verbunden ist, und einen Anzeigemechanismus 90d auf, der über denselben M/B-Chipsatz 90b mit der CPU 90a verbunden ist. Des Weiteren sind eine Netzwerkschnittstelle 90f, eine Magnetplatteneinheit (HDD) 90g, ein Audio-Mechanismus 90h, eine Tastatur/Maus 90i und ein Diskettenlaufwerk 90j über eine Brückenschaltung 90e mit dem M/B-Chipsatz 90b verbunden.
  • Es wird angemerkt, dass in 8 die verschiedenen Komponenten über einen Bus verbunden sind. Zum Beispiel sind die CPU 90a und der M/B-Chipsatz 90b sowie der M/B-Chipsatz 90b und der Hauptspeicher 90c über einen CPU-Bus verbunden. Des Weiteren können der M/B-Chipsatz 90b und der Anzeigemechanismus 90d über einen AGP (beschleunigter Grafikanschluss) verbunden sein, wenn der Anzeigemechanismus 90d jedoch eine PCI-Karte (schnelle kompatible Video-Karte) enthält, können der M/B-Chipsatz 90b und die Videokarte über einen schnellen PCI-Bus (PCIe-Bus) verbunden sein. Wenn ferner eine Verbindung zu Brückenschaltung 90e erfolgt, kann die Netzwerkschnittstelle 90f z.B. PCI-express sein. Des Weiteren können eine serielle ATA (AT Attachment), Parallelübertragungs-ATA, PCI (Verbindung peripherer Komponenten) oder dergleichen für die Magnetplatteneinheit 90g verwendet werden. Außerdem kann ein USB (serieller Universalbus) für die Tastatur/Maus 90i und das Diskettenlaufwerk 90j verwendet werden.
  • Dabei kann die vorliegende Erfindung vollständig unter Verwendung von Hardware realisiert werden oder vollständig unter Verwendung von Software realisiert werden. Des Weiteren kann die vorliegende Erfindung unter Verwendung sowohl von Hardware als auch von Software realisiert werden. Des Weiteren kann die vorliegende Erfindung unter Verwendung eines Computers, eines Datenverarbeitungssystems oder eines Computerprogramms realisiert werden. Das Computerprogramm kann durch Aufzeichnen auf einem Medium, das durch einen Computer gelesen werden kann, bereitgestellt werden. Dabei gehören zu Beispielen des Mediums elektronische, magnetische, optische, elektromagnetische, Infrarot- oder Halbleitersysteme (Einheiten oder Ausrüstungen) oder ein Ausbreitungsmedium ist vorstellbar. Des Weiteren können Medien durch einen Computer gelesen werden, der Halbleiter, Festkörperspeichereinheiten, Magnetband, entnehmbare Computerdisketten, Direktzugriffsspeicher (RAM), Festwertspeicher (ROM), starre Magnetplatten und optische Platten enthält. Zu Beispielen optischer Platten gehören derzeit Compactdisk-Festwertspeicher (CD-ROM), Compactdisk-Read/Write (CD-R/W) und DVD.
  • Die vorliegende Erfindung wurde oben unter Verwendung einer Ausführungsform beschrieben, der technische Umfang der vorliegenden Erfindung ist jedoch nicht auf die oben erwähnten Ausführungsformen beschränkt. Einem Fachmann sollte klar sein, dass verschiedene Änderungen und Ersetzungen verwendet werden können, ohne vom Erfindungsgedanken und Umfang der vorliegenden Erfindung abzuweichen.
  • Bezugszeichenliste
  • 10
    Anwendung
    20
    DBMS
    30
    Sperrsteuereinheit
    40
    statistische Verarbeitungseinheit
    50
    Tabelle der Sperrreihenfolge

Claims (3)

  1. Verfahren zum parallelen Zugriff auf in Transaktionen genutzte Ressourcen, wobei jeweils in einer Transaktion vor dem Zugriff auf darin genutzte Ressourcen eine Reihenfolge ermittelt wird, in der der Erwerb von Zugriffssperren für diese Ressourcen angefragt wird, wobei diese Reihenfolge so ermittelt wird, dass sie der Reihenfolge entspricht, in der die jeweils erforderlichen Ressourcen einer Transaktion in einer zuvor ermittelten Sperrreihenfolge aller Ressourcen auftreten, wobei die Sperrreihenfolge aller Ressourcen so bestimmt wird, dass jeweils in einer Transaktion eine Zugriffssperre für eine Ressource mit einem kleineren Ausschlusserwartungswert vor einer Zugriffssperre für eine Ressourcen mit einem größerem Ausschlusserwartungswert angefordert wird, wobei der Ausschlusserwartungswert einer Ressource zunimmt allein mit der zuvor ermittelten, sich innerhalb einer bestimmten Zeitdauer ergebenden Summe der Wartezeiten jeweils von der Anforderung einer Zugriffssperre für die Ressource bis zu deren Erwerb oder auch zusätzlich mit der sich innerhalb der bestimmten Zeitdauer ergebenden Summe der Zeiten jeweils vom Erwerb einer Zugriffssperre für eine Ressource bis zur Anforderung einer nachfolgenden Zugriffssperre für eine andere Ressource innerhalb der Transaktion.
  2. Datenverarbeitungssystem, aufweisend in Transaktionen genutzte Ressourcen und ausgebildet zum Durchführen des Verfahrens nach Anspruch 1.
  3. Computerprogramm, welches, bei Ausführung durch ein Datenverarbeitungssystem mit in Transaktionen genutzten Ressourcen, das Datenverarbeitungssystem dazu veranlasst, das Verfahren nach Anspruch 1 durchzuführen.
DE102012221037.7A 2011-12-02 2012-11-19 Einheit und Verfahren zum Realisieren einer Ressourcensperre Active DE102012221037B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011264960A JP5939561B2 (ja) 2011-12-02 2011-12-02 資源のロックを獲得する装置及び方法
JP2011-264960 2011-12-02

Publications (2)

Publication Number Publication Date
DE102012221037A1 DE102012221037A1 (de) 2013-06-06
DE102012221037B4 true DE102012221037B4 (de) 2022-03-10

Family

ID=48431567

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012221037.7A Active DE102012221037B4 (de) 2011-12-02 2012-11-19 Einheit und Verfahren zum Realisieren einer Ressourcensperre

Country Status (4)

Country Link
US (2) US8898127B2 (de)
JP (1) JP5939561B2 (de)
DE (1) DE102012221037B4 (de)
GB (1) GB2498835B (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8943504B2 (en) * 2012-04-20 2015-01-27 Qualcomm Incorporated Tracking and releasing resources placed on a deferred unlock list at the end of a transaction
US9378225B2 (en) * 2013-08-06 2016-06-28 International Business Machines Corporation Core service build / deployment for hierarchical database
CN104268024B (zh) * 2014-09-24 2018-02-23 浪潮(北京)电子信息产业有限公司 一种实现进程互斥的方法和装置
JP6009518B2 (ja) * 2014-10-15 2016-10-19 三菱電機株式会社 電子制御装置
JP6357587B2 (ja) * 2015-12-30 2018-07-11 華為技術有限公司Huawei Technologies Co.,Ltd. 獲得ロック要求を処理するための方法及びサーバ
US10769128B2 (en) * 2017-01-31 2020-09-08 Salesforce.Com, Inc. Delegated key-level locking for a transactional multi-version key-value store
US11586614B2 (en) 2019-07-30 2023-02-21 Oracle International Corporation Native persistent store support for blockchains
US11640391B2 (en) * 2019-09-11 2023-05-02 Oracle International Corporation Supporting blockchain collections in a database
US11875178B2 (en) 2020-07-30 2024-01-16 Oracle International Corporation Using multiple blockchains for applying transactions to a set of persistent data objects in persistent storage systems
US20220114157A1 (en) * 2020-10-12 2022-04-14 Oracle International Corporation Lock management for distributed application pods
CN112699137B (zh) * 2021-01-04 2023-09-12 远光软件股份有限公司 一种跨系统的财务数据处理方法及装置
US11494347B1 (en) 2021-05-05 2022-11-08 Oracle International Corporation Efficient update-anywhere replication of queue operations on a replicated message queue

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040002974A1 (en) 2002-06-27 2004-01-01 Intel Corporation Thread based lock manager
US20080276025A1 (en) 2007-05-04 2008-11-06 Microsoft Corporation Lock inference for atomic sections

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02194442A (ja) * 1989-01-23 1990-08-01 Nec Corp 共有資源制御装置
US5283897A (en) 1990-04-30 1994-02-01 International Business Machines Corporation Semi-dynamic load balancer for periodically reassigning new transactions of a transaction type from an overload processor to an under-utilized processor based on the predicted load thereof
JPH0512041A (ja) 1991-07-03 1993-01-22 Nec Corp 共有資源排他制御方式
JP2570018B2 (ja) 1991-09-06 1997-01-08 日本電信電話株式会社 ロック区間の自動解析方法及びロック時間の計算方法
JPH05257902A (ja) 1992-03-10 1993-10-08 Fujitsu Ltd 処理プログラム・モードにおけるロック獲得処理方式
JPH06103091A (ja) 1992-09-18 1994-04-15 Hitachi Ltd 並列排他制御命令翻訳方法及びその装置とデータ処理装置
JPH06332789A (ja) 1993-05-27 1994-12-02 Toshiba Corp 並列処理装置及び共有データのロック方法
JPH0816456A (ja) * 1994-06-24 1996-01-19 Mitsubishi Electric Corp 資源管理装置
JP2850863B2 (ja) 1996-06-29 1999-01-27 日本電気株式会社 排他制御装置
JPH10143410A (ja) 1996-11-12 1998-05-29 Meidensha Corp データベース管理システムのトランザクション制御方法
JP2001084235A (ja) 1999-09-10 2001-03-30 Nec Corp ロック粒度統計情報を利用した排他制御方法及びプログラムを記録した機械読み取り可能な記録媒体
JP2002007148A (ja) 2000-06-21 2002-01-11 Mitsubishi Electric Corp 共有資源の排他制御システム及び資源ロック方法並びに記録媒体
JP2002032249A (ja) * 2000-07-19 2002-01-31 Ricoh Co Ltd 排他制御方法、排他制御装置、排他制御プログラムを記録した記録媒体、並びに、データベースシステム
US7360030B1 (en) 2004-06-01 2008-04-15 Sanbolic, Inc. Methods and apparatus facilitating volume management
US7844973B1 (en) * 2004-12-09 2010-11-30 Oracle America, Inc. Methods and apparatus providing non-blocking access to a resource
JP2006252176A (ja) 2005-03-10 2006-09-21 Nec Corp 性能劣化要因検出システム、解析サーバ、性能劣化要因検出方法およびプログラム
US20070039000A1 (en) 2005-08-10 2007-02-15 Hewlett-Packard Development Company, L.P. Lock order determination method and system
JP5055059B2 (ja) 2007-08-03 2012-10-24 株式会社日立製作所 データベース処理方法、その実施システム及びプログラム
US20100122253A1 (en) 2008-11-09 2010-05-13 Mccart Perry Benjamin System, method and computer program product for programming a concurrent software application
US8898191B2 (en) 2009-12-23 2014-11-25 International Business Machines Corporation Method for providing connections for application processes to a database server
JP5625379B2 (ja) * 2010-02-16 2014-11-19 日本電気株式会社 ロック競合管理装置、ロック競合管理方法およびプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040002974A1 (en) 2002-06-27 2004-01-01 Intel Corporation Thread based lock manager
US20080276025A1 (en) 2007-05-04 2008-11-06 Microsoft Corporation Lock inference for atomic sections

Also Published As

Publication number Publication date
US9189512B2 (en) 2015-11-17
DE102012221037A1 (de) 2013-06-06
US20140379679A1 (en) 2014-12-25
US8898127B2 (en) 2014-11-25
GB2498835A (en) 2013-07-31
US20130144853A1 (en) 2013-06-06
JP5939561B2 (ja) 2016-06-22
GB2498835B (en) 2014-01-01
JP2013117852A (ja) 2013-06-13

Similar Documents

Publication Publication Date Title
DE102012221037B4 (de) Einheit und Verfahren zum Realisieren einer Ressourcensperre
DE102009049078B4 (de) Verwendung von Ausführer-Wissen über Speicherregion-Ordnungsanforderungen zum Modifizieren von Transaktionsattributen
DE102012216568B4 (de) Scheduling und Managen von Rechentasks mit unterschiedlichen Ausführungsprioritätsstufen
DE112010003610T5 (de) Vorabfüllen eines Cachespeichers bei Threadmigration
DE112017007224T5 (de) Momentaufnahmen-Verwaltung in einer Blockchain
DE202012013462U1 (de) Datenverarbeitung in einem Mapreduce-Framework
DE102016204680A1 (de) Auswählen von Strategien zum Zuordnen von Ressourcen und Lösen von Ressourcenkonflikten
DE602005002062T2 (de) Optimierung der Sperrgranularität mittels Bereichssperren
DE112010004187T5 (de) Verfahren und System zum Verarbeiten von Netzwerkereignissen
DE202012013432U1 (de) Speichern von Daten auf Speicherknoten
DE112012000212T5 (de) Technik für live Analyse-basierte Rematerialisation zur Reduktion von Registerdruck und zur Verbesserung von Parallelität
DE112012004798T5 (de) Anpassung der Auslagerungsgeschwindigkeit auf Grundlage von Anforderungen an Lese- und Schreib-Antwortzeiten
DE112017007656T5 (de) Verschobene aktualisierung von datenbank-hashcode in einer blockchain
DE112007000645B4 (de) Dynamisch aktualisierbarer, adaptiver Leerlauf-Zeitgeber
DE102006009617A1 (de) Systeme und Verfahren zum Steuern von mehreren Hot Plug Vorgängen
DE112013006646B4 (de) Computer, System und computerlesbares Ablagemedium zum Identifizieren von Arbeitslast und Dimensionierung von Puffern zum Zweck der Volumenreplikation
DE102017213160B4 (de) Kompilierung für knotenvorrichtungs-GPU-basierte Parallelverarbeitung
DE10393803T5 (de) Verfahren und Vorrichtung zum Bestimmen einer Seitenverwaltungsimplementierung bei dynamischem Speicher mit wahlfreiem Zugriff
DE112018001290T5 (de) Verfahren zum Schätzen der Löschbarkeit von Datenobjekten
DE102021127522A1 (de) Verwaltung der arbeitsbelastung anhand eines trainierten modells
DE102013107500A1 (de) Techniken zum Lösen von linearen Gleichungssystemen mit mehreren rechten Seiten durch Krylov-Unterraumerweiterung
DE112012004169T5 (de) Überwachen der Ausführung von gespeicherten Prozeduren
DE112010004808T5 (de) Gleichzeitige Ausführung einer Anforderungsverarbeitung und von Analysen von Anforderungen
DE112018005359T5 (de) Verhindern eines Beibehaltens von Datensatzsperren durch Transaktionen mit langer Laufzeit
DE102018130166A1 (de) Latenzmessungstechnologie

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0021620000

Ipc: G06F0009520000

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final