DE10113577A1 - Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems - Google Patents

Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems

Info

Publication number
DE10113577A1
DE10113577A1 DE10113577A DE10113577A DE10113577A1 DE 10113577 A1 DE10113577 A1 DE 10113577A1 DE 10113577 A DE10113577 A DE 10113577A DE 10113577 A DE10113577 A DE 10113577A DE 10113577 A1 DE10113577 A1 DE 10113577A1
Authority
DE
Germany
Prior art keywords
application
database
profile
memory area
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE10113577A
Other languages
English (en)
Inventor
Gert Rusch
Ulrich Marquard
Thomas Raupp
Uwe Inhoff
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.)
SAP SE
Original Assignee
SAP SE
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 SAP SE filed Critical SAP SE
Priority to DE10113577A priority Critical patent/DE10113577A1/de
Priority to EP01126777A priority patent/EP1244028B1/de
Priority to CA2363359A priority patent/CA2363359C/en
Priority to US09/989,070 priority patent/US7392236B2/en
Priority to AU10028/02A priority patent/AU765236B2/en
Priority to JP2002078017A priority patent/JP3999542B2/ja
Publication of DE10113577A1 publication Critical patent/DE10113577A1/de
Ceased legal-status Critical Current

Links

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/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing

Abstract

Mehrere Anwendungssysteme benutzen ein einziges Datenbanksystem. Ein erstes und mindestens ein zweites Anwendungssystem (901, 902) führen Anwendungsservices für Anwendungssystembenutzer aus. Das Datenbanksystem (900) hat mindestens einen ersten und zweiten Speicherbereich (920-1, 920-2), wobei die Speicherbereiche disjunkt sind. Das Datenbanksystem (900) speichert eine erste Zuordnung eines ersten vorbestimmten Profils (110) zum ersten Speicherbereich (920-1) und eine zweite Zuordnung eines zweiten vorbestimmten Profils (111) zum zweiten Speicherbereich (920-2). Das erste und zweite Profil (110, 111) sind einzigartig und beziehen sich auf das jeweilige erste und zweite Anwendungssystem (901, 902). Das erste und zweite Anwendungssystem (901, 902) greifen jeweils auf den ersten und zweiten Speicherbereich (920-1, 920-2) mittels des entsprechenden Profils (110, 111) zu.

Description

    Gebiet der Erfindung
  • Die Erfindung bezieht sich im allgemeinen auf Datenbanksysteme für Anwendungssysteme und im besonderen auf Verfahren, Computerprogrammprodukt und System zur Verbesserung der Effizienz des Datenbankmanagements in einer Systemlandschaft aus mehreren Applikationssystemen.
  • Hintergrund der Erfindung
  • Im vergangenen Jahrzehnt implementierten viele Organisationen sogenannte Enterprise Resource Planning (ERP) Software, um eine einzige integrierte Lösung zur Durchführung ihrer Geschäftsprozesse zu haben. Client- Server-Technologie wurde erstmals mit der SAP R/3 ERP- Software eingeführt, die der defacto Branchenstandard für Geschäftsanwendungssoftware wurde. Client-Server- Technologie trennt den Client (Frontend) vom Anwendungsserver, auf dem die Anwendungssoftware läuft. Der Anwendungsserver wiederum ist vom Datenbankserver getrennt, auf dem die Datenbanksoftware läuft. Die Datenbank beinhaltet alle Daten, die für die Anwendungssoftware relevant sind. Die hohe Skalierbarkeit dieses Mehrschichtenansatzes erlaubt einer großen Anzahl von Benutzern in einer Organisation, gleichzeitig im gleichen Applikationssystem zu arbeiten. Die Systemlast kann besser zwischen Applikationsserver und Datenbankserver verteilt werden, als dies bei Systemen möglich war, bei denen Anwendungen direkt auf dem Datenbankserver liefen. Die technischen Möglichkeiten des Internet und die Idee, Geschäftsprozesse nicht nur innerhalb einer Organisation, sondern auch über Organisationsgrenzen hinweg zu optimieren, brachten viele neue betriebswirtschaftliche Softwareanwendungen hervor, die entwickelt wurden, um die innerbetrieblichen ERP- Anwendungsprogramme zu ergänzen. Beispiele dafür sind Customer Relationship Management Anwendungen (CRM) zur Verbesserung des Managements von Kundenbeziehungen und Supply Chain Management Anwendungen (SCM) zur Verbesserung von sowohl der Logistik zwischen Unternehmen als auch der Lieferantenbeziehungen.
  • Dieser Ansatz resultiert jedoch in einer Vielzahl verschiedener und verteilter Softwarepakete und erhöht die Komplexität der Systemlandschaft in Organisationen. Eine typische Systemlandschaft besteht heute aus verteilten Systemen mit verschiedenen Softwareanwendungen und getrennten Servern. Jedes System erfordert seine eigene Datenbank, die wiederum auf einer eigens dafür vorgesehenen physischen Hardware (Datenbankserver) läuft. Die Gründe dafür liegen zum Teil in der Hardware, zum Teil in der Software. So waren beispielsweise in der Vergangenheit die meisten Shared-Memory-Prozessor Systeme (SMP) auf weniger als 16 Prozessoren und der gemeinsame Hauptspeicher auf weniger als 4 Gigabyte limitiert. Betriebssysteme boten nicht die Möglichkeit, mehrere logische Partitionen für Gruppen von Prozessoren zu erzeugen. Datenbanken konnten nur eine Maximalanzahl an Tabellen verwalten (z. B. 10 000).
  • Fig. 1 zeigt ein Beispiel einer zum Stand der Technik gehörenden Computersystemlandschaft für eine Organisation. Die Anwendungssysteme ERP 1, CRM 2 und SCM 3 sind über ein Netzwerk miteinander verbunden. Das Netzwerk ist ein Local Area Network (LAN) oder ein Wide Area Network (WAN) oder jedes andere aus dem Stand der Technik bekannte Netzwerk. Das Netzwerk umfasst die Teile 10 und 11. Jedes der Anwendungssysteme erfordert sein eigenes Datenbanksystem (DB) mit den entsprechenden Anwendungsdaten, z. B. ERP DB 4, CRM DB 5 und SCM DB 6. Jedes Datenbanksystem 4-6 ist über die entsprechenden Anwendungssysteme 1-3 über die Netzwerkzweige 12-14 verbunden. Jedes Anwendungssystem 1-3 stellt den Mehrheiten 20-22 von Anwendungsbenutzern verschiedene Anwendungsservices zur Verfügung. Einer einzelnen Person können dabei mehrere Anwendungsbenutzer aus jeder der Mehrheiten zugeordnet werden. Beispielsweise können mittels eines browser-basierten Front End Computers (nicht gezeigt) über das Netzwerk alle Anwendungsbenutzer der Mehrheiten 20-22 mit dem entsprechenden Anwendungssystemen 1-3 verbunden 23-25 werden. Das System, welches dem Stand der Technik entspricht, benötigt daher drei verschiedene Datenbankservercomputer und erfordert zusätzlich die Verwaltung (Backup, Tune, Manage) dieser drei Datenbanksysteme. Im Falle eines totalen oder teilweisen Systemzusammenbruchs ist es außerdem sehr schwierig, eine konsistente Sicherung (Backup) aller Datenbanksysteme mit dem Datenbestand unmittelbar vor dem Zusammenbruch zu bewerkstelligen.
  • Aufgrund des permanenten Datenaustauschs zwischen den verschiedenen Softwareanwendungen ist dies kritisch. Den Grund dafür erläutert das folgende Beispiel.
  • Ein Vertriebsmitarbeiter erzeugt einen Auftrag über die Internet Sales Anwendung des CRM Systems 2. Danach wird der Auftrag in die Auftragsabwicklungsanwendung des ERP Systems 1 übergeleitet. Das SCM System 3 analysiert den Auftrag hinsichtlich der Verfügbarkeit unter Benutzung der Verfügbarkeitsprüfungsanwendung und schließlich erzeugt ein analytisches Anwendungssystem für Simulationen (nicht gezeigt) den entsprechenden Forecast für den Auftrag. Um die Datenintegrität aller geschäftlichen Anwendungsdaten sicher zu stellen, ist deshalb eine volle und konsistente Wiederherstellung aller Datenbanken in der Systemlandschaft mit dem Datenstand unmittelbar vor dem Systemzusammenbruch (Point-in-time Recovery) erforderlich.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung offenbart System, Verfahren und Computerprogrammprodukt, um Benutzern mehrere betriebliche Softwareanwendungen mit wesentlich weniger Hardware und weniger Systemverwaltungsaufwand zur Verfügung zu stellen. Dies wird dadurch erreicht, dass mehrere unabhängige und verschiedene Softwarenanwendungen in Verbindung mit einem einzigen Datenbanksystem laufen. Für n verschiedene Anwendungen wird nur ein physischer Datenbankserver benötigt, wohingegen in Systemen, die dem Stand der Technik entsprechen, n physische Datenbankserver erforderlich sind. Somit muss nur ein Datenbanksystem verwaltet werden (z. B. tägliches Backup, Datenbanktuning, Sicherheitsverwaltung). Die vorliegende Erfindung verringert somit die Kosten, die für eine Organisation mit dem Besitz von Anwendungssystemen verbunden sind. Im folgenden wird der Begriff Datenbanksystem so verwendet, dass er sowohl ein Mittel zum Speichern von Daten als auch ein Mittel zum Auslesen von Daten umfasst. Mittel zum Speichern sind beispielsweise Tabellen oder Bereiche. Ein Mittel zum Auslesen ist beispielsweise ein Datenbankbetriebssystem. Datenbanksysteme sind kommerziell verfügbar.
  • Datenbanksysteme werden manchmal als Datenbankmanagementsysteme (DBMS) bezeichnet.
  • Bevorzugt handelt es sich bei dem Datenbanksystem um ein relationales Datenbanksystem. Bevorzugt kommunizieren Anwendungssystem und Datenbanksystem mittels vordefinierter Instruktionen einer vordefinierten Datenbankbeschreibungssprache. Solche Sprachen sind im Stand der Technik bekannt. Ein Beispiel dafür ist die Standard Query Language (SQL). Technische Restriktionen, die zum Multidatenbanksystemparadigma im Stand der Technik geführt haben, wurden in der Zwischenzeit gelöst. Die vorliegende Erfindung macht sich folgende Merkmale eines hoch performanten Datenbanksystems zu Nutze:
    Nachgewiesene Skalierbarkeit von 32- oder 64- Prozessor SMP Servern (z. B. HP_Superdom, Compaq Alpha);
    Betriebssysteme, die 32- oder 64-Prozessor SMP Server unterstützen (z. B. HP-UX, True 64);
    Unterstützung der 64-Bit Technologie in Betriebssystemen von SMP Servern, wodurch es möglich wird, mehr als vier Gigabyte Hauptspeicher zu adressieren;
    Relationale Datenbankmanagementsysteme (RDBMS), die Datenbankserver mit 64 Prozessoren unterstützen, wodurch eine hohe Performance ermöglicht wird, wenn mehrere Anwendungssysteme in Verbindung mir einem Datenbanksystem laufen;
    RDBMS, die mehr als 50 000 verschiedene Tabellen in einer Datenbank unterstützen, wodurch das Management von Daten verschiedener Anwendungen auf einer Datenbank ermöglicht wird.
  • Die vorliegende Erfindung löst weiterhin das technische Problem, dass ein Datenbanksystem gemäß dem Stand der Technik nicht in der Lage ist, Anwendungsdaten zu speichern, die aus mehreren Anwendungssystemen stammen, wobei diese Anwendungssysteme das Datenbanksystem gleichzeitig nutzen. Das Computersystem gemäß Anspruch 1 und das Verfahren gemäß Anspruch 8 erlauben mehreren Anwendungssystemen, das gleiche physische Datenbanksystem gleichzeitig zu nutzen. Dies wird dadurch erreicht, dass gemäß der Ansprüche 10 und 12 das Datenbanksystem in der Lage ist, mehrere Profile (verschiedene Typen von Datenbankbenutzern) zu unterstützen, wobei jedes Profil einem Anwendungssystem zugeordnet ist. Gemäß Anspruch 2 wird jedes Anwendungssystem durch das zugeordnete Profil zum "Besitzer" eines Speicherbereichs des Datenbanksystems. Im folgenden werden der Begriff Profil und der Begriff Datenbankprofil synonym verwendet. Alle anwendungsbezogenen Daten der verschiedenen Anwendungssysteme werden konsistent in disjunkten Speicherbereichen des Datenbanksystems abgelegt. Die entsprechende Datenbanksoftware wird gemäß Anspruch 16 als Computerprogrammprodukt beschrieben. Die entsprechende Clientsoftware für das Anwendungssystem wird gemäß Anspruch 17 ebenfalls als Computerprogrammprodukt beschrieben. Die zugrundeliegenden Datenstrukturen sind in den Ansprüchen 14 und 15 beschrieben.
  • Ein weiterer Vorteil der vorliegenden Erfindung liegt darin, dass die Architektur mit einem einzelnen Datenbanksystem die Möglichkeit bietet, ein Upgrade für ein Anwendungssystem einzuspielen, ohne dabei andere Anwendungssysteme, die das gleiche Datenbanksystem nutzen, abschalten zu müssen. Der Fachmann erreicht dies beispielsweise dadurch, dass er die gemeinsamen Programmteile der Datenbanksoftware auf jedes Datenbankprofil repliziert.
  • Weiterhin löst die vorliegende Erfindung das technische Problem, dass in einem System gemäß dem Stand der Technik im Falle eines totalen oder teilweisen Systemzusammenbruchs eine vollständige, konsistente Wiederherstellung der verschiedenen Anwendungssysteme im Netzwerk nicht möglich ist. Ein Backup kann online durchgeführt werden, indem kontinuierlich die Änderungen der Anwendungsdaten in ein Backup-Datenbanksystem geschrieben werden. Wenn das Datenbanksystem heruntergefahren ist, kann ein Offline-Backup durchgeführt werden, indem eine Kopie des Datenbanksystems erstellt wird. Der Online-Backup wird benutzt, um eine konsistente Point-in-time Recovery zu gewährleisten, wohingegen der Offline-Backup als Grundlage für weitere Systemimplementierungen innerhalb der Organisation dienen kann.
  • Außerdem liefert die vorliegende Erfindung eine Lösung für das technische Problem einer nicht adequaten Lastverteilung zwischen Datenbanksystem und Anwendungssystemen, die durch den gleichzeitigen Zugriff mehrerer Anwendungssysteme auf das Datenbanksystem verursacht wird. Eine Verbesserung der Lastverteilung wird gemäß den Ansprüchen 1 und 5-7 dadurch erreicht, dass mehrere Anwendungssysteme ein einziges Datenbanksystem nutzen, wobei das Datenbanksystem ein Betriebssystem nutzt, welches die Möglichkeit bietet, mehrere logische Gruppen von Prozessoren in einem SMP System zu erzeugen. Jedem Anwendungssystem wird dann eine dieser Gruppen von Prozessoren des Datenbankservercomputers zugeordnet. Wenn beispielsweise die höchste Datenbanklast durch ein ERP System verursacht wird und ein CRM- sowie ein SCM System eine niedrigere Last bewirken, so wäre eine mögliche Konfiguration, dem ERP System 24 Prozessoren zuzuordnen, dem CRM System 16 Prozessoren und dem SCM System nur 8 Prozessoren zuzuordnen, sofern der Datenbankserver Shared Memory Prozessoren (SMP) benutzt und wenigstens 48 Prozessoren enthält. Ein Fachmann kann die Skalierbarkeit des Datenbanksystems weiter erhöhen, indem er, gemäß Anspruch 3, parallele Datenbankserver einsetzt, wobei verschiedene Server in einen einzigen großen virtuellen Datenbankserver mit einem Shared Cashe Memory zusammengefasst werden.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 zeigt ein Beispiel für eine Computersystemlandschaft einer Organisation gemäß dem Stand der Technik;
  • Fig. 2 zeigt ein bevorzugtes Ausführungsbeispiel eines Computersystems mit mehreren Anwendungssystemen die, gemäß der vorliegenden Erfindung, das selbe Datenbanksystem nutzen;
  • Fig. 3 zeigt eine Detailsicht des bevorzugten Ausführungsbeispiels des Computersystems;
  • Fig. 4 zeigt Datenbanktabellen im Speicher des Datenbanksystems gemäß der vorliegenden Erfindung;
  • Fig. 5 zeigt ein vereinfachtes Flussdiagramm eines Verfahrens zur Kommunikation mehrerer Anwendungssysteme mit einem einzelnen Datenbanksystem gemäß der vorliegenden Erfindung;
  • Fig. 6 zeigt ein vereinfachtes Blockdiagramm der Anwendungssysteme und des Datenbanksystems mit Zuordnungsmatrizen; und
  • Fig. 7 zeigt ein weiteres bevorzugtes Ausführungsbeispiel gemäß der vorliegenden Erfindung.
  • Detaillierte Beschreibung eines bevorzugten Ausführungsbeispiels
  • Fig. 2 zeigt ein bevorzugtes Ausführungsbeispiel eines Computersystems 999 mit mehreren Anwendungscomputersystemen 901, 902, die das selbe Datenbankcomputersystem 900 gemäß der vorliegenden Erfindung nutzen. Das Computersystem 999 umfasst dabei eine Mehrzahl von Computern 900, 901, 902 (oder 90Q, wobei Q = 0. . .Q-1, Q eine beliebige Zahl)
  • Die Computer 900-902 sind über ein Netzwerk 990 verbunden. Datenbankcomputer 900 umfasst Prozessor 910, Speicher 920, Bus 930 und, optional, Eingabevorrichtung 940 und Ausgabevorrichtung 950 (Ein- und Ausgabevorrichtung ergeben das Benutzerinterface 960). Die Erfindung liegt vor als Computerprogrammprodukt (CPP) 100 (oder 10Q, wobei Q = 0. . .Q-1, Q eine beliebige Zahl), Programmträger 970 und Programmsignal 980. Diese Komponenten werden im folgenden als Programm bezeichnet.
  • Die Elemente 100 und 910-980 des Computers 900 verallgemeinern die entsprechenden Elemente 10Q und 91 Q--98Q (gezeigt für Q = 0 in Computern 90Q).
  • Computer 900 ist beispielsweise ein konventioneller Datenbankserver in der Form eines Multiprozessorcomputers, eines Mainframecomputers, eines tragbaren oder stationären PCs oder dergleichen.
  • Prozessor 910 steht für mindestens einen Prozessor wie z. B. einem Zentralprozessor (CPU), einem Mikrocontroller (MCU), einem digitalen Signalprozessor (DST) oder dergleichen.
  • Speicher 920 symbolisiert Elemente, die Daten und Instruktionen entweder temporär oder permanent speichern. Obwohl Speicher 920 zum besseren Verständnis als Teil des Computers 900 gezeigt ist, kann die Speicherfunktion auch anderswo im Netzwerk 990 implementiert werden, beispielsweise in den Computern 901/902 und im Prozessor 910 selbst (z. B. Cache, Register). Memory 920 kann ein Read-only-memory (ROM) ein Random-access-memory (RAM) oder ein Speicher mit anderen Zugriffsoptionen sein. Speicher 920 wird physisch als ein computerlesbarer Datenträger implementiert, wie z. B.:
    • a) magnetische Datenträger wie z. B. Festplatte, Diskette, Magnetband;
    • b) optische Datenträger wie z. B. CD-ROM, DVD;
    • c) Halbleiterdatenträger wie z. B. DRAM, SRAM, EPROM, EEPROM oder jedes andere beliebige Medium wie z. B. Papier
  • Optional ist Speicher 920 über verschiedene Medien verteilt. Teile des Speichers 920 können fest oder austauschbar angebracht sein. Zum lesen von oder schreiben auf dem Datenträger benutzt der Computer 900 Mittel, die im Stand der Technik bekannt sind, wie z. B. Diskettenlaufwerke oder Bandlaufwerke.
  • Speicher 920 speichert Unterstützungskomponenten wie z. B. ein Bios (Basic input output system), ein Betriebssystem (OS), eine Programmbibliothek, einen Compiler, einen Interpreter oder ein Textverarbeitungsprogramm. Unterstützungskomponenten sind kommerziell verfügbar und können auf dem Computer 900 von Fachleuten installiert werden. Zum besseren Verständnis sind diese Komponenten nicht dargestellt.
  • Computerprogramm 100 umfasst Programminstruktionen und, optional, Daten, die den Prozessor 910 unter anderem dazu veranlassen, die Verfahrensschritte 430-450 der vorliegenden Erfindung auszuführen. Die Verfahrensschritte werden später im Detail erläutert. Mit anderen Worten definiert das Computerprogramm 100 die Funktion des Computers 900 und seine Interaktion mit dem Systemnetzwerk 999. Ohne die Absicht zur Einschränkung kann beispielsweise Computerprogramm 100 als Quellcode in einer beliebigen Programmiersprache und als Binärcode in kompilierter Form vorliegen. Der Fachmann ist in der Lage, Computerprogramm 100 in Verbindung mit jeder der zuvor erläuterten Unterstützungskomponenten (z. B. Compiler, Interpreter, Betriebssystem) zu benutzen.
  • Zum besseren Verständnis ist das Computerprogramm 100 im Speicher 920 dargestellt. Computerprogramm 100 kann aber auch beliebig anderswo gespeichert sein. Computerprogramm 100 kann ebenfalls auf dem Datenträger 970 gespeichert sein.
  • Datenträger 970 ist außerhalb des Computers 900 dargestellt. Um Computerprogramm 100 auf den Computer 900 zu übertragen, kann der Datenträger 970 in das Eingabegerät 940 eingeführt werden. Datenträger 970 ist als ein beliebiger computerlesbarer Datenträger implementiert, wie z. B. als eines der Medien, die zuvor erläutert wurden (vgl. Memory 920). Im Allgemeinen ist der Datenträger 970 ein Erzeugnis, welches aus einem computerlesbaren Medium besteht und einen computerlesbaren Programmcode beinhaltet, um das Verfahren der vorliegenden Erfindung auszuführen. Außerdem kann das Programmsignal 980 ebenfalls das Computerprogramm 100 beinhalten. Signal 980 wird über das Netzwerk 990 zum Computer 900 übertragen.
  • Optional beinhalten die Datenträger 971/972 (nicht gezeigt) und das Programmsignal 981/982 das Computerprogrammprodukt (CPP) 101/102 (nicht gezeigt), welches von dem Prozessor 911/912 (nicht gezeigt)in Computer 901/902 entsprechend ausgeführt wird.
  • Eingabevorrichtung 940 steht für eine Vorrichtung, die Daten und Anweisungen zur Verarbeitung durch Computer 900 bereitstellt. Beispielsweise ist Eingabevorrichtung 940 eine Tastatur, eine Zeigevorrichtung (Maus, Trackball, Cursorpfeile), Mikrofon, Joystick, Scanner. Obwohl es sich bei den Beispielen allesamt um Vorrichtungen mit menschlicher Interaktion handelt, kann die Vorrichtung 940 auch ohne menschliche Interaktion auskommen, wie z. B. ein drahtloser Empfänger (z. B. mittels Satelliten- oder terrestrischer Antenne), ein Sensor (z. B. ein Thermometer), ein Zähler (z. B. ein Stückzahlzähler in einer Fabrik). Eingabevorrichtung 940 kann ebenfalls zum lesen des Datenträgers 970 verwendet werden.
  • Ausgabevorrichtung 950 steht für eine Vorrichtung, die Anweisungen und Daten, welche verarbeitet wurden, anzeigt. Beispiele dafür sind ein Monitor oder ein anderer Anzeigetyp (Kathodenstrahlröhre, Flachbildschirm, Flüssigkristallanzeige, ein Lautsprecher, ein Drucker, eine Vibrationsalarmanzeige). Ähnlich wie bei der Eingabevorrichtung 940 kommuniziert die Ausgabevorrichtung 950 mit dem Benutzer, aber sie kann genauso mit anderen Computern kommunizieren.
  • Eingabevorrichtung 940 und Ausgabevorrichtung 950 können in einer einzigen Vorrichtung kombiniert werden. Beide Vorrichtungen 940, 950 können optional bereit gestellt werden.
  • Bus 930 und Netzwerk 990 stellen logische und physische Verbindungen dar, die sowohl Anweisungen als auch Datensignale übertragen. Verbindungen innerhalb des Computers 900 werden üblicherweise als Bus 930 bezeichnet, Verbindungen zwischen den Computern 900-902 werden als Netzwerk 990 bezeichnet. Die Vorrichtungen 940 und 950 sind mit dem Computer 900 durch den Bus 930 (wie gezeigt) verbunden oder optional über das Netzwerk 990 angeschlossen. Die Signale innerhalb des Computers 900 sind überwiegend elektrische Signale, wohingegen die Signale im Netzwerk elektrische, magnetische und optische Signale oder auch drahtlose Radiosignale sein können. Netzwerkumgebungen (wie Netzwerk 990) sind in Büros, unternehmensweiten Computernetzwerken, Intranets und im Internet (z. B. World Wide Web) üblich. Die physische Entfernung zwischen den Computern im Netzwerk ist nicht von Bedeutung. Netzwerk 990 kann ein drahtloses oder ein verdrahtetes Netzwerk sein. Als mögliche Beispiele für Implementierungen des Netzwerk 990 seien hier angeführt: ein lokales Netzwerk (LAN), ein Wide Area Network (WAN), ein integriertes Servicedigitalnetzwerk (ISDN), eine Infrarot(IR)-verbindung, eine Radioverbindung wie beispielsweise das Universal Mobile Telecommunication System (UMTS) oder eine Satellitenverbindung.
  • Übertragungsprotokolle und Datenformate sind im Stand der Technik bekannt. Beispiele dafür sind: TCP/IP (Transmission Control Protocol/Internet Protocol), HTTP (Hypertext Transfer Protocol), URL (Unique Resource Locator), HTML (Hypertext Markup Language), XML (Extensible Markup Language), WML (Wireless Application Markup Language) etc.
  • Schnittstellen zum Koppeln der einzelnen Komponenten sind ebenfalls im Stand der Technik bekannt. Zur Vereinfachung sind die Schnittstellen nicht dargestellt. Eine Schnittstelle kann beispielsweise eine serielle Schnittstelle, eine parallele Schnittstelle, ein Gameport, ein universeller serieller Bus, ein internes oder externes Modem, ein Grafikadapter oder eine Soundkarte sein.
  • Fig. 3 zeigt eine Detailsicht des bevorzugten Ausführungsbeispiels von Computersystem 999. Computersystem 999 umfasst mindestens ein erstes Anwendungssystem 901 und ein zweites Anwendungssystem 902 sowie ein Datenbanksystem 900. Das erste Anwendungssystem 901 führt mindestens einen ersten Anwendungsservice aus einer Mehrheit 201 von Anwendungsservices (AS1) aus. Das zweite Anwendungssystem 902 führt mindestens einen zweiten Anwendungsservice aus einer Mehrheit 301 von Anwendungsservices (AS2) aus.
  • Mindestens ein Benutzer aus einer ersten Mehrheit von Anwendungsbenutzern 801 kann Anwendungsservices von AS1 nutzen, indem er zu dem ersten Anwendungssystem 901 eine Verbindung über wenigstens einen Frontendcomputer (nicht gezeigt) aufbaut. Der Frontendcomputer kann beispielsweise ein PC, ein Laptopcomputer, ein Webserver oder dergleichen sein.
  • In der gleichen Weise kann mindestens ein Benutzer aus einer zweiten Mehrheit von Anwendungsbenutzern 802 Applikationsservices von AS2 nutzen, indem er sich mit dem zweiten Anwendungssystem 902 über mindestens einen Frontendcomputer (nicht gezeigt) verbindet. Zum besseren Verständnis sei erläutert, dass die Verbindungen 990-1 von Mehrheit 801 zum ersten Anwendungssystem 901 und 990-2 von Mehrheit 802 zum zweiten Anwendungssystem 902 als Teil des Netzwerks 990 dargestellt sind und gleichbedeutend mit den Verbindungen zu den Frontendcomputern (nicht gezeigt) sind. Ein Anwendungsbenutzer kann den gleichen Frontendcomputer benutzen, um beide Anwendungssystem (901, 902) zu erreichen. Es ist nicht notwendig für die Erfindung, dass jeder Anwendungsbenutzer einer unterschiedlichen Person zugeordnet ist. Vielmehr kann eine Person mehreren Anwendungsbenutzern aus mehreren Anwendungssystemen zugeordnet werden.
  • Vorzugsweise hat der Speicher 920 des Datenbanksystems 900 mindestens einen ersten Speicherbereich 920-1 und einen zweiten Speicherbereich 920-2. Die Speicherbereiche sind disjunkt, d. h. Änderungen im ersten Speicherbereich 920-1 haben keinerlei Einfluss auf den zweiten Speicherbereich 920-2 und umgekehrt. Datenbanksystem 900 speichert mindestens eine erste Zuordnung eines ersten, vorher bestimmten Profils 110 zum ersten Speicherbereich 920-1 und speichert wenigstens eine zweite Zuordnung eines zweiten, vorher bestimmten Profils 111 zum zweiten Speicherbereich 920-2. Vorzugsweise sind das erste Profil 110 und das zweite Profil 111 einzigartig und beziehen sich jeweils auf das erste und zweite Anwendungssystem (901, 902). Diese Beziehung wird durch die gestrichelten Linien 110-1 und 111-2 verdeutlicht.
  • Wenn ein Anwendungsbenutzer einen Anwendungsservice in einem der Anwendungssysteme 901 oder 902 startet, greift das Anwendungssystem (das den Service ausführt) auf Datenbanksystem 900 zu. Im Fall, dass ein Anwendungsservice von AS1 gestartet wird, greift das erste Anwendungssystem 901 auf den ersten Speicherbereich 920-1 des Datenbanksystems 900 über das Profil 110 zu. Für den Fall, dass ein Anwendungsservice von AS2 gestartet wird, greift das zweite Applikationssystem 902 auf den zweiten Speicherbereich 920-2 des gleichen Datenbanksystems 900 über das Profil 111 zu. Zum besseren Verständnis können die Profile 110 und 111 als Benutzer des Datenbanksystems 900 gesehen werden, wobei der Datenbankbenutzer das jeweilige Anwendungssystem (902, 902) ist, das sich auf das entsprechende Profil (110, 111) bezieht (110-1, 111-1). Diese Architektur ermöglicht, mit einer großen Anzahl an Anwendungsbenutzern über ein einzelnes Profil auf dem Datenbanksystem 900 zu arbeiten und dabei die Last des Datenbanksystems niedrig zu halten. Für die Erfindung ist es nicht notwendig, dass zu einem Anwendungssystem nur ein Profil zugeordnet wird. Im Falle einer größeren Anzahl an Profilen für ein Anwendungssystem wird die Last des Datenbanksystems im Vergleich zur Last der Anwendungssysteme erhöht - insbesondere dann, wenn mehrere Anwendungssysteme in Verbindung mit einem einzigen Datenbanksystem laufen. Typischerweise kann ein Anwendungssystem mehrere Anwendungsservercomputer umfassen, um die Last auf mehrere Prozessoren zu verteilen. Deshalb kann die Skalierbarkeit des Anwendungssystems durch Hinzufügen weiterer Hardware erhöht werden. Insbesondere dann, wenn mehrere Anwendungssysteme im Zusammenhang mit einem einzigen Datenbanksystem laufen, ist die Last des Datenbanksystems ebenfalls kein kritischer Faktor mehr, da der Einsatz von parallelen Datenbankservern hilft, die Skalierbarkeit des Datenbanksystems zu erhöhen und somit den Ein- Datenbankansatz gemäß der vorliegenden Erfindung ermöglicht.
  • Fig. 4 zeigt gemäß der vorliegenden Erfindung Datenbanktabellen 190 bis 193 im Speicher 920 im Speicher des Datenbanksystems 900. Die Tabellen 190, 191 sind im ersten Speicherbereich 920-1 und die Tabellen 192, 193 sind im zweiten Speicherbereich 920-2 gespeichert. Profil 110 ist dem ersten Speicherbereich 920-1 und Profil 111 dem zweiten Speicherbereich 920-2 zugeordnet. Dies bedeutet, dass nur das erste Anwendungssystem 901 auf den ersten Speicherbereich 920-1 und nur das zweite Anwendungssystem 902 auf den zweiten Speicherbereich 920-2 zugreifen kann. Jede Tabelle beinhaltet in ihrem Tabellenkopf Informationen über die Profile, die auf die Tabelle Zugriff haben. Über die Profile sind damit indirekt auch die Anwendungssysteme definiert, die auf eine bestimmte Tabelle zugreifen können. Manchmal benötigen verschiedene Anwendungssysteme Zugriff auf die gleichen Informationen. Wenn beispielsweise ein ERP System mit einem SCM System integriert ist, sollte nach Möglichkeit die Stammdatentabelle für Materialien im ERP System konsistent mit der Materialstammdatentabelle des SCM Systems sein. Die verschiedenen Speicherbereiche (z. B. 920-1, 920-2) des Datenbanksystems 900 sind disjunkt. Der Speicherbereich mit dem Profil für das ERP System erlaubt dem SCM System nicht, auf seine Materialstammdatentabelle zuzugreifen. Deshalb existieren manche Tabellen in mehr als einem Speicherbereich des Datenbanksystems. Die Konsistenz dieser Tabellen wird durch das jeweilige Anwendungssystem garantiert, indem jedes Anwendungssystem über das Netzwerk 990 mit den anderen Anwendungssystemen kommuniziert und dabei jedes System konsistent seine eigene Tabellen in dem jeweiligen Speicherbereich aktualisiert.
  • Nachdem die Erfindung als Computersystem beschrieben wurde, wird im folgenden die Erfindung als Verfahren erläutert.
  • Fig. 5 zeigt ein vereinfachtes Flussdiagramm des Verfahrens 400 zur Kommunikation mehrerer Anwendungssysteme mit einem einzigen Datenbanksystem. Verfahren 400 umfasst die folgenden Schritte: Bereitstellung von Anwendungssystemen 410, Verbinden eines Datenbanksystems mit den Applikationssystemen 420, Teilen des Datenbankspeichers in disjunkte Speicherbereiche 430, Zuordnen der Speicherbereiche zu Anwendungssystemen 440 und Zugreifen auf Speicherbereiche durch Anwendungssysteme 450.
  • Im Schritt 410 werden wenigstens ein erstes Anwendungssystem 901 (vgl. Fig. 3) und ein zweites Anwendungssystem 902 bereitgestellt. Jedes der Anwendungssysteme führt mindestens einen Anwendungsservice aus einer Mehrheit von Anwendungsservices (201, 301) aus, wobei diese Anwendungsservices jeweils von einer Mehrheit von Benutzern (801, 802) des jeweiligen Anwendungssystems (901, 920) gestartet werden können.
  • In Schritt 420 wird das Datenbanksystem 900 mit dem ersten Anwendungssystem 901 und mindestens dem zweiten Anwendungssystem 902 verbunden. Die Verbindung wird über das Netzwerk 990 realisiert.
  • In Schritt 430 wird der Speicher 920 des Datenbanksystems 900 logisch geteilt, wobei mindestens ein erster Speicherbereich 920-1 und ein zweiter Speicherbereich 920-2 erzeugt werden. Die Speicherbereiche sind disjunkt. Speicherbereiche 920-1 und 920-2 speichern die Tabellen 190 bis 193 (vgl. Fig. 4) des Datenbanksystems 900.
  • Im Schritt 440 wird der erste Speicherbereich 920-1 dem ersten Anwendungssystem 901 zugeordnet und der zweite Speicherbereich 920-2 dem zweiten Anwendungssystem 902. Bevorzugter Weise können die Zuordnungen von Speicherbereichen zu Anwendungssystemen in der folgenden Art und Weise implementiert werden:
    Mindestens ein vordefiniertes, einzigartiges Profil 110, 110 des Datenbanksystems 900 wird dem jeweiligen Speicherbereich 920-1, 920-2 zugeordnet. Die Zuordnungen können in einer "Speicherbereich-zu-Profil-Zuordnung" als Datenbankmatrix abgelegt werden, wie in Matrix 1 (vgl. Fig. 6) verdeutlicht. Matrix 1 Speicherbereich-zu-Profil-Zuordnung

  • Mindestens eines der vordefinierten Profile 110, 111 eines jeden Speicherbereichs 920-1, 920-2 wird dem entsprechenden Anwendungssystem 901, 902 zugeordnet. Diese Zuordnungen können in einer "Profil-zu- Anwendungssystem-Zuordnung" als Datenbankmatrix abgelegt werden, wie in Matrix 2 (vgl. Fig. 6) verdeutlicht. Matrix 2 Profil-zu-Anwendungssystem-Zuordnung

  • In Schritt 450 greifen das erste und zweite Anwendungssystem (901, 902) auf den jeweils ersten und zweiten Speicherbereich (920-1, 920-2) zu. Bevorzugter Weise greifen die Applikationssysteme 901, 902 auf das Datenbanksystem 900 über mindestens eines der ihnen zugeordneten Profile 110, 111 zu. Der Zugriff eines Anwendungssystems auf ein Datenbanksystem löst bevorzugter Weise eine der folgenden Datenbankoperationen aus: Lesen, Schreiben, Kopieren, Ändern, Einfügen, Anhängen oder Löschen von Tabelleneinträgen innerhalb des Speicherbereichs, der dem Anwendungssystem zugeordnet ist. Ein Fachmann kann die Profile 110 und 111 sowie die Zuordnungsmatrizen 1 und 2 implementieren, indem er Datenbankpuffer benutzt, so dass die logische Zuordnung eines jeden Anwendungssystems zu dem entsprechenden Speicherbereich gültig bleibt, während System 999 läuft. Deshalb muss die Zuordnung nicht bei jedem Zugriff eines Anwendungssystems auf das Datenbanksystem aufs Neue erzeugt werden.
  • Fig. 6 zeigt ein vereinfachtes Blockdiagramm der Anwendungssysteme 901 und 902 und des Datenbanksystems 900 mit den Zuordnungsmatrizen 180, 181 und 182. Die Matrizen 180, 181 und 182 speichern die Zuordnungen, welche zuvor in Verbindung mit den Matrizen 1 und 2 erläutert wurden. Idealer Weise speichert Matrix 180 die Speicherbereich-zu-Profil-Zuordnung (vgl. Matrix 1); Matrix 181 speichert die Profil-zu-Anwendungssystem- Zuordnung für System 901 (vgl. Matrix 2); und Matrix 182 speichert die Profil-zu-Anwendungssystem-Zuordnung für System 902 (vgl. Matrix 2).
  • Der Speicherort der Matrizen 180 bis 182 ist nicht wesentlich für die vorliegende Erfindung. Idealerweise können die Matrizen 180 bis 182 gespeichert sein, wie in Fig. 6 verdeutlicht. Matrix 180 ist im Speicher 920 des Systems 900 abgelegt; Matrix 181 im Speicher 921 des Systems 901 und Matrix 182 im Speicher 922 des Systems 902. Ein Fachmann kann unter der Voraussetzung, dass die Matrizen die zuvor erläuterte Funktionalität bieten, diese auch anderweitig abspeichern. Bevorzugter Weise sind die Matrizen 181 bis 183 Teil des jeweiligen Computerprogrammprodukts 100/101/102.
  • Fig. 7 illustriert ein spezifisches, bevorzugtes Ausführungsbeispiel der vorliegenden Erfindung, wobei Anwendungssysteme 904 bis 909 der SAP Produktfamilie und ein Datenbanksystem 903, wie zum Beispiel eine Oracle 8i Datenbank, zum Einsatz kommen. Zwei R/3 ERP Systeme 904/905, ein CRM System 906, ein SCM System 907, ein Workplace (WP) System 908 und ein Knowledge Warehouse (KW) System 909 sind über das Netzwerk 995 mit dem Datenbanksystem 903 verbunden. Speicher 923 des Datenbanksystems 903 ist in 6 disjunkte Speicherbereiche 923-1 bis 923-6 unterteilt. Profile P1 bis P6 sind den Speicherbereichen 923-1 bis 923-6 gemäß der Matrix 3 zugeordnet. Matrix 3 Profil-zu-Speicherbereich-Zuordnung

  • Jedes Profil ist in Matrix 4 einem entsprechenden Anwendungssystem zugeordnet. Matrix 4 Profil-zu-Anwendungssystem-Zuordnung



  • Die Zuordnungen sind als gestrichelte Linien dargestellt. Jedes Anwendungssystem 904 bis 909 kann gemäß der Zuordnungen, die in den Matrizen 3 und 4 definiert sind, über die zugeordneten Profile nur auf die Daten des jeweilig zugeordneten Speicherbereichs des Datenbanksystems 903 zugreifen. Dies garantiert die Datenintegrität für jedes Anwendungssystem, obwohl alle Anwendungssysteme 904-909 das selbe Datenbanksystem nutzen. Es ist möglich, für ein beliebiges Anwendungssystem ein Upgrade einzuspielen, währen die anderen Anwendungssysteme weiterlaufen. Ein konsistenter Backup aller Anwendungsdaten des Datenbanksystems 903 kann sowohl online als auch offline durchgeführt werden. Der Online-Backup schreibt jede Änderung der Anwendungsdaten in ein Datenbankbackup-System (nicht gezeigt), sobald eine Änderung der Daten erfolgt. Eine vollständige konsistente Wiederherstellung dieses Ein- Datenbank-Systems ist damit im Fall eines totalen oder teilweisen Systemzusammenbruchs gewährleistet.
  • Nachdem die vorliegende Erfindung als Verfahren und System beschrieben wurde, soll die Erfindung im folgenden noch als Datenstruktur (Zuordnungsschema), Computerprogrammprodukt und computerlesbares Medium beschrieben werden.
  • Eine Datenstruktur, die die Zuordnung mehrerer Anwendungssysteme (900, 901, 902) zu einem Datenbanksystem 990 beschreibt, soll im folgenden Zuordnungsstruktur (180-182) genannt werden. Ein erstes Anwendungssystem 901 stellt einer ersten Mehrheit von Anwendungsbenutzern 801 Anwendungsservices zur Verfügung. Mindestens ein zweites Anwendungssystem 902 stellt einer zweiten Mehrheit von Anwendungsbenutzern 802 Anwendungsservices zur Verfügung. Das Zuordnungsschema ist gekennzeichnet durch eine erste Zuordnung 180 des Datenbanksystems 900, mittels derer einem ersten Profil 110 und mindestens einem zweiten Profil 111 Datenbankservices zur Verfügung gestellt werden. Das Zuordnungsschema ist weiterhin gekennzeichnet durch die Zuordnungen 181 und 182. In der Zuordnung 181 wird das erste Anwendungssystem 901 dem ersten Profil 110 zugeordnet und in der Zuordnung 182 wird das zweite Anwendungssystem dem zweiten Profil 111 zugeordnet. Das erste und das zweite Profil sind jeweils den disjunkten Speicherbereichen 920-1, 920-2 im Speicher 920 des Datenbanksystem 900 zugeordnet.
  • Computerprogrammprodukt (100/101/102) gemäß der vorliegenden Erfindung veranlasst eine Mehrheit an Prozessoren (910-912) ein Anwendungssystem-zu- Datenbanksystem-Zuordnungsschema (180-182) bereit zu stellen.
  • Ein erster Programmteil 100 veranlasst Prozessor 910 des Datenbanksystems 900, den Speicher 920 des Datenbanksystems 900 disjunkt in einen ersten Speicherbereich 920-1 und mindestens einen zweiten Speicherbereich 920-2 aufzuteilen. Der erste Programmteil 100 stellt ebenfalls ein erstes Datenbankprofil 110 und mindestens ein zweites Datenbankprofil 111 zur Verfügung, wobei jedes Profil als Datenbankbenutzer betrachtet werden kann. Das erste und das zweite Profil 110, 111werden jeweils dem ersten und zweiten Speicherbereich 920-1, 920-2 zugeordnet.
  • Ein zweiter Programmteil 101 veranlasst Prozessor 911 eines ersten Anwendungssystems 901 mindestens einen ersten Anwendungsservice für eine erste Mehrheit von Anwendungsbenutzern 801 bereit zu stellen und mindestens das erste Datenbankprofil 110 zu benutzen, um Daten vom ersten Anwendungssystem 901 zum Datenbanksystem 900 zu kommunizieren.
  • Mindestens ein dritter Programmteil 102 veranlasst Prozessor 912 eines zweiten Anwendungssystems 902 einer zweiten Mehrheit von Anwendungsbenutzern 802 mindestens einen zweiten Anwendungsservice zur Verfügung zu stellen und benutzt mindestens das zweite Datenbankprofil 111, um Daten vom zweiten Anwendungssystem 902 zum Datenbanksystem 900 zu kommunizieren.
  • Ein weiteres Computerprogrammprodukt (101/102) gemäß der vorliegenden Erfindung veranlasst einen Prozessor 911/912 in einem Computer eines Anwendungssystems 901/902 (welches mindestens einen Applikationsservice ausführt) mit Datenbankcomputer 900 zu kommunizieren. Dabei veranlasst das Computerprogrammprodukt (101/102) den Prozessor 911/912 mit dem Datenbankcomputer mittels eines einzigartigen Profils 110/111 zu kommunizieren, wobei das Profil zu dem jeweiligen Anwendungssystem 901/902 zugeordnet 180-183 ist. Der Speicher 920 des Datenbankcomputers 900 ist logisch aufgeteilt in einen ersten Speicherbereich 920-1 und mindestens einen zweiten Speicherbereicht 920-2. Die Speicherbereiche sind disjunkt, wobei der erste Speicherbereich 920-1 für Daten des Applikationssystems (z. B. 901) reserviert ist und der zweite Speicherbereich 920-2 für Daten von mindestens einem weiteren Anwendungssystem, welches auf einem weiteren Computer läuft.
  • Das Computerprogrammprodukt der vorliegenden Erfindung kann auf einem computerlesbaren Medium gespeichert werden, das eine Mehrheit an Sequenzen oder Instruktionen gespeichert hat. Wenn diese Instruktionen von einem oder mehreren Prozessoren ausgeführt werden, durchläuft der Prozessor die folgenden Schritte:
    Veranlassen einer disjunkten Aufteilung eines Speichers 920 eines Datenbanksystems 900 in einen ersten Speicherbereich 920-1 und mindestens einen zweiten Speicherbereich 920-2 durch einen Prozessor 910 des Datenbanksystems und Bereitstellen eines ersten Datenbankprofils 110 und mindestens eines zweiten Datenbankprofils 111, wobei das erste und zweite Profil 110, 111 dem ersten und zweiten Speicherbereich 920-1, 920-2 entsprechend zugeordnet sind.
  • Veranlassen des Bereitstellens von mindestens einem ersten Anwendungsservice für eine erste Mehrheit von Anwendungsnutzern 801 durch einen Prozessor 911 des ersten Applikationssystems 901 und mindestens das erste Datenbankprofil 110 zu benutzen, um Daten vom ersten Anwendungssystem 901 zum Datenbanksystem 900 zu kommunizieren.
  • Veranlassen der Bereitstellung von mindestens einem zweiten Anwendungsservice für eine zweite Mehrheit von Anwendungsbenutzern 802 durch einen Prozessor 912 eines zweiten Anwendungssystems 902 und mindestens das zweite Datenbankprofil 111 zu benutzen, um Daten vom zweiten Anwendungssystem 902 zum Datenbanksystem 900 zu kommunizieren.

Claims (18)

1. Computersystem (999), welches mindestens ein erstes Anwendungssystem (901) und ein zweites Anwendungssystem (902) und ein Datenbanksystem (900) umfasst, wobei jedes Anwendungssystem mindestens einen Anwendungsservice für mindestens einen Anwendungsbenutzer ausführt; das Computersystem (999) dadurch gekennzeichnet, dass:
das Datenbanksystem (900) einen ersten Speicherbereich (920-1) und mindestens einen zweiten Speicherbereich (920-2) hat, wobei die Speicherbereiche disjunkt sind;
das Datenbanksystem (900) mindestens eine erste Zuordnung eines ersten vorbestimmten Profils (110) zum ersten Speicherbereich (920-1) und mindestens eine zweite Zuordnung eines zweiten vorbestimmten Profils (111)zum zweiten Speicherbereich (920-1) hat, wobei das erste und zweite Profil (110, 111) einzigartig sind und sich entsprechend auf das erste und zweite Anwendungssystem (901, 902) beziehen;
das erste Anwendungssystem (901) und das zweite Anwendungssystem (902) jeweils entsprechend auf den ersten Speicherbereich (920-1) und den zweiten Speicherbereich (920-2) mittels der entsprechenden Profile (110, 111) zugreifen.
2. Das Computersystem (999) von Anspruch 1, wobei die Speicherbereiche (920-1, 920-2) Tabellen (190-193) des Datenbanksystems (900) speichern.
3. Das Computersystem (999) von Anspruch 1, wobei das Datenbanksystem (900) ein paralleles Serversystem ist.
4. Das Computersystem (999) von Anspruch 1, wobei das Datenbanksystem (900) ein relationales Datenbanksystem ist.
5. Das Computersystem (999) von Anspruch 1, wobei das Datenbanksystem (900) Shared-Memory-Prozessoren benutzt.
6. Das Computersystem (999) von Anspruch 5, wobei das Datenbanksystem (900) ein Betriebssystem benutzt, welches logische Gruppen von Prozessoren erzeugt.
7. Das Computersystem (999) von Anspruch 6, wobei jede logische Gruppe von Prozessoren einem Anwendungssystem zugeordnet ist.
8. Ein Verfahren (400) zur Kommunikation mit einem Datenbanksystem (900), wobei das Verfahren (400) die folgenden Schritte umfasst:
bereitstellen (410) von einem ersten Anwendungssystem (901) und mindestens einem zweiten Anwendungssystem (902), wobei jedes Anwendungssystem mindestens einen Anwendungsservice für eine Mehrheit von Benutzern (801, 802) des Anwendungssystems ausführt (901, 902);
verbinden (420) des Datenbanksystems (900) mit dem ersten Anwendungssystem (901) und mindestens dem zweiten Anwendungssystem (902);
einteilen (430) eines Speichers (920) des Datenbanksystems (900) in einen ersten Speicherbereich (920-1) und mindestens einen zweiten Speicherbereich (920-2), wobei die Speicherbereiche (920-1, 920-2) disjunkt sind;
zuordnen (440) des ersten und zweiten Speicherbereichs (920-1, 920-2) zu dem entsprechenden ersten und zweiten Anwendungssystem; und
zugreifen (450) des ersten und zweiten Anwendungssystems (920-1, 920-2) auf den entsprechenden ersten und zweiten Speicherbereich (920-1, 920-2).
9. Das Verfahren von Anspruch 8, wobei die Speicherbereiche (920-1, 920-2) im Einteilen Schritt (430) Tabellen (190-193) des Datenbanksystems (900) speichern.
10. Das Verfahren von Anspruch 8, wobei im Zuordnen Schritt (440) jedem Speicherbereich (920-1, 920-2) mindestens ein vorbestimmtes, einzigartiges Datenbankprofil (110, 111) zugeordnet wird.
11. Das Verfahren von Anspruch 10, wobei im Zuordnen Schritt (440) jedes vorbestimmte Datenbankprofil (110, 111) einem Anwendungssystem (901, 902) zugeordnet wird.
12. Das Verfahren von Anspruch 11, wobei im Zugreifen Schritt (450) jedes Anwendungssystem (901, 902) mittels mindestens eines vorbestimmten, ihm zugeordneten Profils auf das Datenbanksystem (900) zugreift.
13. Das Verfahren von Anspruch 8, wobei im Zugreifen Schritt (450) der Zugriff als eine der folgenden Datenbankoperationen erfolgt: lesen, schreiben, kopieren, ändern, einfügen, anhängen oder löschen.
14. Anwendungssystem-zu-Datenbanksystem-Zuordnungsschema (180-182), welches in einer Systemlandschaft (900, 901, 902, 990) benutzt wird, in der ein erstes Anwendungssystem (901) einer ersten Mehrheit von Anwendungsbenutzern (801) Anwendungsservices zur Verfügung stellt und mindestens ein zweites Anwendungssystem (902) einer zweiten Mehrheit von Anwendungsbenutzern (802) Anwendungsservices zur Verfügung stellt; das Zuordnungsschema (180-182) gekennzeichnet durch
eine erste Zuordnung (180) eines Datenbanksystems (900) zu einem ersten Profil (110) und mindestens einem zweiten Profil (111), wobei das Datenbanksystem (900) Datenbankservices für das erste und das zweite Profil (110, 111) bereitstellt;
weitere Zuordnungen (181, 182), wobei das erste Anwendungssystem (901) dem ersten Profil (110) und das zweite Anwendungssystem dem zweiten Profil (111) zugeordnet wird.
15. Das Zuordnungsschema von Anspruch 14, wobei das erste und das zweite Profil (110, 111) entsprechenden disjunkten Speicherbereichen (920-1, 920-2) eines Speichers (920) des Datenbanksystems (900) zugeordnet sind.
16. Ein Computerprogrammprodukt (100/101/102), das eine Mehrheit von Prozessoren (910, 911, 912) dazu veranlasst, ein Anwendungssystem-zu-Datenbanksystem- Zuordnungsschema (180-182) bereitzustellen, wobei das Computerprogrammprodukt (100/101/102) gekennzeichnet ist durch
einen ersten Programmteil (100), der einen Prozessor (910) eines Datenbanksystems (900) dazu veranlasst, dass ein Speicher (920) des Datenbanksystems (900) disjunkt in einen ersten Speicherbereich (920-1) und mindestens einen zweiten Speicherbereich (920-2) unterteilt wird und ein erstes Datenbankprofil (110) und mindestens ein zweites Datenbankprofil (111) bereitgestellt werden, wobei das erste und das zweite Datenbankprofil (110, 111) entsprechend dem ersten und zweiten Speicherbereich (920-1, 920-2) zugeordnet sind;
einen zweiten Programmteil (101), der einen Prozessor (911) eines ersten Anwendungssystems (901) dazu veranlasst, mindestens einen ersten Anwendungsservice für eine erste Mehrheit (801) von Anwendungsbenutzern bereitzustellen und mindestens das erste Dantebankprofil (110) zu benutzen, um Daten vom ersten Anwendungssystem (901) zum Datenbanksystem (900) zu kommunizieren; und
mindestens einen dritten Programmteil (102), der einen Prozessor (912) eines zweiten Anwendungssystems (902) dazu veranlasst, mindestens einen zweiten Anwendungsservice für eine zweite Mehrheit (802) von Anwendungsbenutzern bereitzustellen und mindestens das zweite Dantebankprofil (111) zu benutzen, um Daten vom zweiten Anwendungssystem (902) zum Datenbanksystem (900) zu kommunizieren.
17. Computerprogrammprodukt (101/102), das einen Prozessor (911/912) in einem Computer eines Anwendungssystems (901/902), welches mindestens einen Anwendungsservice ausführt, dazu veranlasst, mit einem Datenbankcomputer (900) zu kommunizieren, wobei das Computerprogrammprodukt (101/102) dadurch gekennzeichnet ist, dass es den Prozessor (911/912) veranlasst, mit dem Datenbankcomputer mittels eines einzigartigen, dem Anwendungssystem zugeordneten (180-183) Profils (110/111) zu kommunizieren, wobei der Datenbankcomputer (900) einen Speicher (920) hat, der logisch in einen ersten Speicherbereich (920-1) und mindestens einen zweiten, disjunkten Speicherbereich (920-2) unterteilt ist, so dass der erste Speicherbereich (920-1) für Daten eines Anwendungssystems (901) reserviert ist und der zweite Speicherbereich (920-2) für Daten eines weiteren Anwendungssystems (902).
18. Ein computerlesbares Medium (970), welches eine Mehrzahl an Befehlssequenzen gespeichert hat, die, wenn von einem oder mehreren Prozessoren verarbeitet, die folgenden Schritte ausführen:
veranlassen, dass ein Prozessor (910) eines Datenbanksystems (900) einen Speicher (920) des Datenbanksystems (900) in einen ersten Speicherbereich (920-1) und mindestens einen zweiten, disjunkten Speicherbereich (920-2) teilt und ein erstes und mindestens ein zweites Datenbankprofil (110, 111) bereitstellt, wobei das jeweils erste und zweite Datenbankprofil (110, 111) entsprechend dem ersten und zweiten Speicherbereich (920-1, 920-2) zugeordnet sind;
veranlassen, dass ein Prozessor (911) eines ersten Anwendungssystems (901) einer ersten Mehrheit von Anwendungsbenutzern mindestens einen ersten Anwendungsservice zur Verfügung stellt und mindestens das erste Datenbankprofil (110) benutzt, um Daten vom ersten Anwendungssystem (901) zum Datenbanksystem (900) zu kommunizieren; und
veranlassen, dass ein Prozessor (912) eines zweiten Anwendungssystems (902) einer zweiten Mehrheit von Anwendungsbenutzern mindestens einen zweiten Anwendungsservice zur Verfügung stellt und mindestens das zweite Datenbankprofil (111) benutzt, um Daten vom zweiten Anwendungssystem (902) zum Datenbanksystem (900) zu kommunizieren.
DE10113577A 2001-03-20 2001-03-20 Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems Ceased DE10113577A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE10113577A DE10113577A1 (de) 2001-03-20 2001-03-20 Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems
EP01126777A EP1244028B1 (de) 2001-03-20 2001-11-09 Verfahren, Rechnerprogrammprodukt und Rechnersystem, um einem einzigen Datenbanksystem zu ermöglichen, mehrere Anwendungssysteme zu unterstützen
CA2363359A CA2363359C (en) 2001-03-20 2001-11-20 Method, computer program product and computer system for a single database system to support multiple application systems
US09/989,070 US7392236B2 (en) 2001-03-20 2001-11-21 Method, computer program product and computer system for a single database system to support multiple application systems
AU10028/02A AU765236B2 (en) 2001-03-20 2002-01-03 Method, computer program product and computer system for a single database system to support multiple application systems
JP2002078017A JP3999542B2 (ja) 2001-03-20 2002-03-20 複数のアプリケーションシステムをサポートするための単一データベースシステム向けの方法、コンピュータプログラムプロダクト及びコンピュータシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10113577A DE10113577A1 (de) 2001-03-20 2001-03-20 Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems

Publications (1)

Publication Number Publication Date
DE10113577A1 true DE10113577A1 (de) 2003-01-09

Family

ID=7678266

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10113577A Ceased DE10113577A1 (de) 2001-03-20 2001-03-20 Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems

Country Status (6)

Country Link
US (1) US7392236B2 (de)
EP (1) EP1244028B1 (de)
JP (1) JP3999542B2 (de)
AU (1) AU765236B2 (de)
CA (1) CA2363359C (de)
DE (1) DE10113577A1 (de)

Families Citing this family (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1244008A1 (de) * 2001-03-20 2002-09-25 Sap Ag Verfahren, Rechnerprogramm und Rechner zum automatischen Auswählen von Anwendungsdiensten um Daten vom Server zum Client zu übertragen abhängig von der Client-Einrichtung
US7921023B2 (en) * 2001-12-28 2011-04-05 Sap Aktiengesellschaft Portal for implementation of multiple software components
US20030126159A1 (en) * 2001-12-28 2003-07-03 Nwafor John I. Method and system for rollback of software system upgrade
US20040167871A1 (en) * 2003-02-20 2004-08-26 Bea Systems, Inc. Content mining for virtual content repositories
US7293286B2 (en) 2003-02-20 2007-11-06 Bea Systems, Inc. Federated management of content repositories
US7840614B2 (en) 2003-02-20 2010-11-23 Bea Systems, Inc. Virtual content repository application program interface
US20050182796A1 (en) * 2004-02-12 2005-08-18 International Business Machines Corporation Method and system for protecting data associated with a replaced image file during a re-provisioning event
US20060041558A1 (en) * 2004-04-13 2006-02-23 Mccauley Rodney System and method for content versioning
US20050251503A1 (en) * 2004-04-13 2005-11-10 Bea Systems, Inc. System and method for content and schema versioning
EP1632872A1 (de) * 2004-08-31 2006-03-08 2012244 Ontario Inc. System und Verfahren zur Verwaltung von Datenbanken in einem tragbaren Gerät
US7600217B2 (en) 2004-12-14 2009-10-06 Sap Ag Socket-like communication API for Java
US7593930B2 (en) * 2004-12-14 2009-09-22 Sap Ag Fast channel architecture
US7580915B2 (en) 2004-12-14 2009-08-25 Sap Ag Socket-like communication API for C
US7672949B2 (en) 2004-12-28 2010-03-02 Sap Ag Connection manager having a common dispatcher for heterogeneous software suites
US8204931B2 (en) 2004-12-28 2012-06-19 Sap Ag Session management within a multi-tiered enterprise network
US7523196B2 (en) * 2004-12-28 2009-04-21 Sap Ag Session monitoring using shared memory
US7552153B2 (en) * 2004-12-28 2009-06-23 Sap Ag Virtual machine monitoring using shared memory
US8370448B2 (en) * 2004-12-28 2013-02-05 Sap Ag API for worker node retrieval of session request
US20060143256A1 (en) 2004-12-28 2006-06-29 Galin Galchev Cache region concept
US7539821B2 (en) 2004-12-28 2009-05-26 Sap Ag First in first out eviction implementation
US7694065B2 (en) 2004-12-28 2010-04-06 Sap Ag Distributed cache architecture
US7971001B2 (en) 2004-12-28 2011-06-28 Sap Ag Least recently used eviction implementation
US7500133B2 (en) * 2004-12-28 2009-03-03 Sap Ag Connection manager for handling message oriented protocol-based requests
US7591006B2 (en) * 2004-12-29 2009-09-15 Sap Ag Security for external system management
US7890507B2 (en) * 2005-02-25 2011-02-15 International Business Machines Corporation System and method of joining data obtained from horizontally and vertically partitioned heterogeneous data stores using string-based location transparent search expressions
US20060195427A1 (en) * 2005-02-25 2006-08-31 International Business Machines Corporation System and method for improving query response time in a relational database (RDB) system by managing the number of unique table aliases defined within an RDB-specific search expression
US7505985B2 (en) * 2005-02-25 2009-03-17 International Business Machines Corporation System and method of generating string-based search expressions using templates
US8589562B2 (en) 2005-04-29 2013-11-19 Sap Ag Flexible failover configuration
US10467593B2 (en) * 2005-04-29 2019-11-05 Oracle America, Inc. Providing contextual collaboration within enterprise applications
US7689660B2 (en) * 2005-06-09 2010-03-30 Sap Ag Application server architecture
US7966412B2 (en) 2005-07-19 2011-06-21 Sap Ag System and method for a pluggable protocol handler
US7945677B2 (en) 2005-09-06 2011-05-17 Sap Ag Connection manager capable of supporting both distributed computing sessions and non distributed computing sessions
US20070094306A1 (en) * 2005-10-26 2007-04-26 Kyriazakos Nikolaos G Method and model for enterprise system development and execution
US8707323B2 (en) 2005-12-30 2014-04-22 Sap Ag Load balancing algorithm for servicing client requests
US20070156907A1 (en) 2005-12-30 2007-07-05 Galin Galchev Session handling based on shared session information
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US8028090B2 (en) 2008-11-17 2011-09-27 Amazon Technologies, Inc. Request routing utilizing client location information
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US8321568B2 (en) 2008-03-31 2012-11-27 Amazon Technologies, Inc. Content management
US8447831B1 (en) 2008-03-31 2013-05-21 Amazon Technologies, Inc. Incentive driven content delivery
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
US8601090B1 (en) 2008-03-31 2013-12-03 Amazon Technologies, Inc. Network resource identification
US8156243B2 (en) 2008-03-31 2012-04-10 Amazon Technologies, Inc. Request routing
US8533293B1 (en) 2008-03-31 2013-09-10 Amazon Technologies, Inc. Client side cache management
US9407681B1 (en) 2010-09-28 2016-08-02 Amazon Technologies, Inc. Latency measurement in resource requests
US7925782B2 (en) 2008-06-30 2011-04-12 Amazon Technologies, Inc. Request routing using network computing components
US9912740B2 (en) 2008-06-30 2018-03-06 Amazon Technologies, Inc. Latency measurement in resource requests
JP5401903B2 (ja) * 2008-10-03 2014-01-29 富士通株式会社 故障情報監視装置及び故障情報監視方法
US8732309B1 (en) 2008-11-17 2014-05-20 Amazon Technologies, Inc. Request routing utilizing cost information
US8122098B1 (en) 2008-11-17 2012-02-21 Amazon Technologies, Inc. Managing content delivery network service providers by a content broker
US8065417B1 (en) 2008-11-17 2011-11-22 Amazon Technologies, Inc. Service provider registration by a content broker
US8060616B1 (en) 2008-11-17 2011-11-15 Amazon Technologies, Inc. Managing CDN registration by a storage provider
US8073940B1 (en) 2008-11-17 2011-12-06 Amazon Technologies, Inc. Managing content delivery network service providers
US8521880B1 (en) 2008-11-17 2013-08-27 Amazon Technologies, Inc. Managing content delivery network service providers
US8688837B1 (en) 2009-03-27 2014-04-01 Amazon Technologies, Inc. Dynamically translating resource identifiers for request routing using popularity information
US8756341B1 (en) 2009-03-27 2014-06-17 Amazon Technologies, Inc. Request routing utilizing popularity information
US8412823B1 (en) 2009-03-27 2013-04-02 Amazon Technologies, Inc. Managing tracking information entries in resource cache components
US8521851B1 (en) 2009-03-27 2013-08-27 Amazon Technologies, Inc. DNS query processing using resource identifiers specifying an application broker
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
US8397073B1 (en) 2009-09-04 2013-03-12 Amazon Technologies, Inc. Managing secure content in a content delivery network
US8433771B1 (en) 2009-10-02 2013-04-30 Amazon Technologies, Inc. Distribution network with forward resource propagation
US9495338B1 (en) 2010-01-28 2016-11-15 Amazon Technologies, Inc. Content distribution network
US8819283B2 (en) 2010-09-28 2014-08-26 Amazon Technologies, Inc. Request routing in a networked environment
US10097398B1 (en) 2010-09-28 2018-10-09 Amazon Technologies, Inc. Point of presence management in request routing
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US8577992B1 (en) 2010-09-28 2013-11-05 Amazon Technologies, Inc. Request routing management based on network components
US8924528B1 (en) 2010-09-28 2014-12-30 Amazon Technologies, Inc. Latency measurement in resource requests
US8938526B1 (en) 2010-09-28 2015-01-20 Amazon Technologies, Inc. Request routing management based on network components
US8468247B1 (en) 2010-09-28 2013-06-18 Amazon Technologies, Inc. Point of presence management in request routing
US8930513B1 (en) 2010-09-28 2015-01-06 Amazon Technologies, Inc. Latency measurement in resource requests
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US8452874B2 (en) 2010-11-22 2013-05-28 Amazon Technologies, Inc. Request routing processing
US9391949B1 (en) 2010-12-03 2016-07-12 Amazon Technologies, Inc. Request routing processing
US10467042B1 (en) 2011-04-27 2019-11-05 Amazon Technologies, Inc. Optimized deployment based upon customer locality
CN102521209B (zh) * 2011-12-12 2015-03-11 浪潮电子信息产业股份有限公司 一种并行多处理器计算机的设计方法
US8904009B1 (en) 2012-02-10 2014-12-02 Amazon Technologies, Inc. Dynamic content delivery
US10021179B1 (en) 2012-02-21 2018-07-10 Amazon Technologies, Inc. Local resource delivery network
US8762408B2 (en) 2012-03-07 2014-06-24 Sap Ag Optimizing software applications
US10623408B1 (en) 2012-04-02 2020-04-14 Amazon Technologies, Inc. Context sensitive object management
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US9525659B1 (en) 2012-09-04 2016-12-20 Amazon Technologies, Inc. Request routing utilizing point of presence load information
US9323577B2 (en) 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
US10205698B1 (en) 2012-12-19 2019-02-12 Amazon Technologies, Inc. Source-dependent address resolution
US9092292B2 (en) 2013-05-16 2015-07-28 Sap Se Shared application binary storage
US9294391B1 (en) 2013-06-04 2016-03-22 Amazon Technologies, Inc. Managing network computing components utilizing request routing
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10033627B1 (en) 2014-12-18 2018-07-24 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10091096B1 (en) 2014-12-18 2018-10-02 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
US9887931B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9887932B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9819567B1 (en) 2015-03-30 2017-11-14 Amazon Technologies, Inc. Traffic surge management for points of presence
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
US10616179B1 (en) 2015-06-25 2020-04-07 Amazon Technologies, Inc. Selective routing of domain name system (DNS) requests
US10097566B1 (en) 2015-07-31 2018-10-09 Amazon Technologies, Inc. Identifying targets of network attacks
US9774619B1 (en) 2015-09-24 2017-09-26 Amazon Technologies, Inc. Mitigating network attacks
US9742795B1 (en) 2015-09-24 2017-08-22 Amazon Technologies, Inc. Mitigating network attacks
US9794281B1 (en) 2015-09-24 2017-10-17 Amazon Technologies, Inc. Identifying sources of network attacks
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10049051B1 (en) 2015-12-11 2018-08-14 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10257307B1 (en) 2015-12-11 2019-04-09 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10348639B2 (en) 2015-12-18 2019-07-09 Amazon Technologies, Inc. Use of virtual endpoints to improve data transmission rates
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US9992086B1 (en) 2016-08-23 2018-06-05 Amazon Technologies, Inc. External health checking of virtual private cloud network environments
US10033691B1 (en) 2016-08-24 2018-07-24 Amazon Technologies, Inc. Adaptive resolution of domain name requests in virtual private cloud network environments
US10505961B2 (en) 2016-10-05 2019-12-10 Amazon Technologies, Inc. Digitally signed network address
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10372499B1 (en) 2016-12-27 2019-08-06 Amazon Technologies, Inc. Efficient region selection system for executing request-driven code
US10938884B1 (en) 2017-01-30 2021-03-02 Amazon Technologies, Inc. Origin server cloaking using virtual private cloud network environments
US10592509B2 (en) 2017-03-01 2020-03-17 Sap Se Declarative rules for optimized access to data
US10503613B1 (en) 2017-04-21 2019-12-10 Amazon Technologies, Inc. Efficient serving of resources during server unavailability
IT201700057287A1 (it) * 2017-05-26 2018-11-26 St Microelectronics Srl Procedimento per gestire schede a circuito integrato, scheda ed apparecchiatura corrispondenti
US11075987B1 (en) 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US10447648B2 (en) 2017-06-19 2019-10-15 Amazon Technologies, Inc. Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP
US10742593B1 (en) 2017-09-25 2020-08-11 Amazon Technologies, Inc. Hybrid content request routing system
US10482080B2 (en) 2017-10-26 2019-11-19 Sap Se Exchanging shared containers and adapting tenants in multi-tenancy database systems
US10733168B2 (en) 2017-10-26 2020-08-04 Sap Se Deploying changes to key patterns in multi-tenancy database systems
US10657276B2 (en) 2017-10-26 2020-05-19 Sap Se System sharing types in multi-tenancy database systems
US10713277B2 (en) 2017-10-26 2020-07-14 Sap Se Patching content across shared and tenant containers in multi-tenancy database systems
US10452646B2 (en) 2017-10-26 2019-10-22 Sap Se Deploying changes in a multi-tenancy database system
US10740315B2 (en) 2017-10-26 2020-08-11 Sap Se Transitioning between system sharing types in multi-tenancy database systems
US10740318B2 (en) 2017-10-26 2020-08-11 Sap Se Key pattern management in multi-tenancy database systems
US10621167B2 (en) 2017-10-26 2020-04-14 Sap Se Data separation and write redirection in multi-tenancy database systems
US10592578B1 (en) 2018-03-07 2020-03-17 Amazon Technologies, Inc. Predictive content push-enabled content delivery network
US10942892B2 (en) 2018-05-18 2021-03-09 Sap Se Transport handling of foreign key checks
US10915551B2 (en) 2018-06-04 2021-02-09 Sap Se Change management for shared objects in multi-tenancy systems
US10936624B2 (en) 2018-06-12 2021-03-02 Sap Se Development and productive use of system with parallel use of production data and zero downtime of software changes
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US11025747B1 (en) 2018-12-12 2021-06-01 Amazon Technologies, Inc. Content request pattern-based routing system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638527A (en) * 1993-07-19 1997-06-10 Dell Usa, L.P. System and method for memory mapping
JP3687990B2 (ja) 1994-01-25 2005-08-24 株式会社日立製作所 メモリアクセス機構
US5596745A (en) * 1994-05-16 1997-01-21 International Business Machines Corporation System and procedure for concurrent database access by multiple user applications through shared connection processes
US5897635A (en) * 1995-06-07 1999-04-27 International Business Machines Corp. Single access to common user/application information
US5857208A (en) * 1996-05-31 1999-01-05 Emc Corporation Method and apparatus for performing point in time backup operation in a computer system
US6061793A (en) * 1996-08-30 2000-05-09 Regents Of The University Of Minnesota Method and apparatus for embedding data, including watermarks, in human perceptible sounds
FR2767939B1 (fr) 1997-09-04 2001-11-02 Bull Sa Procede d'allocation de memoire dans un systeme de traitement de l'information multiprocesseur
US6477591B1 (en) * 1998-03-03 2002-11-05 Highground Systems, Inc. Method and apparatus for storing and copying data via a first path and a second path wherein second path bypasses mirror driver
US6502108B1 (en) * 1999-10-25 2002-12-31 International Business Machines Corporation Cache-failure-tolerant data storage system storing data objects with version code equipped metadata tokens
US6598174B1 (en) * 2000-04-26 2003-07-22 Dell Products L.P. Method and apparatus for storage unit replacement in non-redundant array

Also Published As

Publication number Publication date
CA2363359A1 (en) 2002-09-20
AU1002802A (en) 2002-09-26
JP2002373092A (ja) 2002-12-26
AU765236B2 (en) 2003-09-11
EP1244028A3 (de) 2006-07-05
EP1244028B1 (de) 2012-06-13
CA2363359C (en) 2011-05-03
JP3999542B2 (ja) 2007-10-31
EP1244028A2 (de) 2002-09-25
US20020174097A1 (en) 2002-11-21
US7392236B2 (en) 2008-06-24

Similar Documents

Publication Publication Date Title
DE10113577A1 (de) Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems
DE60019839T2 (de) Verfahren zum Austauch von Daten zwischen einer Javasystemdatenbank und einem LDAP Verzeichnis
DE60117150T2 (de) Verfahren und computerprogramm zum übertragen von inhalt aus einer quellendatenbank zu einer zieldatenbank
DE69831777T2 (de) Framework zur finanziellen Integration von Geschäftsapplikationen
DE69936818T2 (de) Protokoll zum Austausch von Konfigurationsdaten in einem Computernetzwerk
DE102013222384B4 (de) Sicherheits-Screening auf Kontextgrundlage für Zugriff auf Daten
DE112013001308T5 (de) Verwalten von mandantenspezifischen Datensätzen in einer mandantenfähigen Umgebung
WO2002101582A1 (de) Ändern der datenstruktur mit der in einem computersystem ein anwendungsprogramm auf datenbanksysteme zugreift
DE112014001361T5 (de) Verfahren, Vorrichtung und computerlesbares Medium für effiziente Ausführung von Operationen an individuellen Datenwerten
DE202012013427U1 (de) Verknüpfung von Tabellen in einem MapReduce-Verfahren
DE112011101508T5 (de) Zentrale Steuerung von Datenbankanwendungen
WO1999067725A1 (de) Verfahren und system zur schnellen speicherresidenten verarbeitung von transaktionsdaten
DE102013215009A1 (de) Verfahren und System zur Optimierung der Datenübertragung
DE102005049055A1 (de) Verfahren, um Ereignisse in einem Systemereignisprotokoll in eine Reihenfolge zu bringen
DE602004007925T2 (de) Verwalten einer beziehung zwischen einem zielvolumen und einem quellenvolumen
EP1637955A1 (de) Erzeugung aktualisierbarer anonymisierter Datensätze für Test- und Entwicklungszwecke
DE112011103428T5 (de) Automatisierte Analyse zusammengesetzter Anwendungen
DE602004008742T2 (de) Methode und system zum abbilden von xml auf eine n-dimensionale datenstruktur
WO2002021327A2 (de) Verfahren und computerprogramm zur erzeugung von dateien für ein datenbanksystem für ein betriebswirtschaftliches anwendungsprogramm
DE112021000338T5 (de) Auslagern der statistikerfassung
DE19534819A1 (de) Verfahren und Vorrichtung zum Konfigurieren einer Datenbank
EP1637954A1 (de) Erzeugung anonymisierter Datensätze aus produktiven Anwendungen
EP1637956A1 (de) Erzeugung anonymisierter Datensätze zum Testen und Entwickeln von Anwendungen
DE112021003031T5 (de) Archivieren von nur-beschleuniger-datenbanktabellen
DE112007002327T5 (de) Persistente Sperren auf Ressourcen zur Steuerung der Nebenläufigkeit

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final

Effective date: 20130820