DE19534819A1 - Verfahren und Vorrichtung zum Konfigurieren einer Datenbank - Google Patents
Verfahren und Vorrichtung zum Konfigurieren einer DatenbankInfo
- Publication number
- DE19534819A1 DE19534819A1 DE19534819A DE19534819A DE19534819A1 DE 19534819 A1 DE19534819 A1 DE 19534819A1 DE 19534819 A DE19534819 A DE 19534819A DE 19534819 A DE19534819 A DE 19534819A DE 19534819 A1 DE19534819 A1 DE 19534819A1
- Authority
- DE
- Germany
- Prior art keywords
- database
- information
- processes
- data objects
- data
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99935—Query augmenting and refining, e.g. inexact access
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur
Konfiguration einer Datenbank, insbesondere durch die Teilung
von Datenobjekten; dieser Vorgang der Teilung wird in der
Datenbanktechnik häufig auch als FRAGMENTIERUNG bezeichnet.
Weiterhin betrifft die Erfindung ein Verfahren und eine
Vorrichtung zur Verteilung von Datenobjekten in einer
Datenbank; dieser Vorgang wird in der Datenbanktechnik häufig
auch als ALLOKATION bezeichnet.
Um die Datensätze in einer Datenbank formal beschreiben zu
können, wurden Datenmodelle entwickelt, die alle in der
Datenbank enthaltenen Daten und Beziehungen untereinander
abbilden. Ein Beispiel für ein solches semantisches
beziehungsweise konzeptionelles Datenmodell ist das "Entity-
Relationship-Modell" (ERM). Aus dem semantischen Datenmodell
wird ein logisches Datenmodell abgeleitet. Logische
Datenmodelle sind das hierarchische Datenmodell, häufig auch
als "Baummodell" bezeichnet, das objekt-orientierte
Datenmodell und das relationale Datenmodell. Weiterhin
unterscheidet man zwischen zentralisierten Datenbanken und
verteilten Datenbanken.
In H. F. Korth und A. Silberschatz: "Database System
Concepts", McGraw-Hill, New York, 1986 werden verschiedene
Datenbankkonzepte vorgestellt und diskutiert. In einer
verteilten Datenbank sind die Daten auf verschiedenen
Speichermitteln gespeichert. In der Regel sind die Daten sogar
auf verschiedenen Computersystemen an verschiedenen Orten
gespeichert. Die verschiedenen Computersysteme sind über ein
Kommunikationsnetz miteinander verbunden und stehen über
verschiedene Kommunikationsmittel in Kontakt miteinander.
In S. Ceri: "Distributed Databases: Principles and Systems",
McGraw-Hill, New York, 1984 und in H. Kudlich: "Verteilte
Datenbanken: Systemkonzepte und Produkte", Siemens AG, Berlin,
1992 wird das Prinzip verteilter Datenbanken vorgestellt und
verschiedene verteilte Datenbanksystem diskutiert.
In S. Ceri, S. Navathe und G. Wiederhold: "Distribution Design
of Logical Database Schemas", IEEE Transactions on software
engineering, Vol. SE-9, No. 4 (July 1983), Seite 487-504 und
in S. Ceri, 3. Pernici und G. Wiederhold: "Distributed
Database Design Methodologies", Proceedings of the IEEE,
Vol. 75, No. 5 (May 1987), Seite 533-545 werden Vorschläge für
den Entwurf logischer Datenbanksysteme diskutiert und
Entwurfsverfahren für verteilte Datenbanken vorgestellt.
In R. Nussdorfer: "DRDA: Verteilte Datenbanken für heterogene
Umgebungen", Datenbank Extra, Hrsg.: U. Parthier: "DB2: Seine
Tools, Neuerungen und Möglichkeiten, IT Verlag für innovative
Technologien, Sauerlach, 1993, Seite 23-27 ist der
Industriestandard DRDA für verteilte Datenbanken beschrieben.
Die Architektur spezifiziert Protokolle und Konventionen, die
eine Verbindung zwischen Datenbanken verschiedener Hersteller
ermöglichen.
Der Übergang von dem logischen Datenbankschema zu einem
physikalischen Datenbankschema kann als Konfiguration der
Datenbank verstanden werden und wird beispielsweise durch
einen Datenbankadministrator durchgeführt.
In I. Fogg und M. Orlowska: "Valid Unbiased Fragmentation for
Distributed Database Design", Computers Math. Applic. (UK),
Vol. 25, No. 9, 1993, Seite 97-106 werden verschiedene
Fragmentierungsmöglichkeiten in verteilten Datenbanken
vorgestellt. Es werden nicht nur die horizontale und die
vertikale Fragmentierung vorgestellt, sondern auch
Kombinationsformen dieser Fragmentierungsarten.
In J. A. Bakker: "A Semantic Approach to Enforce Correctness
of Data Distribution Schemes", The Computer Journal (UK),
Vol. 37, No. 7, 1994, Seite 561-575 werden die Abfragesprache
Structured Query Language (SQL) und zwei Entity-Relationship
Ansätze auf ihre Benutzbarkeit für die Datenverteilung
untersucht. Ein neuer Ansatz basierend auf einem semantischen
Metamodell für die Fragmentierung und die Allokierung wird
beschrieben, wobei nur zwei Arten von horizontaler
Fragmentierung erlaubt sind.
In relationalen Datenbanken werden die Daten in Form von
Relationen abgelegt. Die Relationen können auch als Tabellen
betrachtet werden, wobei die Attribute der Relationen häufig
als Spalten der Tabellen dargestellt werden.
In "Distributed Relational Database Architecture: Evaluation
and Planning Guide", 2. Auflage, Doc. -Nr. SC26-4650-01, IBM,
San Jose (CA), USA, 1993 und in "Distributed Relational
Database Planning and Design Guide for DB2 Users",
Doc.-Nr. GG24-3577, IBM, San Jose (CA), USA, 1991, beides
Publikationen, die durch die Geschäftsstellen der
IBM Deutschland oder der IBM Corporation bezogen werden
können, sind die Architektur verteilter relationaler
Datenbanken sowie Entwurfsrichtlinien für verteilte
relationale Datenbanken beschrieben.
In Y. Zhang, M. E. Orlowska und R. Colomb: "An Efficient Test
for the Validity of Unbiased Hybrid Knowledge Fragmentation in
Distributed Databases", International Journal of Software
Engineering and Knowledge Engineering (Singapur), Vol. 2,
No. 4, 1992, Seite 589-609 werden drei Arten der
Fragmentierung relationaler Datenbanken beschrieben.
Die fortschreitende Globalisierung von Unternehmen zusammen
mit der Notwendigkeit zur Rationalisierung der
Produktionsverfahren führt in zunehmendem Maße zu einer
Reorganisation der Geschäftsprozesse sowie einer
Konsolidierung der Informationssysteme.
In H. Heilmann: "Workflow Management: Integration von
Organisation und Informationsverarbeitung", HMD, 176, 1994,
Seite 8-21, wird ein Geschäftsprozeß als ein abgrenzbarer, oft
arbeitsteiliger Prozeß bezeichnet, der zur Erstellung oder
Verwertung betrieblicher Leistungen führt. Den Schwerpunkt der
Betrachtung bildet dabei der dynamische Ablauf des Prozesses
von seiner Initiierung bis zum Abschluß. Häufig wird auch der
Begriff "workflow" anstelle des Begriffes "Geschäftsprozeß"
verwendet.
In F. Leymann and D. Roller: "Business Process Management with
FlowMark", Digest of papers, Cat. No. 94CH3414-0, Spring
COMPCON 94, 1994, Seite 230 to 234, wird das workflow-
Managementsystem IBM FlowMark beschrieben. Es werden sowohl
die Möglichkeiten der Modellierung von Geschäftsprozessen
vorgestellt als auch die Ausführung des Workflow-Managements
beschrieben. Das Produkt IBM FlowMark kann über die gängigen
Vertriebswege der IBM Deutschland beziehungsweise der
IBM Corporation erworben werden.
Flachere Organisationsstrukturen, wie sie beispielsweise unter
dem Begriff "Lean Management propagiert werden, können nur
dann erfolgreich eingeführt werden, wenn die
entscheidungstragenden Einheiten alle notwendigen
Informationen zur rechten Zeit zur Verfügung haben.
Das bedeutet, daß ineffektive Verwaltungsarbeiten, lange
Bearbeitungswege und Bearbeitungszeiten genauso verschwinden
müssen wie Insellösungen in der Informationsverarbeitung.
Daraus folgt, daß viele Unternehmen
ein Reengineering ihrer Geschäftsprozesse betreiben, um ihre Geschäftsprozesse zu optimieren,
eine Automatisierung der Standardgeschäftsprozesse vornehmen, um die Durchführung der Prozesse zu verbessern, und
eine Vereinheitlichung der Informationssysteme auf Grundlage einheitlicher und unternehmensweit gültiger Datenmodelle anstreben, um informationsseitig optimale Voraussetzungen zu schaffen.
ein Reengineering ihrer Geschäftsprozesse betreiben, um ihre Geschäftsprozesse zu optimieren,
eine Automatisierung der Standardgeschäftsprozesse vornehmen, um die Durchführung der Prozesse zu verbessern, und
eine Vereinheitlichung der Informationssysteme auf Grundlage einheitlicher und unternehmensweit gültiger Datenmodelle anstreben, um informationsseitig optimale Voraussetzungen zu schaffen.
Die Möglichkeiten moderner Datenbanken, wie beispielsweise der
Datenbank IBM Database 2, zur Verteilung der Daten einer
logischen Datenbank auf unterschiedliche physikalische
Lokationen trifft sich hier in ausgezeichneter Weise mit den
beiden oben beschriebenen Unternehmensmaßnahmen und der
globalen Struktur vieler Unternehmen; die Datenbank
IBM Database 2 kann über die gängigen Vertriebswege der
IBM Deutschland beziehungsweise der IBM Corporation erworben
werden.
Die bestehenden Datenbanksysteme unterstützen zwar die
Verteilung der Daten, aber sie geben keinerlei Hilfestellung,
wie die Daten, von einer semantischen Seite aus betrachtet,
auf die Knoten verteilt werden sollen. Vorgehensmodelle, die
von Kundenerfordernissen ausgehend, über ein
"Entity-Relationship" Modell (ERM) zu einem physikalischen
Datenbankschema kommen, betrachten insbesondere den Aspekt der
Verteilung der Daten nicht, oder nur im Hinblick auf die
schlichte Möglichkeit ohne Verfahrensanweisungen.
Der Erfindung liegt daher die Aufgabe zugrunde, die
Konfiguration einer Datenbank zu optimieren. Die Optimierung
soll dabei systemgesteuert möglich sein und insbesondere unter
Leistungsgesichtspunkten erfolgen. Weiterhin soll die
Optimierung unter Kostengesichtspunkten erfolgen.
Es ist weiterhin die Aufgabe der Erfindung, die Konfiguration
einer Datenbank nicht nur statisch vorzunehmen, etwa bei der
ersten Inbetriebnahme der Datenbank, sondern dynamisch,
d. h. es soll eine systemgesteuerte Rekonfiguration der
Datenbank während des Datenbankbetriebes möglich sein.
Die Aufgabe wird durch die in den unabhängigen
Patentansprüchen offenbarten Verfahren, Vorrichtungen und
Verwendung gelöst. Vorteilhafte Ausgestaltungen der Erfindung
sind in den zugehörigen abhängigen Patentansprüchen offenbart.
Die Konfiguration der Datenbank wird erfindungsgemäß durch die
Information gesteuert welche Prozesse in welcher Art und in
welchem Umfang auf die Datenobjekte der Datenbank zugreifen.
Insbesondere wird die Konfiguration von verteilten
relationalen Datenbanken gesteuert durch die Information
welche Prozesse auf welche Attribute der Relationen mit
welcher Häufigkeit lesend und mit welcher Häufigkeit
schreibend zugreifen.
Die Konfiguration der Datenbank kann dabei sowohl zum
Zeitpunkt der ersten Inbetriebnahme der Datenbank erfolgen;
weiterhin ist auch eine dynamische Rekonfiguration der
Datenbank während des Datenbankbetriebes möglich, um etwa
einem veränderten Datenbankbenutzerverhalten Rechnung zu
tragen.
Das im Patentanspruch 1 beschriebene Verfahren löst die
Aufgabe der Erfindung durch die Ermittlung und Speicherung der
Datenbankzugriffe und durch Teilung der Datenobjekte.
Die Prozesse, die auf die Daten zugreifen, können
beispielsweise Anfragen von Benutzern der Datenbank sein oder
auch Computerprogramme, die im Zuge ihres Ablaufes auf die
Daten der Datenbank zugreifen; insbesondere können es
Computerprogramme sein, die durch ein Workflow-
Managementsystem gesteuert werden.
Bei der Datenbank kann es sich um eine hierarchische, eine
objekt-orientierte oder um eine relationale Datenbank handeln.
Die Datenbank kann weiterhin zentralisiert oder verteilt sein.
Die Speicherung der Daten erfolgt in digitaler Form und kann
in jeder technisch-möglichen Form erfolgen; insbesondere
können die Daten auf elektronische Weise wie etwa in
Halbleiterspeichern gespeichert werden, auf magnetische Weise,
auf optische Weise oder auf eine Kombination dieser
Möglichkeiten gespeichert werden.
Die Datenobjekte bestimmen sich nach dem jeweiligen
Datenbankschema, d. h. es kann sich dabei beispielsweise um
die Baumstruktur eines hierarchischen Datenbankschemas
handeln, um die Datenobjekte in einem objekt-orientierten
Datenbankschema oder um die Relationen in einem relationalen
Datenbankschema.
Das Ermitteln der Zugriffe auf die Datenbank beinhaltet
beispielsweise die Ermittlung, ob ein Prozeß lesend oder
schreibend auf die Daten der Datenbank zugreift. Werden die
Zugriffe eines Workflow-Managementsystems auf die Datenbank
betrachtet, so bietet häufig das Workflow-Managementsystem
bereits die Möglichkeit, die Zugriffsinformation nach Art und
Umfang bereitzustellen. Die Speicherung der
Zugriffsinformation kann auf alle bekannten Methoden und
Techniken erfolgen, insbesondere ist eine elektronische,
magnetische oder optische Speicherung denkbar.
Weiterhin kann die Konfiguration der Datenbank insbesondere
durch eine Teilung der Datenobjekte der Datenbank erfolgen.
Das Teilen der Datenobjekte kann sowohl mit Redundanz
erfolgen, als auch ohne Redundanz erfolgen. Insbesondere ist
denkbar, daß die verschiedenen Teile des Datenobjektes jeweils
ein Schlüsselelement aufweisen, so daß eine Rekonstruktion des
ursprünglichen Datenobjektes eindeutig möglich ist.
Das im Patentanspruch 1 offenbarte Verfahren leistet
vorteilhaft die Konfiguration einer Datenbank ausgehend von
dem logischen Datenbankschema und der Information über die
Zugriffe auf die Datenbank. Durch eine Konfiguration nach
entsprechenden Kriterien lassen sich die erforderlichen
Datenbankresourcen reduzieren, wie beispielsweise
Rechenanlagen oder Speichersysteme. Dies hat den Vorteil von
geringerem Platzbedarfes, geringerem Energieverbrauch, höherer
Zuverlässigkeit und geringeren Kosten. Weiterhin läßt sich
durch eine Konfiguration nach entsprechenden Kriterien die
Leistungsfähigkeit der Datenbank erhöhen bei unveränderten
oder sogar reduzierten Kosten für die Datenbankanlage.
In einer Ausgestaltung der Erfindung gemäß dem Verfahren nach
Patentanspruch 2 leistet die Erfindung eine dynamische
Rekonfiguration der Datenbank. Dies ist vorteilhaft, weil
dadurch die Datenbankkonfiguration dynamisch den Veränderungen
der Datenbankanfragen angepaßt werden kann. Dadurch wird
vorteilhaft ein gleichbleibend hoher Standard der Datenbank
beispielsweise bezüglich Leistung, Zuverlässigkeit und Kosten
gewährleistet.
In einer weiteren Ausgestaltung der Erfindung gemäß
Patentanspruch 3 wird ein Datenobjekt geteilt, auf das zwei
Prozesse gleichzeitig zugreifen wollen. Dies ist vorteilhaft,
weil dadurch die Leistungsfähigkeit der Datenbank erhöht wird;
die Blockierung eines Datenobjektes für alle weiteren
Datenbankprozesse durch einen Prozeß, der nur auf einen Teil
des Datenobjektes zugreift, wird durch die Merkmale des
Patentanspruches 3 verhindert.
In einer weiteren Ausgestaltung der Erfindung gemäß
Patentanspruch 4 bietet die relationale Datenbank den Vorteil,
daß die relationale Abbildung der Daten in der Datenbank der
Realität näher kommt als viele andere logische
Datenbankmodelle. Dies erlaubt eine hohe
Bearbeitungsgeschwindigkeit der Datenbankzugriffe.
Den Datenobjekten entsprechen Relationen, die Attribute
aufweisen. Dem Teilen der Datenobjekte entspricht ein Teilen
der Relationen, wobei jeder Teil ein Schlüsselattribut erhält,
damit die Rekonstruktion der Gesamtrelation eindeutig und
vollständig möglich ist. Insbesondere kann eine Relation
geteilt werden, wenn zwei Prozeß versuchen gleichzeitig
versuchen, auf ein Attribut zuzugreifen. Dadurch können
zukünftig vorteilhaft beide Prozesse gleichzeitig auf jeweils
einen Teil der Relation zugreifen.
In einer weiteren Ausgestaltung der Erfindung gemäß
Patentanspruch 5 handelt es sich bei der Datenbank um eine
verteilte Datenbank. Dies ist vorteilhaft, weil viele
Datenbankanwendungen auf verschiedenen Orte verteilt sind,
so daß sich durch eine verteilte Datenbank nicht nur die
Leistungsfähigkeit der Datenbank durch kürzere
Datenübertragungswege erhöhen läßt, sondern auch die
Datenübertragungskosten reduzieren lassen.
Das erfindungsgemäße Verfahren verteilt hierzu Datenobjekte
und Teile von Datenobjekten und allokiert diese Datenobjekte
an den entsprechenden Orten. Der Einsatz verteilter
Datenbanken bietet weiterhin Vorteile, da kleinere Rechen- und
Speichereinheiten eingesetzt werden können, die eine hohe
Zuverlässigkeit, eine hohe Verfügbarkeit und nur geringe
Anschaffungs- und Betriebskosten erfordern.
In einer weiteren Ausgestaltung der Erfindung gemäß
Patentanspruch 6 wird für die Konfiguration der Datenbank die
Information über den Ort der Datenbankzugriffe ermittelt,
gespeichert und verwendet. Dies ist vorteilhaft, da hierdurch
bei verteilten Datenbanken ein wichtiges Kriterium für die
Konfiguration der verteilten Datenbank berücksichtigt werden
kann. Diese Ortsinformation kann gegebenenfalls vorteilhaft
von einem Workflow-Managementsystem bereitgestellt werden,
welches diese Information, zumindest teilweise, bereits
abgespeichert hat.
In einer weiteren Ausgestaltung der Erfindung gemäß der
Patentansprüche 7 und 8 handelt es sich um eine verteilte
relationale Datenbank. Die Bearbeitung der Informationen in
Matrixform ist vorteilhaft, da hierdurch komplexe Berechnungen
mit geringem Adressierungs- und damit Zeitaufwand durchführen
lassen. Weiterhin ist vorteilhaft, daß die Ergebnismatrix alle
für eine Konfiguration der Datenbank relevanten Daten in
übersichtlicher und leicht verarbeitbarer Weise enthält.
In einer weiteren Ausgestaltung der Erfindung gemäß des
Patentanspruches 9 wird auf die Ergebnismatrix eine
Bewertungsfunktion angewandt. Dies ist vorteilhaft, da sich
dadurch die Konfiguration der Datenbank entsprechend der
jeweiligen Bewertungsfunktion steuern und optimieren läßt.
So kann beispielsweise durch eine entsprechende erste
Bewertungsfunktion die Konfiguration der Datenbank gezielt auf
kurze Bearbeitungszeiten optimiert werden. Ebenso kann
beispielsweise eine entsprechende zweite Bewertungsfunktion
die Konfiguration der Datenbank hinsichtlich geringer
Übertragungs- oder Vorhaltekosten für die Daten optimiert
werden. Weitere Bewertungsfunktionen können
sicherheitsrelevante Aspekte, unternehmensspezifische Aspekte,
lokalspezifische Aspekte, Priorisierungen und ähnliches
berücksichtigen. Es sind auch beliebige Mischformen denkbar.
In einer weiteren Ausgestaltung der Erfindung gemäß des
Patentanspruches 10 wird eine Verteilungsfunktion eingesetzt,
um die Verteilung der Datenobjekte zu bestimmen. Diese
Verteilungsfunktion kann eine Verteilung nach den
unterschiedlichen Gesichtspunkten bestimmen, die sich zudem
verändern lassen.
Die Bewertungs- und Verteilungsfunktionen werden auf die
Ergebnismatrix nach den aus der Mathematik bekannten Regeln
der Matrizenrechnung angewandt und erlauben daher vorteilhaft
eine Berücksichtigung komplexer Situationen in kurzer Zeit mit
nur geringem Rechenaufwand. Weiterhin ist es vorteilhaft, daß
die Bewertungs- und Verteilungsfunktionen an sich ändernde
Randbedingungen einfach angepaßt werden können, und somit mit
geringem Aufwand eine dynamische Rekonfiguration des
Datenbanksystems gewährleistet ist.
Die in den Patentansprüchen 11 bis 16 beschriebenen
Vorrichtungen offenbaren insbesondere ein Computersystem,
welches in der Lage ist, das Verfahren auszuführen, wie es in
den Patentansprüchen 1 bis 10 beschrieben ist. Demzufolge
gelten für die Vorrichtungen die Vorteile, die bereits zu den
zugehörigen Verfahren genannt wurden.
Ebenso gelten für den im Patentanspruch 17 beschriebenen
Datenträger die Vorteile, die bereits zu den zugehörigen
Verfahren genannt wurden.
Des weiteren betrifft die Erfindung gemäß dem
Patentanspruch 18 die Verwendung der Information über
Datenzugriffe auf eine Datenbank für die Konfiguration der
Datenbank. Dies ist vorteilhaft, da hierdurch genau die
Konfiguration der Datenbank bestimmt wird, die für die aktuell
ablaufenden Datenbankabfragen optimal ist. Dies ist weiterhin
vorteilhaft, da hierdurch eine dynamische Rekonfiguration der
Datenbank mit geringem Aufwand, automatisierbar und flexibel
möglich ist.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen
dargestellt und wird nachfolgend näher beschrieben.
Es zeigen:
Fig. 1 zeigt eine Datenbank, auf weiche verschiedene
Prozesse zugreifen,
Fig. 2 zeigt eine verteilte Datenbank, in welcher die Daten
der Datenbank auf Speichermitteln verteilt sind,
Fig. 3 zeigt den schematischen Ablauf des erfinderischen
Verfahrens zur Konfiguration einer Datenbank,
Fig. 4 zeigt zeigt das erfindungsgemäße Verfahren, wenn es
sich bei der Datenbank um eine verteilte relationale
Datenbank handelt,
Fig. 5 zeigt zeigt eine Vorrichtung 510 zur Teilung von
Datenobjekten in einer Datenbank,
Fig. 6A bis 6C zeigen welche Subgeschäftsprozesse mit
welcher Häufigkeit auf die Attribute
zugreifen,
Fig. 7A bis 7C zeigen mit welcher Häufigkeit die
Subgeschäftsprozesse auf Orte zugreifen,
Fig. 8 zeigt die Verhältnisse zwischen Orten und Attributen
für den Vorgang des Schreibzugriffs,
Fig. 9A bis 9C zeigen die Verhältnisse zwischen Orten und
Attributen für den Vorgang des
Lesezugriffes,
Fig. 10 zeigt die Verhältnisse zwischen Orten und Attributen
für die Gesamtzugriffe,
Fig. 11 zeigt die Gesamtkosten gemäß dem Verfahren des
Zeilenoptimums,
Fig. 12 zeigt die Gesamtkosten gemäß dem Verfahren des
Spaltenoptimums,
Fig. 13 zeigt Cluster von Attributen an Orten auf der
Grundlage der Geschäftsprozesse,
Fig. 14 zeigt ausgewählte Cluster von Attributen an Orten
auf der Grundlage der Geschäftsprozesse, und
Fig. 15 zeigt eine Kostenbewertung ausgewählter Cluster von
Attributen an Orten auf der Grundlage der
Geschäftsprozesse.
Die Fig. 1 zeigt eine Datenbank 110, auf welche die
Prozesse 101, 102 und 103 zugreifen. Die Prozesse
kommunizieren dabei jeweils mit der Benutzeroberfläche 111 der
Datenbank 110. Das Datenbankmanagement 112 verwaltet die Daten
der Datenbank 110, die auf den Speichermitteln 113, 114
gespeichert sind. Unter das Verwalten der Datenbank fällt
dabei auch das Konfigurieren, das heißt beispielsweise das
Festlegen auf welchem Speichermittel 113, 114 in welcher Art
und in welcher Struktur die Daten gespeichert werden.
Die Prozesse 101, 102 und 103 können dabei sowohl
Benutzeranfragen gegen die Datenbank 110 sein oder
Computerprogramme, die auf die Datenbank 110 zugreifen.
Insbesondere können diese Prozesse 101, 102 und 103 auch
Geschäftsprozesse eines Unternehmens sein, die von einem
Workflow-Managementsystem gesteuert sind und als
Benutzerinteraktionen oder als Anwendungsprogramme auf die
Datenbank 110 zugreifen.
Die Fig. 2 zeigt eine verteilte Datenbank 210, in welcher die
Daten der Datenbank 210 auf den Speichermitteln 221, 222
und 223 verteilt sind. Die Speichermittel 221, 222 und 223
können dabei sowohl innerhalb eines Datenbankrechners verteilt
sein, auf verschiedene Datenbankrechner an einem gemeinsamen
Ort verteilt sein, auf verschiedenen Datenbankrechnern an
verschiedenen Orten verteilt sein oder auch global verteilt
sein. Die Verteilung der Daten beziehungsweise der
Speichermittel reflektiert dabei jeweils die Anwendung der
Datenbank beziehungsweise die Verteilung der Prozesse 201, 202
und 203, welche auf die verteilte Datenbank 210 zugreifen.
Die Speichermittel 221, 222 und 223 kommunizieren dabei
untereinander über entsprechende Datenleitungen 230.
Diese Datenleitungen 230 können sowohl nur innerhalb des
Gehäuses eines Datenbankrechners existieren oder können
staatenübergreifende Datenleitungen sein, wie beispielsweise
herkömmliche Telefonleitungen. Der Datenaustausch kann
drahtgebunden oder drahtlos, elektronisch oder optisch
erfolgen.
Die Fig. 3 zeigt den schematischen Ablauf des erfinderischen
Verfahrens zur Konfiguration einer Datenbank. Hierbei werden
zunächst die Zugriffe auf die Datenobjekte der Datenbank
erfaßt 301. Anschließend werden diese Zugriffe auf einem
Speichermittel 303 gespeichert 302. Abschließend erfolgt die
Konfiguration der Datenbank unter Verwendung der Information
über die Zugriffe auf die Datenobjekte der Datenbank 304.
Die Konfiguration kann dabei durch das Datenbankmanagement 112
der Datenbank 110 (siehe Fig. 1) erfolgen oder durch
Datenbank-externe Steuervorrichtungen erfolgen.
Die Fig. 4 zeigt das erfindungsgemäße Verfahren, wenn es sich
bei der Datenbank um eine verteilte relationale Datenbank
handelt, auf die Geschäftsprozesse zugreifen. In diesem Fall
wird in einem ersten Informationsblock in Form einer ersten
Matrix 401 die Information 411 abgespeichert, welcher
Geschäftsprozeß auf welche Attribute einer Relation der
verteilten relationalen Datenbank wie häufig und in welcher
Art zugegriffen wird. Hinsichtlich der Zugriffsart wird
beispielsweise zwischen lesenden und schreibenden Zugriffen
unterschieden. In einem zweiten Informationsblock wird in Form
einer zweiten Matrix 402 die Information 412 abgespeichert,
an welchem Ort welcher Geschäftsprozeß mit welcher Häufigkeit
stattfindet.
Die erste Matrix 401 wird entsprechend den mathematischen
Regeln zur Matrizenrechnung mit der zweiten Matrix 402
multipliziert, so daß eine Ergebnismatrix 403 entsteht, welche
die Information 413 enthält, von welchem Ort auf welches
Attribut einer Relation einer verteilten relationalen
Datenbank mit welcher Häufigkeit und in welcher Art
zugegriffen wird.
Auf diese Information 413 wird nun in einem weiteren Schritt
eine Bewertungsfunktion 404 angewandt, so daß eine bewertete
Ergebnismatrix entsteht. Diese Bewertungsfunktion 404
berücksichtigt beispielsweise die Geschwindigkeit, mit der von
einem bestimmten Ort auf ein bestimmtes Attribut der Relation
zugegriffen werden kann. Weiterhin kann diese
Bewertungsfunktion 404 berücksichtigen, welche
Übertragungskosten für die Übertragung eines Attributes vom
Ort der Speicherung dieses Attributes zum Ort des
Geschäftsprozesses, der dieses Attribut abfragt, benötigt.
Weiterhin kann diese Bewertungsfunktion berücksichtigen,
welche Speicherkosten an einem Ort für die Speicherung eines
bestimmten Attributes erforderlich sind.
Anschließend wird auf die bewertete Ergebnismatrix eine
Verteilungsfunktion 405 angewandt, die eine Verteilung der
Relationen auf die verschiedenen Speichermittel
beziehungsweise auf die verschiedenen Speicherorte der
verteilten relationalen Datenbank bestimmt. Diese
Verteilungsfunktion 405 berücksichtigt beispielsweise
spezifische Datenbankstrukturen, existierende Rechnerverbunde,
die Verfügbarkeit bestehender Verbindungsleitungen, oder auch
unternehmensspezifische Strukturen, Prioritäten, Gegebenheiten
oder Erfordernisse. Während des Konfigurierens 406 der
Datenbank werden die Daten auf die verschiedenen
Speichermittel verteilt. Die Verteilungsfunktion 405 kann bei
Bedarf beziehungsweise nach Möglichkeit auch direkt auf der
Basis der Ergebnismatrix 403 erfolgen; die Anwendung einer
Bewertungsfunktion 404 ist als eine Option des erfinderischen
Verfahrens zu betrachten.
Die Fig. 5 zeigt eine Vorrichtung 510 zur Teilung von
Datenobjekten in einer Datenbank 110. Bezüglich der
Datenbank 110 gelten die zur Fig. 1 gemachten Angaben.
Durch die Vorrichtung 510 werden die Zugriffe der
Prozesse 101, 102 und 103 auf die Datenobjekte über eine
Datenverbindung 540 ermittelt. Die Vorrichtung 510 wird
vorzugsweise durch ein Computersystem realisiert und weist
eine Recheneinheit 530 und Speichermittel 520 auf.
Über Steuerleitungen 550 steuert die Vorrichtung 510 das
Datenbankmanagement 112 der Datenbank 110 und auf diesem Wege
die Teilung beziehungsweise Verteilung der Datenobjekte in der
Datenbank 110.
Die folgenden Figuren zeigen ein Ausführungsbeispiel für die
Konfiguration einer verteilten relationalen Datenbank,
beispielsweise auf die Produktdatenbank eines multinational
tätigen Unternehmens. In diesem Beispiel greifen sieben
Subgeschäftsprozesse sg1 bis sg7 auf die acht Attribute
Auftrags#, Kunden#, Produkt#, Datum, APos, APosWert, GAWert
und AStatus der Relation AUFTRAG zu. Auf die Datenbank wird in
den Orten Berlin, London und Tokio zugegriffen.
Subgeschäftsprozesse sind Einheiten in einem oder mehreren
Geschäftsprozessen, die als kleinste Einheiten betrachtet
werden, welche auf Daten zugreifen. Falls noch keine
Geschäftsprozesse oder Subgeschäftsprozesse definiert sind,
werden diese aus den Anwendungen abgeleitet. Im Folgenden wird
der Zugriff der Subgeschäftsprozesse auf die einzelnen
Attribute einer Relation erfaßt. Dieser Schritt ist
notwendig, da es abhängig vom benutzen Optimierungsverfahren
notwendig sein kann, Clusterungen der Attribute einer Relation
zu betrachten, um Einheiten innerhalb einer Relation, die
gemeinsam von Subgeschäftsprozessen bearbeitet werden,
möglichst nicht auseinanderzureißen.
Die Wahl des Zeitraums ist abhängig von den untersuchten
Geschäftsprozessen und daher nicht allgemeingültig festlegbar.
Beispielsweise kann man ein Geschäftsjahr eines Unternehmens
als Zeitraum ansetzen, wenn auch der Jahresabschluß
beispielsweise mit in die Betrachtungen einbezogen werden
soll. Ist ein solch langer Zeitraum nicht notwendigerweise
zu betrachten, kann man auch auf Tage oder kürzere Zeiträume
gehen. Wichtig ist lediglich, daß der Zeitraum eine Maßeinheit
innerhalb der Untersuchung ist, der als normiert zu betrachten
ist.
Es wird zwischen unterschiedlichen Lesezugriffen auf Attribute
unterschieden: L1 bezeichnet im folgenden Text einen
Lesezugriff, der für ein Datenupdate beziehungsweise eine
Datenlöschung gebraucht wird. In der Fig. 6A ist in
Matrixform die Information dargestellt, welcher
Subgeschäftsprozeß auf welches Attribut der Relation AUFTRAG
mit welcher Häufigkeit L1-lesend zugreift.
Davon unterschieden wird der Lesezugriff L2, der dazu benutzt
wird, das "nur" Lesen zu erfassen. Aus datenbanktechnischen
Gründen ist diese Unterscheidung notwendig. In Fig. 6B ist in
Matrixform die Information dargestellt, welcher
Subgeschäftsprozeß auf welches Attribut der Relation AUFTRAG
mit welcher Häufigkeit L2-lesend zugreift.
Weiterhin wird von den Lesezugriffen ein Schreibzugriff S
unterschieden. In Fig. 6C ist in Matrixform die Information
dargestellt, welcher Subgeschäftsprozeß auf welches Attribut
der Relation AUFTRAG mit welcher Häufigkeit schreibend
zugreift.
In dem nun folgenden Schritt werden die Zugriffhäufigkeiten
der Subgeschäftsprozesse an den verschiedenen Orten
untersucht. In der Fig. 7A ist in Matrixform die Information
dargestellt, an welchem Ort die Subgeschäftsprozesse mit
welcher Häufigkeit L1-lesend zugreifen.
Entsprechend ist in der Fig. 7B die Information dargestellt,
an welchem Ort die Subgeschäftsprozesse mit welcher Häufigkeit
L2-lesend zugreifen.
Weiterhin ist in der Fig. 7C die Information dargestellt, an
welchem Ort die Subgeschäftsprozesse mit welcher Häufigkeit
schreibend zugreifen.
Mit dem beschriebenen ersten Schritt, der Ermittlung des
Verhälnisses von Subgeschäftsprozessen zu Attributen einer
Relation, und dem beschriebenen zweiten Schritt, der
Ermittlung des Zusammenhanges von Subgeschäftsprozessen und
Orten, läßt sich ein Verhältnis von Orten und Attributen
ableiten, das grundlegend ist für die Verteilung der Daten,
weil es eben genau die notwendige Information
Ort: Attribute/Relation enthält.
Es wird die in der Fig. 8 dargestellte Matrix durch eine
Multiplikation der Matrix in Fig. 6C mit der Matrix in
Fig. 7C berechnet. Diese in Fig. 8 dargestellte Matrix
enthält die Information, mit welcher Häufigkeit von welchen
Orten auf die einzelnen Attribute der Relation AUFTRAG
schreibend zugegriffen wird.
Ähnlich wie im Falle der schreibenden Zugriffe, wird auch im
Falle der Lesenden Zugriffe verfahren. Einzige Ausnahme ist,
daß zunächst die Matrizen für L1-lesen und L2-lesen für die
Verbindung Geschäftsprozeß zu Attribut addiert werden, das
heißt, es werden die Matrizen aus den Fig. 6A und 6B
addiert; die resultierende erste Summenmatrix ist in der
Fig. 9A dargestellt.
Anschließend werden die Matrizen L1-lesen und L2-lesen für die
Verbindung Geschäftsprozesse und Orte addiert, das heißt es
werden die Matrizen aus den Fig. 7A und 7B addiert;
die resultierende zweite Summenmatrix ist in der Fig. 9B
dargestellt.
Anschließend wird die in der Fig. 9C dargestellte Matrix
durch eine Multiplikation der ersten und zweiten
Summenmatrizen aus den Fig. 9A und 9B berechnet. Diese in
Fig. 9C dargestellte Matrix enthält die Information,
mit welcher Häufigkeit von welchen Orten auf die einzelnen
Attribute der Relation AUFTRAG lesend zugegriffen wird.
Im Folgenden wird das Verfahren zur Datenverteilung auf
unterschiedliche Orte beispielhaft beschrieben. Basierend auf
der Matrix der Fig. 8 hinsichtlich der schreibenden Zugriffe
und der Matrix der Fig. 9C hinsichtlich der lesenden Zugriffe
wird nun eine Matrix der Gesamtzugriffe ermittelt. An dieser
Stelle wird die Unterscheidung in lesende und schreibende
Zugriffe relevant. Es werden nun Parameter α und δ eingeführt,
die eine Gewichtung zwischen Lesen und Schreiben herstellen.
Diese Parametrisierung trägt dem Umstand Rechnung, daß
beispielweise eine Verteilung der Daten nur unter
Berücksichtigung des Lesens beziehungsweise des Schreibens
denkbar ist, oder eine Verteilung, die diese beiden Vorgänge
in unterschiedlichsten Wertungen berücksichtigt. Über die
beiden Parameter kann auch der unterschiedliche
Übertragungsaufwand von Lesen und Schreiben berücksichtigt
werden.
Im vorliegenden Beispiel sind die Parameter α und δ so
gewählt, daß den Schreibzugriffen doppelt so viel Bedeutung
gegeben wird, bezogen auf die Lesezugriffe. Die Lesezugriffe
werden somit mit einem Parameter α = 0,33 gewichtet, wogegen
die Schreibzugriffe mit einem Parameter δ = 0,67 gewichtet
werden. Daraus ergibt sich die Matrix der Gesamtzugriffe für
die Relation AUFTRAG wie in der Fig. 10 dargestellt. Diese
Matrix bildet die Basis für die weiteren Betrachtungen.
Wenn in den folgenden Überlegungen von der oben ermittelten
Matrix der Gesamtzugriffe ausgegangen wird, in der die
unterschiedlichen Zugriffsarten vereinigt sind, dann stellt
dies eine Vereinfachung dar, um die Übersichtlichkeit des
erfinderischen Verfahrens zu erhalten. Zweifellos könnte man
die Kostenbetrachtungen, die in die Bewertungsfunktion
eingehen (siehe die nachfolgend beschriebenen
Kostenfunktionen), auch auf der Basis der unterschiedlichen
Zugriffsweisen machen; die dadurch erzeugte Komplexität stellt
aber in Bezug auf die Erfindung keine neue Qualität dar,
sondern ist lediglich eine Verfeinerung.
Für die Ermittlung der optimal Verteilung innerhalb der
vorgestellten Verfahren und letztlich über die Verfahren hinaus
zu einem globalen Optimum benötigt man die Definition einer
Kostenfunktion. Dabei können berücksichtigt werden:
die Gesamtkosten eines bestimmten Attributes der Relation bei Speicherung an einem bestimmten Ort,
die Speicherkosten des Attributes der Relation an diesem Ort, wobei die Speicherkosten ortsabhängig variieren können,
die Zugriffskosten des Attributes der Relation an diesem Ort von einem anderen Ort, wobei die Zugriffskosten auch die Übertragungskosten beinhalten und daher je nach Ort unterschiedlich behandelt werden müssen,
die Zugriffshäufigkeit des Attributes der Relation an diesem Ort von einem anderen Ort,
das durchschnittliche Datentransfervolumen bei Zugriff auf das Attribut der Relation an diesem Ort von einem anderen Ort, und
die Speicherkosten des Attributes der Relation an diesem Ort.
die Gesamtkosten eines bestimmten Attributes der Relation bei Speicherung an einem bestimmten Ort,
die Speicherkosten des Attributes der Relation an diesem Ort, wobei die Speicherkosten ortsabhängig variieren können,
die Zugriffskosten des Attributes der Relation an diesem Ort von einem anderen Ort, wobei die Zugriffskosten auch die Übertragungskosten beinhalten und daher je nach Ort unterschiedlich behandelt werden müssen,
die Zugriffshäufigkeit des Attributes der Relation an diesem Ort von einem anderen Ort,
das durchschnittliche Datentransfervolumen bei Zugriff auf das Attribut der Relation an diesem Ort von einem anderen Ort, und
die Speicherkosten des Attributes der Relation an diesem Ort.
Im vorliegenden Beispiel werden aus Gründen der
Übersichtlichkeit und Einfachheit folgende Annahmen gemacht:
die Speicherkosten sollen nicht berücksichtigt werden,
die Zugriffskosten an den verschiedenen Orten sollen nicht unterschiedlich sein, und
das Datenvolumen soll nicht berücksichtigt werden.
die Speicherkosten sollen nicht berücksichtigt werden,
die Zugriffskosten an den verschiedenen Orten sollen nicht unterschiedlich sein, und
das Datenvolumen soll nicht berücksichtigt werden.
Damit ergibt sich ausgehend von der in der Fig. 10
dargestellten Matrix die in der Fig. 11 dargestellte
bewertete Ergebnismatrix.
Folgende Vorgehensweisen zur Verteilung der Daten sollen
betrachtet werden:
Verfahren des Zeilenoptimums: Ein Attribut einer Relation wird dem Ort zugewiesen, an dem die geringsten Kosten entstehen.
Verfahren des Zeilenoptimums: Ein Attribut einer Relation wird dem Ort zugewiesen, an dem die geringsten Kosten entstehen.
Verfahren des Spaltenoptimums: Die Gesamtheit der
Zugriffe auf eine Relation an einem Ort wird betrachtet,
und es wird die Relation als Ganzes an den Ort gelegt,
der die geringsten Gesamtkosten hat.
Vollständiges Attributclustering: Es werden alle
möglichen Cluster von Attributen einer Relation gebildet
und auf die unterschiedlichen Orte verteilt. Die dabei
entstehende Menge von Verteilungsvarianten wächst
exponentiell und ist daher rechnerintensiv. Das Verfahren
des Zeilenmaximums und das Verfahren des Spaltenmaximums
sind Spezialfälle dieses maximalen Clusterings.
Attributclustering auf der Grundlage der
Geschäftsprozesse: Um dem Problem der exponentiell
wachsenden Anzahl von Clustern der zuvor beschriebenen
Vorgehensweise zu entgehen, wird hier ein Filter
vorgeschaltet, der aus den Geschäftsprozessen selber
abgeleitet wird. Es werden nur die Verteilungen von
Clustern und Orten betrachtet, die von den
Geschäftsprozessen auch wirklich benutzt werden.
Jedes vertikale Fragment muß das Schlüsselattribut als
zusätzliches Attribut bekommen. Die Möglichkeit von Kopien und
des horizontalen Splittings werden nicht betrachtet.
Die folgenden Ausführungen zu den Verteilungsverfahren
führen zu unterschiedlichen Ergebnissen. Die Ermittlung der
optimalen Verteilung erfolgt mittels der Kostenfunktion.
Die Kostenfunktion wird auf die einzelnen Attribute und ihre
möglichen Orte der Verteilung angewandt, so daß eine neue
Matrix entsteht, in der pro Ort und Attribut die jeweiligen
Kosten stehen, die den anderen Orten entstehen, wenn sie auf
diesen Ort zugreifen müssen und zusätzlich die Speicherkosten
an diesem Ort.
Das Verfahren des Zeilenoptimums beruht auf dem Konzept, daß
das Attribut einer Relation an dem Ort sein soll, an dem die
Kosten für dieses Attribut minimal sind.
Die Bewertungsfunktion wird dabei auf die einfachen Cluster
angewandt, sprich einzelne Attribute. Das bedeutet, man muß
pro Attribut der Relation bewertet mit der Kostenfunktion den
zugehörigen Index des Zeilenoptimums bestimmen. Der Index gibt
dann Auskunft, an welchem Ort welches Attribut gespeichert
werden soll. Ist das Ergebnis nicht eindeutig, kann die
Auswahl unter den verschiedenen gleichwertigen Minimals
beispielsweise nach dem kleinsten Spaltenrang erfolgen.
Wesentlich ist lediglich, daß das Auswahlergebnis eindeutig
ist. Mit dem Verfahren des Zeilenoptimums liegt ein erster
Verteilungsvorschlag vor.
Im vorliegenden Beispiel ergibt das Verfahren des
Zeilenmaximums ausgehend von der Matrix der Fig. 11 eine
physikalische Verteilung der Attribute der Relation AUFTRAG
wie folgt:
Berlin: Produkt#, Datum und APosWert, sowie
Tokyo: Auftrags#, Kunden#, APos, GAWert und AStatus.
Berlin: Produkt#, Datum und APosWert, sowie
Tokyo: Auftrags#, Kunden#, APos, GAWert und AStatus.
Die Gesamtkosten belaufen sich auf 18 100,9 Kosteneinheiten.
Das Verfahren des Spaltenoptimums beruht auf dem Konzept,
daß jeweils die gesamten Relationen an den Ort gelegt werden,
der insgesamt die geringsten Kosten hat. Das bedeutet, man muß
die Summe der Kosten pro Ort bilden und dann das Minimum
auswählen. Ausgangspunkt dieses Verfahrens ist die in der
Fig. 11 dargestellte bewertete Ergebnismatrix, welche durch
die Gesamtkostenfunktion erzeugt wurde. Falls das Minimum
nicht eindeutig einen Ort bestimmt, müssen andere Kriterien
gefunden werden. Im vorliegenden Beispiel ergibt sich die in
der Fig. 12 dargestellte Matrix. Dem Verfahren des
Spaltenoptimums zufolge müßte die gesamte Relation AUFTRAG
nach Berlin gelegt werden. Die Gesamtkosten betragen in diesem
Fall 20 318,4 Kosteneinheiten.
Das Verfahren des Attributclusterings zur Erzeugung unikater,
vertikaler Splits wird in zwei Verfahren durchgeführt.
Im ersten Verfahren wird die Menge aller möglicher
Kombinationen von Attributen einer Relation betrachtet und
eine Funktion definiert, die danach systematisch in allen
Kombinationen auf die möglichen Orte verteilt werden.
Dieses Verfahren wird im Folgenden als "Vollständiges
Attributcluster" bezeichnet. Über die Bewertungsfunktion wird
die Verteilungsvariante mit den geringsten Kosten ausgewählt.
Im zweiten Fall wird zunächst untersucht, welche Cluster
überhaupt von Subgeschäftsprozessen benutzt werden und an
welchen Orten jeweils. Der Einfachheit halber wird bei den
Clustern nicht zwischen Lesen und Schreiben unterschieden.
Es soll eine Relation mit einer bestimmten Anzahl von
Attributen unikat gesplittet werden. Der Schlüssel der
Relation soll aus nur einem Attribut bestehen, wobei sich das
Verfahren nicht ändert bei Schlüsseln, die aus mehreren
Attributen einer Relation bestehen, weil der Schlüssel als
Gesamtheit Teil jedes Fragmentes ist. Die Anzahl der möglichen
Cluster beim vollständigen Attributclustering ergibt sich als
Mächtigkeit der Menge der Kombinationen von Elementen ohne
Wiederholung ohne Berücksichtigung der Anordnung.
Die möglichen Cluster müssen nun so gewählt werden, daß eine
vollständige Überdeckung der Relation entsteht.
Diese möglichen vollständigen Überdeckungen müssen im letzten
Schritt über die Orte permutiert werden. Auf die so
entstandenen Verteilungen der Cluster auf Orte kann nun die
Bewertungsfunktion angewandt werden, die die entstehenden
Kosten dieser Clusterverteilung berechnet. Die Auswahl des
optimalen Clusters erfolgt nach dem Prinzip der geringsten
Kosten, im Falle von Kostengleichheit für Cluster müssen
andere Entscheidungskriterien gefunden werden.
Das bisher vorgestellte Verfahren versucht eine Optimierung
über alle möglichen Kombinationen von Clustern und deren
Verteilungen auf die Orte. Alleine die Anzahl möglicher
Cluster ohne Berücksichtigung der Kombinationen dieser Cluster
auf verschiedene Orte für nur eine Relation wächst
exponentiell. Aus diesem Grunde wird ein Filter vorgeschlagen,
der von vornherein nur die Cluster berücksichtigt, die auch
wirklich von den Geschäftsprozessen benutzt werden.
Im Unterschied zu den exponentiell wachsenden Möglichkeiten
bei dem Verfahren des vollständigen Attributclusterings wird
in dem Verfahren des Attributclusterings auf Grundlage der
Geschäftsprozesse der Raum der potentiellen Cluster durch die
Geschäftsprozesse eingeschränkt. Wird ein Cluster von
Attributen einer Relation nur an einem Ort benötigt, dann
macht es auch keinen Sinn, dieses Cluster als solches an
andere Orte zu legen. Unbenommen hiervon ist die Möglichkeit,
daß aufgrund von Teilmengenbeziehungen zwischen den Clustern
eine Obermenge eines Clusters an einem Ort liegen kann, an dem
das Cluster der Untermenge nicht nachgefragt wird. Dabei
stellt die Einschränkung auf die wirklich durch die
Geschäftsprozesse benutzten Cluster eine sinnvolle Reduktion
der Möglichkeiten dar.
Attribute, die nicht zu einem Cluster eines Geschäftsprozesses
gehören, können entweder in allen möglichen Kombinationen auf
die verbleibenden Orte verteilt werden, oder als ein
sinnvoller Sonderfall hiervon als Block auf die anderen Orte
verteilt werden. Dieser Sonderfall ist insofern sinnvoll, als
er möglichst große Blöcke von Attributen schafft. Im Anschluß
an die Definition der möglichen Verteilungen auf die Orte wird
mit der Bewertungsfunktion die optimale Verteilung wie schon
in dem Verfahren des vollständigen Attributclusterings
bestimmt.
Im vorliegenden Beispiel ergeben sich die in der Matrix der
Fig. 13 dargestellten Cluster aus den Matrizen der Fig.
6A, 6B, 6C, 7A, 7B und 7C. Aus Gründen der Übersichtlichkeit
werden nur die Indizes der Attribute der Relation AUFTRAG
benutzt.
Damit ergibt sich unter Berücksichtigung, daß das
Schlüsselattribut "1" immer Teil des Fragmentes sein muß und
daß die restlichen Attribute beispielhaft komplett an die
verbleidenden Orte gelegt werden, dies entspricht dem
beschriebenen Sonderfall, die in der Fig. 14 dargestellte
Matrix.
Wird auf die Matrix der Fig. 14 die Bewertungsfunktion
angewandt, resultiert die in der Fig. 15 dargestellte
bewertete Ergebnismatrix. Als optimale Verteilung der
Attribute folgt aus dieser Matrix:
Berlin: Auftrags#, Produkt#, Datum und APosWert, sowie
Tokyo: Auftrags#, Kunden#, APos, GAWert und AStatus.
Berlin: Auftrags#, Produkt#, Datum und APosWert, sowie
Tokyo: Auftrags#, Kunden#, APos, GAWert und AStatus.
Die Gesamtkosten belaufen sich auf 18 100,9 Kosteneinheiten.
Claims (18)
1. Ein Verfahren zum Konfigurieren einer Datenbank (110),
wobei
die Datenbank (110) Datenobjekte aufweist,
die Datenobjekte durch digitale Daten repräsentiert werden, und
Prozesse (101, 102, 103) auf die Datenobjekte zugreifen,
gekennzeichnet dadurch, daß das Verfahren folgende Schritte aufweist:
Ermitteln (301) der Zugriffe der Prozesse auf die Datenobjekte,
Speichern (302) der ermittelten Zugriffe in einem ersten Informationsblock (303), und
Konfigurieren (304) der Datenbank (110) unter Auswertung der Information in dem ersten Informationsblock (303).
die Datenbank (110) Datenobjekte aufweist,
die Datenobjekte durch digitale Daten repräsentiert werden, und
Prozesse (101, 102, 103) auf die Datenobjekte zugreifen,
gekennzeichnet dadurch, daß das Verfahren folgende Schritte aufweist:
Ermitteln (301) der Zugriffe der Prozesse auf die Datenobjekte,
Speichern (302) der ermittelten Zugriffe in einem ersten Informationsblock (303), und
Konfigurieren (304) der Datenbank (110) unter Auswertung der Information in dem ersten Informationsblock (303).
2. Das Verfahren nach Patentanspruch 1, wobei
das Konfigurieren (304) der Datenbank (110) dynamisch während des Betriebes der Datenbank (110) erfolgt, und
das Konfigurieren (304) der Datenbank (110) durch ein Teilen der Datenobjekte erfolgt.
das Konfigurieren (304) der Datenbank (110) dynamisch während des Betriebes der Datenbank (110) erfolgt, und
das Konfigurieren (304) der Datenbank (110) durch ein Teilen der Datenobjekte erfolgt.
3. Das Verfahren nach Patentanspruch 1 oder 2, wobei
das Datenobjekt geteilt wird, wenn mindestens zwei
Prozesse versuchen, gleichzeitig auf das Datenobjekt
zuzugreifen.
4. Das Verfahren nach einem der Patentansprüche 1 bis 3,
wobei
die Datenbank (110) eine relationale Datenbank ist,
die Datenobjekte Relationen der relationalen Datenbank sind,
die Relationen Attribute aufweisen,
die Prozesse (101, 102, 103) auf Attribute der Relationen zugreifen, und
die Zugriffe der Prozesse auf die Attribute der Relationen ermittelt werden.
die Datenbank (110) eine relationale Datenbank ist,
die Datenobjekte Relationen der relationalen Datenbank sind,
die Relationen Attribute aufweisen,
die Prozesse (101, 102, 103) auf Attribute der Relationen zugreifen, und
die Zugriffe der Prozesse auf die Attribute der Relationen ermittelt werden.
5. Das Verfahren nach einem der Patentansprüche 1 bis 4,
wobei
die Datenbank (110) eine verteilte Datenbank (210) ist,
die Datenobjekte der verteilten Datenbank (210) sich auf verschiedenen Speichermitteln (221, 222, 223) befinden, und
das Verfahren weiterhin den Schritt aufweist:
Allokieren des Datenobjektes als Ganzes auf einem Speichermittel der Datenbank, oder
Allokieren der Teile des Datenobjektes auf verschiedenen Speichermitteln der Datenbank.
die Datenbank (110) eine verteilte Datenbank (210) ist,
die Datenobjekte der verteilten Datenbank (210) sich auf verschiedenen Speichermitteln (221, 222, 223) befinden, und
das Verfahren weiterhin den Schritt aufweist:
Allokieren des Datenobjektes als Ganzes auf einem Speichermittel der Datenbank, oder
Allokieren der Teile des Datenobjektes auf verschiedenen Speichermitteln der Datenbank.
6. Das Verfahren nach Patentanspruch 5, weiterhin die
Schritte aufweisend:
Ermitteln an welchem Ort die Prozesse ablaufen,
Speichern der ermittelten Ortsinformation in einem zweiten Informationsblock, und
Verknüpfen der Information des ersten Informationsblockes mit der Information des zweiten Informationsblockes für eine Entscheidung über die Teilung der Datenobjekte und für eine Entscheidung über das Allokieren von Teilen der Datenobjekte.
Ermitteln an welchem Ort die Prozesse ablaufen,
Speichern der ermittelten Ortsinformation in einem zweiten Informationsblock, und
Verknüpfen der Information des ersten Informationsblockes mit der Information des zweiten Informationsblockes für eine Entscheidung über die Teilung der Datenobjekte und für eine Entscheidung über das Allokieren von Teilen der Datenobjekte.
7. Das Verfahren nach Patentanspruch 6, wobei
die verteilte Datenbank eine verteilte relationale
Datenbank ist.
8. Das Verfahren nach Patentanspruch 7, wobei
der erste Informationsblock in einer ersten Matrix (401) die Information enthält, welcher Prozeß auf welches Attribut der Relation wie oft lesend zugreift und wie oft schreibend zugreift,
der zweite Informationsblock in einer zweiten Matrix (402) die Information enthält, an welchem Ort mit welcher Häufigkeit welcher Prozeß abläuft, und
die erste und die zweite Matrix miteinander multipliziert werden und eine Ergebnismatrix (403) berechnet wird, wobei
die Ergebnismatrix Information (413) enthält, von welchem Ort auf welches Attribut der Relation mit welcher Häufigkeit lesend zugegriffen wird und mit welcher Häufigkeit schreibend zugegriffen wird.
der erste Informationsblock in einer ersten Matrix (401) die Information enthält, welcher Prozeß auf welches Attribut der Relation wie oft lesend zugreift und wie oft schreibend zugreift,
der zweite Informationsblock in einer zweiten Matrix (402) die Information enthält, an welchem Ort mit welcher Häufigkeit welcher Prozeß abläuft, und
die erste und die zweite Matrix miteinander multipliziert werden und eine Ergebnismatrix (403) berechnet wird, wobei
die Ergebnismatrix Information (413) enthält, von welchem Ort auf welches Attribut der Relation mit welcher Häufigkeit lesend zugegriffen wird und mit welcher Häufigkeit schreibend zugegriffen wird.
9. Das Verfahren nach Patentanspruch 8, wobei
auf die Ergebnismatrix (403) mindestens eine
Bewertungsfunktion (404) angewandt wird, und eine
bewertete Ergebnismatrix berechnet wird.
10. Das Verfahren nach Patentanspruch 8 oder 9, wobei
auf die Ergebnismatrix (403) oder auf die bewertete
Ergebnismatrix eine Verteilungsfunktion (405) angewandt
wird, welche die Teilung der Datenobjekte bestimmt und
welche die Verteilung der Teile der Datenobjekte auf die
verschiedenen Speichermittel der verteilten
Datenbank (210) bestimmt.
11. Eine Vorrichtung (510) zum Konfigurieren einer
Datenbank (110), wobei
die Datenobjekte durch digitale Daten repräsentiert werden, und
Prozesse (101, 102, 103) auf die Datenobjekte zugreifen,
dadurch gekennzeichnet, daß die Vorrichtung (510) aufweist:
erste Mittel (530, 540), die den Zugriff der Prozesse auf die Datenobjekte ermitteln,
erste Speichermittel (520), welche die Zugriffe der Prozesse auf die Datenobjekte in einem ersten Informationsblock speichern, und
Mittel zur Konfiguration der Datenbank unter Verwendung der Information in dem ersten Informationsblock.
die Datenobjekte durch digitale Daten repräsentiert werden, und
Prozesse (101, 102, 103) auf die Datenobjekte zugreifen,
dadurch gekennzeichnet, daß die Vorrichtung (510) aufweist:
erste Mittel (530, 540), die den Zugriff der Prozesse auf die Datenobjekte ermitteln,
erste Speichermittel (520), welche die Zugriffe der Prozesse auf die Datenobjekte in einem ersten Informationsblock speichern, und
Mittel zur Konfiguration der Datenbank unter Verwendung der Information in dem ersten Informationsblock.
12. Die Vorrichtung (510) nach Patentanspruch 11, wobei
die Datenbank (110) eine relationale Datenbank ist,
die Datenobjekte Relationen der relationalen Datenbank sind,
die Relationen Attribute aufweisen,
die Prozesse (101, 102, 103) auf Attribute der Relationen zugreifen, und
die Zugriffe der Prozesse auf die Attribute der Relationen ermittelt werden.
die Datenbank (110) eine relationale Datenbank ist,
die Datenobjekte Relationen der relationalen Datenbank sind,
die Relationen Attribute aufweisen,
die Prozesse (101, 102, 103) auf Attribute der Relationen zugreifen, und
die Zugriffe der Prozesse auf die Attribute der Relationen ermittelt werden.
13. Die Vorrichtung (510) nach Patentanspruch 11 oder 12,
wobei
die Datenbank (110) eine verteilte Datenbank (210) ist und
die Vorrichtung weiterhin aufweist:
Mittel zum Allokieren des Datenobjektes als Ganzes auf einem Speichermittel der Datenbank, oder
Mittel zum Allokieren der Teile des Datenobjektes auf verschiedenen Speichermitteln der Datenbank.
die Datenbank (110) eine verteilte Datenbank (210) ist und
die Vorrichtung weiterhin aufweist:
Mittel zum Allokieren des Datenobjektes als Ganzes auf einem Speichermittel der Datenbank, oder
Mittel zum Allokieren der Teile des Datenobjektes auf verschiedenen Speichermitteln der Datenbank.
14. Die Vorrichtung (510) nach Patentanspruch 13, weiterhin
aufweisend:
zweite Mittel, die als eine zweite Information ermitteln, an welchen Orten die Prozesse ablaufen,
zweite Speichermittel, welche die zweiten Information abspeichern, und
erste Rechenmittel, welche die ersten Information und die zweiten Information miteinander zu einer Ergebnismatrix verknüpfen.
zweite Mittel, die als eine zweite Information ermitteln, an welchen Orten die Prozesse ablaufen,
zweite Speichermittel, welche die zweiten Information abspeichern, und
erste Rechenmittel, welche die ersten Information und die zweiten Information miteinander zu einer Ergebnismatrix verknüpfen.
15. Die Vorrichtung (510) nach Patentanspruch 14, wobei das
System weiterhin aufweist:
zweite Rechenmittel, welche mindestens eine Bewertungsfunktion auf die Ergebnismatrix anwenden.
zweite Rechenmittel, welche mindestens eine Bewertungsfunktion auf die Ergebnismatrix anwenden.
16. Die Vorrichtung (510) nach einem der Patentansprüche 11
bis 15, wobei
die Vorrichtung ein Computersystem ist, welches
Steuerfunktionen auf die Datenbank (110) ausführen kann.
17. Ein Datenträger, der ein Computerprogramm speichert,
dadurch gekennzeichnet, daß
das Computerprogramm eine Vorrichtung steuert nach einem der Patentansprüche 11 bis 16, und
das Computersystem ein Verfahren ausführt nach einem der Patentansprüche 1 bis 10.
das Computerprogramm eine Vorrichtung steuert nach einem der Patentansprüche 11 bis 16, und
das Computersystem ein Verfahren ausführt nach einem der Patentansprüche 1 bis 10.
18. Verwendung der Information über Zugriffe von
Prozessen (101, 102, 103) auf Datenobjekte in einer
Datenbank (110) zur Konfiguration der Datenbank (110).
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19534819A DE19534819B4 (de) | 1995-09-20 | 1995-09-20 | Verfahren und Vorrichtung zum Konfigurieren einer Datenbank |
JP22104596A JP3670770B2 (ja) | 1995-09-20 | 1996-08-22 | データベースを構成する方法及び装置 |
US08/716,006 US5884311A (en) | 1995-09-20 | 1996-09-19 | Method and system for dynamically configuring a relational database |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19534819A DE19534819B4 (de) | 1995-09-20 | 1995-09-20 | Verfahren und Vorrichtung zum Konfigurieren einer Datenbank |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19534819A1 true DE19534819A1 (de) | 1997-03-27 |
DE19534819B4 DE19534819B4 (de) | 2004-07-08 |
Family
ID=7772619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19534819A Expired - Lifetime DE19534819B4 (de) | 1995-09-20 | 1995-09-20 | Verfahren und Vorrichtung zum Konfigurieren einer Datenbank |
Country Status (3)
Country | Link |
---|---|
US (1) | US5884311A (de) |
JP (1) | JP3670770B2 (de) |
DE (1) | DE19534819B4 (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19911373A1 (de) * | 1999-03-15 | 2000-10-12 | Hewlett Packard Co | Einrichtung und Verfahren zum Betrieb von Geschäftsprozessen in einem verteilten Informationsnetz |
DE10213231A1 (de) * | 2002-03-25 | 2003-10-23 | Bayer Ag | Verfahren zur computergestützten Sortimentsoptimierung und Computersystem |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19706419A1 (de) * | 1997-02-19 | 1998-08-27 | Ibm | Verfahren und Vorrichtung zur Steuerung von Prozessen unter Verwendung einer Technologie zur maschinellen Sprachverarbeitung |
GB9800427D0 (en) * | 1998-01-10 | 1998-03-04 | Ibm | Probabilistic data clustering |
US6775674B1 (en) * | 1998-03-26 | 2004-08-10 | Sap Aktiengesellschaft | Auto completion of relationships between objects in a data model |
US20020165728A1 (en) * | 1999-03-15 | 2002-11-07 | Jochen Buckenmayer | Device, method and computer program product for carrying out business processes |
US6766326B1 (en) * | 2000-07-24 | 2004-07-20 | Resty M Cena | Universal storage for dynamic databases |
US6513043B1 (en) | 2000-09-01 | 2003-01-28 | Syntricity, Inc. | System and method for storing, retrieving, and analyzing characterization data |
US6996576B2 (en) * | 2000-11-22 | 2006-02-07 | Bmc Software, Inc. | Database management system and method which automatically schedules and performs actions and monitors results |
JP2003208501A (ja) * | 2002-01-11 | 2003-07-25 | Hitachi Ltd | ビジネスプロセス定義表示方法およびプログラム |
US7305395B1 (en) * | 2002-04-24 | 2007-12-04 | Oracle International Corporation | Centralized storage and management of database parameters |
GB0226919D0 (en) * | 2002-11-18 | 2002-12-24 | Active Ltd | Database management |
CN102630064B (zh) | 2006-02-03 | 2014-12-31 | 西格莱姆申德勒股份有限公司 | 通过与技术通信组平台(tcgpl)目标有关的用户对这些目标的可动态指定的实际实时管理 |
US9264355B2 (en) * | 2006-09-05 | 2016-02-16 | Telefonaktiebolaget L M Ericsson (Publ) | Name-address management and routing in communication networks |
US20100082551A1 (en) * | 2008-09-26 | 2010-04-01 | Microsoft Corporation | Data placement transparency for high availability and load balancing |
JP5488587B2 (ja) * | 2009-03-06 | 2014-05-14 | 日本電気株式会社 | 情報処理システムと方法 |
US20160300171A1 (en) * | 2015-04-09 | 2016-10-13 | International Business Machines Corporation | Risk-based order management with heterogeneous variables in a constrained environment |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4021632A1 (de) * | 1990-07-06 | 1992-01-09 | Standard Elektrik Lorenz Ag | Verfahren zum einordnen und auffinden von datensaetzen in einer teilnehmerdatenbank |
DE4221073A1 (de) * | 1991-06-27 | 1993-01-07 | Digital Equipment Corp | Datenspeichersystem und -verfahren mit geraeteunabhaengigen dateiverzeichnissen |
DE4441753A1 (de) * | 1993-11-24 | 1995-06-01 | Telia Ab | Verfahren und Anordnung für semipermanentes Speichern eines Dienstprofils in persönlichen Informationsübertragungssystemen |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5335345A (en) * | 1990-04-11 | 1994-08-02 | Bell Communications Research, Inc. | Dynamic query optimization using partial information |
US5412806A (en) * | 1992-08-20 | 1995-05-02 | Hewlett-Packard Company | Calibration of logical cost formulae for queries in a heterogeneous DBMS using synthetic database |
-
1995
- 1995-09-20 DE DE19534819A patent/DE19534819B4/de not_active Expired - Lifetime
-
1996
- 1996-08-22 JP JP22104596A patent/JP3670770B2/ja not_active Expired - Fee Related
- 1996-09-19 US US08/716,006 patent/US5884311A/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4021632A1 (de) * | 1990-07-06 | 1992-01-09 | Standard Elektrik Lorenz Ag | Verfahren zum einordnen und auffinden von datensaetzen in einer teilnehmerdatenbank |
DE4221073A1 (de) * | 1991-06-27 | 1993-01-07 | Digital Equipment Corp | Datenspeichersystem und -verfahren mit geraeteunabhaengigen dateiverzeichnissen |
DE4441753A1 (de) * | 1993-11-24 | 1995-06-01 | Telia Ab | Verfahren und Anordnung für semipermanentes Speichern eines Dienstprofils in persönlichen Informationsübertragungssystemen |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19911373A1 (de) * | 1999-03-15 | 2000-10-12 | Hewlett Packard Co | Einrichtung und Verfahren zum Betrieb von Geschäftsprozessen in einem verteilten Informationsnetz |
DE10213231A1 (de) * | 2002-03-25 | 2003-10-23 | Bayer Ag | Verfahren zur computergestützten Sortimentsoptimierung und Computersystem |
Also Published As
Publication number | Publication date |
---|---|
US5884311A (en) | 1999-03-16 |
JPH09171477A (ja) | 1997-06-30 |
DE19534819B4 (de) | 2004-07-08 |
JP3670770B2 (ja) | 2005-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19534819B4 (de) | Verfahren und Vorrichtung zum Konfigurieren einer Datenbank | |
DE69906488T2 (de) | Verfahren zur Synchronisierung eines Datenbankschemas mit seiner Darstellung in einem objekt-orientierten Repository | |
DE112020000749T5 (de) | Indexerstellung für sich entwickelnde umfangreiche Datensätze in Hybriden Transaktions- und Analysenverarbeitungssystemen mit mehreren Mastern | |
DE112012000280B4 (de) | Organisation von Tabellen mit reduzierten Indizes | |
DE60035432T2 (de) | System zur verwaltung der rdbm fragmentierungen | |
DE202015009875U1 (de) | Transparente Entdeckung eines semistrukturierten Datenschemas | |
DE10039537A1 (de) | Verbesserung der mehrdimensionalen Umstrukturierung beim Hinzufügen oder Entfernen von Dimensionen und Dimensionsmitgliedern | |
DE10113577A1 (de) | Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems | |
DE4323947A1 (de) | Informationswiedergewinnung in einem verteilten Datenbank-Managementsystem unter Verwendung einer synthetischen DBMS-Kalibrierung | |
DE202010018481U1 (de) | Asynchroner verteilter Objekt-Upload für replizierte Assoziativspeichercluster | |
DE19955718A1 (de) | Paralleler Datenbank-Support für Workflow-Management-Systeme | |
DE102013206281A1 (de) | Optimieren von zerstreuten schemalosen Daten in relationalen Speichern | |
WO2002021327A2 (de) | Verfahren und computerprogramm zur erzeugung von dateien für ein datenbanksystem für ein betriebswirtschaftliches anwendungsprogramm | |
EP1637955A1 (de) | Erzeugung aktualisierbarer anonymisierter Datensätze für Test- und Entwicklungszwecke | |
EP1225511A1 (de) | Verfahren und system zur akten-verwaltung in verteilten umgebungen | |
EP1637956A1 (de) | Erzeugung anonymisierter Datensätze zum Testen und Entwickeln von Anwendungen | |
EP1637954A1 (de) | Erzeugung anonymisierter Datensätze aus produktiven Anwendungen | |
DE112021003031T5 (de) | Archivieren von nur-beschleuniger-datenbanktabellen | |
DE112021000621T5 (de) | Primärschlüssel mit mehreren werten für eine mehrzahl von eindeutigen kennungen von entitäten | |
EP1798673A1 (de) | Computer-implementiertes System zur Erzeugung, Bearbeitung und Verwaltung von strukturierten Datensätzen | |
WO2012022378A1 (de) | Verfahren und anordnung zur projektierung und/oder programmierung eines projektes einer industriellen automatisierungsanordnung | |
DE10063512B4 (de) | Technik zum Einrichten eines Konsistenzpunktes in einem System zum parallelen Laden einer Datenbank | |
DE10063514A1 (de) | Verwendung einer gespeicherten Prozedur zum Zugriff auf Indexkonfigurationsdaten in einem fernen Datenbankverwaltungssystem | |
DE102014116117B4 (de) | Verfahren und System zum Mining von Mustern in einem Datensatz | |
DE112021001425T5 (de) | Sichere datenreplikation in verteilten datenspeicherumgebungen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
R071 | Expiry of right |