DE69029210T2 - Verwaltungsverfahren und Vorrichtung zur Datenspeicherung - Google Patents
Verwaltungsverfahren und Vorrichtung zur DatenspeicherungInfo
- Publication number
- DE69029210T2 DE69029210T2 DE69029210T DE69029210T DE69029210T2 DE 69029210 T2 DE69029210 T2 DE 69029210T2 DE 69029210 T DE69029210 T DE 69029210T DE 69029210 T DE69029210 T DE 69029210T DE 69029210 T2 DE69029210 T2 DE 69029210T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- storage
- class
- management
- data storage
- 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.)
- Expired - Lifetime
Links
- 238000013500 data storage Methods 0.000 title claims description 125
- 238000000034 method Methods 0.000 title claims description 20
- 238000007726 management method Methods 0.000 claims description 84
- 238000012545 processing Methods 0.000 claims description 26
- 230000002093 peripheral effect Effects 0.000 description 58
- 230000003993 interaction Effects 0.000 description 11
- 230000014759 maintenance of location Effects 0.000 description 11
- 230000002452 interceptive effect Effects 0.000 description 10
- 230000004044 response Effects 0.000 description 10
- 230000036961 partial effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 239000000969 carrier Substances 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 102100025825 Methylated-DNA-protein-cysteine methyltransferase Human genes 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 108040008770 methylated-DNA-[protein]-cysteine S-methyltransferase activity proteins Proteins 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
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/22—Indexing; Data structures therefor; Storage structures
- G06F16/221—Column-oriented storage; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F2003/0697—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
-
- 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/99951—File or database maintenance
- Y10S707/99956—File allocation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
- Diese Erfindung bezieht sich auf einen computergesteuerten, peripheren Datenspeicher und insbesondere auf die globale Verwaltung des Datenspeichers für die bereitgestellte transparente Abgrenzung des peripheren Datenspeichers von Anwendungsprogrammen, die den peripheren Datenspeicher nutzen.
- Die Speicherung von computerverarbeiteten Daten (codiert oder uncodiert, wobei uncodierte Daten auch als Bild-, Grafik- oder Rasterdaten bezeichnet werden) in peripheren Geräten und Teilsystemen stellt in modernen Informationsverarbeitungssystemen einen wichtigen Kostenfaktor dar. Außerdem hat die verfügbare Speicherkapazität von Informationsverarbeitungssystemen ungeheuer zugenommen. Die aktuelle Art und Weise der peripheren Datenspeicherverwaltung ist aufgrund der hohen Kosten und der Schwierigkeiten bei der Verwaltung des Datenspeicherplatzes, der Bereitstellungsleistung (d. h. schneller Zugriff auf Datenspeicherplatz oder -bereich) und der Schwierigkeiten für Softwareprogrammierer, diese riesige periphere Datenspeicherkapazität so günstig wie möglich zu nutzen, immer weniger zufriedenstellend. Es ist daher wünschenswert, die Softwareprogrammierer von der gegenwärtigen Anforderung zu entbinden, nach der die von ihnen entwickelten Programme Informationen über die physischen Parameter des peripheren Datenspeichers enthalten müssen. Wünschenswert ist dagegen die Bereitstellung einer rein logischen Steuerung, bei der sich die Softwareprogrammierer bei der Programmierung je nach den Erfordernissen des Anwendungsprogramms auf Datensätze, Datenbanken usw. konzentrieren können. Solche Überlegungen zu Datensätzen können allgemein die gewünschte Leistung, die Größe, die erforderliche Verfügbarkeit und Zuverlässigkeit usw. betreffen. Alle Faktoren hinsichtlich der Verwaltung des Speicherplatzes, der Leistung, der Verfügbarkeit und der Installierung von peripheren Teilsystemen sollten für den Softwareprogrammierer, der sich mit Anwendungsprogrammen befaßt, nicht von Belang sein. Dies ist bisher jedoch nicht der Fall.
- Anfänglich mußte der Computerbenutzer für die Jobsteuerungssprache (JCL) eine Vielzahl von Parametern für die Programmausführung spezifizieren, darunter auch Angaben zum peripheren Datenspeicher. Bei jeder Modifizierung des peripheren Datenspeichers war eine entsprechende Änderung der JCL-Anweisungen für das auszuführende Programm erforderlich. Ein Beispiel für die JCL- Steuerung eines Prozessors geben Poublan et. al. in der US-Patentschrift 4 104 718. Diese Interaktion zwischen den Operationen eines peripheren Datenspeichers und denjenigen von Benutzeranwendungsprogrammen soll minimiert und möglichst ganz ausgeschaltet werden.
- Der Benutzer oder Softwareprogrammierer sollte möglichst implizit Spezifizierungen für die Anforderungen an Programmausführung und Datenspeicherung angeben können, die sich auf einer relativ hohen oder logischen Ebene befinden. Der Begriff "logisch" bezieht sich dabei auf Spezifizierungen für die gewünschte Programmausführung und insbesondere für den peripheren Datenspeicher. Dabei sollten alle Zuweisungen und Steuerungen des peripheren Datenspeichers dem direkten Zugriff durch den Softwareprogrammierer entzogen werden.
- Der Begriff "logisch" wird seit langem für die Beschreibung von programmbezeichneten Geräten wie "logischen Geräten" verwendet. Solche logischen Beschreibungen beseitigen nicht die Interaktion zwischen dem Softwareprogrammierer und dem peripheren Datenspeicher. Ein Beispiel für solche Spezifizierungen für logische Geräte enthält die US-Patentschrift 4 403 288 von Christian et. al., bei der ein physisches Gerät (DASD - Direktzugriffsspeicher) als vier logische Geräte adressierbar ist.
- Die Verbreitung von DASD in peripheren Datenspeicher-Teilsystemen führte zu einem Programm für die zentrale DASD-Speicherplatzzuweisung mit der Bezeichnung DADSM (Platzverwaltung für Direktzugriffsspeicher). Der Softwareprogrammierer mußte jedoch weiterhin Speicherplatz in Form von Geräteparametern und -typen anfordern; siehe Artikel von Duvall et. al., "Asynchronous Allocation Requests", IBM TECHNICAL DISCLOSURE BULLETIN, Bd. 25, Nr. 8, Januar 1983, S. 4148 - 4150. Es ist wünschenswert, den Softwareprogrammierer nicht mit Parameterspezifizierungen für ferne Geräte zu belasten; er solltte sich, unabhängig von den Parametern für das Gerät, ausschließlich mit hohen oder logischen Spezifizierungsebenen befassen müssen. Dies macht die implizite Übersetzung der logischen Parameterspezifizierung in die Auswahl von Datenspeichergeräten und die Speicherplatzzuweisung für ausgewählte Geräte erforderlich.
- In seinem Artikel "Data Base Control and Processing System", IBM TECHNICAL DISCLOSURE BULLETIN, Bd. 25, Nr. 7A, Dezember 1982, S. 3578 - 3582 beschreibt March einige der komplexen Aspekte, die bei der Datenbankverwaltung zum Tragen kommen. Diese Komplexität sollte die Arbeit des Softwareprogrammierers nicht nachteilig beeinflussen.
- In der US-Patentschrift 4 467 421 beschreibt White ein virtuelles Datenspeichersystem mit einem außerhalb des Host befindlichen Speichersteuerungsprozessor, der benutzerdefinierte Datensätze in Blöcke einer Größe aufteilt, die in peripheren Datenspeichergeräten problemlos gespeichert werden können. Der Speicherprozessor weist diese Blöcke den Speicherplätzen in peripheren Datenspeichergeräten zu. Er fängt die geräteorientierten Ein-/Ausgabe-Befehle vom Host ab und paßt die Operationen des peripheren Datenspeicher-Teilsystems an, um einen leistungsfähigeren Betrieb zu erzielen. Aus dieser kurzen Beschreibung wird deutlich, daß auch hier der Softwareprogrammierer noch geräteabhängige JCL-Anweisungen benötigt, obwohl ein externer Speicherprozessor die geräteabhängigen Funktionen anders interpretiert, als dies von der Anwendungsprogrammierung her vorgesehen war. Diese Anordnung kann zwar die Auswirkungen einer Änderung der Gerätetypen usw. mildern, der Softwareprogrammierer wird jedoch nach wie vor mit Überlegungen zu den Geräteparametern belastet. Diese Notwendigkeit sollte möglichst vermieden werden.
- In der US-Patentschrift 4 638 425 beschreibt Hartung ein Datenspeicherteilsystem mit Cache-DASD, in dem ein Softwareprogrammierer eine Speicherparameteranzeige einfügen kann, die angibt, ob bestimmte Datensätze in peripheren Teilsystem primär im flüchtigen (Cache-) peripheren Speicher oder primär im (DASD-) Sicherungsspeicher gespeichert werden sollen. Werden sie primär im Cache gespeichert, wird zwar die Leistung erhöht, aber bei Stromausfall oder defekten Geräten kommt es zu Datenverlust im Anwendungsprogramm. Die Auswahl erfolgt ausgehend vom "Nutzungs"-Status, d. h. abhängig davon, ob die Nutzung interaktiv mit Datenstationen (mit Cache-Speicherung zur Erhöhung der Leistung) erfolgt, oder ob es sich um eine Aktivität handelt, die den Datenstationen nachgeordnet ist (und primär für einen bestimmten Zeitraum gesichert werden soll). Obwohl die Nutzungsanzeige logisch erscheint, müssen dem Softwareprogrammierer grundlegende Operationsmerkmale des peripheren Datenspeicher- Teilsystems bekannt sein. Diese Angaben sollten eher implizit als explizit ein.
- In der US-Patentschrift 4 607 346 beschreibt Hill eine implizite Steuerung eines DASD, die auf der "Zugriffshäufigkeit" für ein bestimmtes Programm basiert, die der Benutzer oder Softwareprogrammierer vorgibt. Ausgehend von dieser Zugriffshäufigkeit werden die zu speichernden Daten den verschiedenen Bereichen eines DASD zugewiesen. Aus dieser Beschreibung wird deutlich, daß sich der Softwareprogrammierer auch hier noch mit Geräteparametern befassen muß, daß die Festlegung der Geräteparameter jedoch noch durch die gewünschten Zugriffsparameter für das Anwendungsprogramm kompliziert werden. Diese zusätzlichen Schwierigkeiten sollten möglichst vermieden werden.
- In der US-Patentschrift 4 638 424 beschreiben Beglin et. al. eine maschinenimplementierte Verwaltung eines peripheren Datenspeichers. Die Patentschrift bezieht sich auf das IBM Produkt Hierarchical Storage Manager, das mittlerweile als Data Facility Hierarchical Storage Manager bezeichnet wird. Sie beschreibt die maschinenverwaltete Zugriffs- und Zuweisungspriorität für eine große Vielzahl an peripheren Datenspeichergeräten für Verschiebung, Aufruf, Sicherung, Wiederherstellung und Defragmentierung von Datensätzen, die im peripheren Datenspeicher gespeichert sind. Die Patentschrift befaßt sich mit der Lösung der Verfügbarkeitsproblematik für Geräte durch mit ihnen verbundene Hosts. Die in dieser Patentschrift beschriebenen maschinengestützten Aktivitäten werden durchgeführt, nachdem ermittelt wurde, ob Betriebsdatensätze, die bereits in peripheren Datenspeichergeräte (z.B. DASD) gespeichert waren, verschoben oder gesichert werden sollen. Diese Patentschrift behandelt also nicht die Probleme, die entstehen, wenn der Softwareprogrammierer nicht mit den Komplexitäten des peripheren Datenspeichers in Berührung kommen soll.
- In der US-Patentschrift 4 542 458 beschreiben Kitajima et. al. die Zuweisung von Daten zu Geräten auf der Basis der Gerätefehlerraten. Eine solche Interaktion macht die Interaktion zwischen Softwareprogrammierer und Geräteparameter auf jeden Fall weiterhin erforderlich.
- In der US-Patentschrift 4 528 624 beschreiben Kamionka et. al. die Auswahl von peripheren Geräten für Zuweisungen vor dem peripheren Datenspeicher und gehen dabei vom maximalen freien Speicherplatz der Geräte aus. Diese Auswahl ist unabhängig von der tatsächlichen Speicherkapazität der verschiedenen Geräte. Dieser einfache, aber wirksame Auswahlprozeß wird maschinell ausgeführt, nachdem der Softwareprogrammierer die geräteabhängigen JCD-Anweisungen abgeschlossen hat; d. h. die maschinellen Operationen für die Speicherplatzzuweisung ersetzen nicht alle Interaktionen zwischen dem Softwareprogrammierer und den Gerätemerkmalen.
- In der US-Patentschrift 4 604 690 beschreiben Crabtree et. al. ein Online-Verfahren für die Rekonfiguration eines Datenverarbeitungssystems mit hinzugefügten E/A- oder peripheren Geräten. Diese Patentschrift beschreibt einen Steuerblock, der ein neu hinzugefügtes peripheres Gerät definiert und dem Hauptspeicher eines Hosts hinzugefügt und darin gespeichert werden kann, so daß seine Nutzung während des Hostbetriebs beginnen kann (d. h. es ist keine Systemgenerierung erforderlich). Das Einrichten und Hinzufügen von Geräten in Echtzeit stellt jedoch keine Lösung für die oben beschriebenen Interaktionsprobleme in herkömmlichen Datenverarbeitungssystemen dar.
- In der US-Patentschrift 4 704 695 beschreiben Kimura et. al. ein Ableitungssystem, bei dem Attributinformationen einer Informationseinheit bereitgestellt werden, um eine problemlose Ausführung der Ableitung zu ermöglichen. Diese Patentschrift behandelt zwar Modifizierungsoperationen auf der Basis späterer Eingaben (lernende Maschine), sie enthält jedoch keinen Lösungsvorschlag für die oben beschriebenen Probleme.
- In der US-Patentschrift 4 310 883 beschreiben Clifton et. al. ein Zuweisungsschema für ein Magnetband-Bibliothekssystem, z. B. das IBM 3850 Mass Storage System. Bei diesem Zuweisungsprozeß muß der Softwareprogrammierer mit dem Magnetband-Bibliothekssystem vertraut sein, daher stellt es keine Lösung für die oben beschriebene Interaktion dar, die beseitigt werden soll. Die Patentschrift beschreibt das Konzept einer Gruppe von Datenträgern (virtuellen Datenträgern in der Magnetbandbibliothek), die auf den am besten geeigneten Datenträger durchsucht werden, auf dem ein zu speichernder Datensatz gespeichert werden soll. Der Schwerpunkt liegt dabei auf den Risikofaktoren, die über ein Gelingen oder Scheitern der Zuweisung entscheiden. Speichergruppen können also verwendet werden, ohne daß die unerwünschte Interaktion zwischen dem Softwareprogrammierer und den peripheren Datenspeichersystemen aufgehoben ist.
- IBM Technical Disclosure Bulletin, Bd. 28, Nr. 2, Juli 1985, S. 561 behandelt ein Programm mit der Bezeichnung DIFFAC, das eine Schnittstelle zwischen dem Anwendungsprogramm und der Datenbank- Zugriffssprache einer hierarchisch aufgebauten Datenbank darstellt. DIFFAC arbeitet mit verschiedenen in einem Datenwörterbuch verwalteten Tabellen, um Anwendungsaufrufe in die Syntax der Data Base Management System-Zugriffssprache zu übersetzen, und reduziert so die Anforderung an den Programmierer, sich mit der Data Base Management System-Zugriffssprache zu befassen.
- Unter einem ersten Aspekt betrachtet, stellt die vorliegende Erfindung ein maschinenausgeführtes Verfahren für die Verwaltung der Speicherung für Daten bereit, die in einem Datenspeichersystem gespeichert werden sollen, sowie für die spätere Verwaltung dieser in dem Datenspeiphersystem gespeicherten Daten, wobei das Verfahren die folgenden maschinell ausgeführten Schritte umfaßt: in dem Datenspeichersystem die Einrichtung und Speicherung einer Vielzahl von Speicherklassendefinitionen, wobei jede der Definitionen vorbestimmte Parameter zur Datenspeicherleistung und -verfügbarkeit enthält; in dem Datenspeichersystem die Einrichtung und Speicherung einer Vielzahl von Verwaltungsklassendefinitionen, wobei jede Verwaltungsklassendefinition Verwaltungsparameter wie die Lebenszyklusverarbeitung für die Verwaltung von Dateneinheiten enthält, die in dem Datenspeichersystem gespeichert sind, und wobei diese Verwaltungsparameter unabhängig von den Leistungs- und Verfügbarkeitsparametern sind; in dem Datenspeichersystem die Einrichtung und Speicherung von Speichergruppendefinitionen, von denen jede eine Vielzahl von Datenträgern mit Operationen enthält, die mit den auf den Datenträgern gespeicherten Daten durchgeführt werden sollen, die sich in den betreffenden Speichergruppen befinden; und in dem Datenspeichersystem die Einrichtung und Speicherung einer Vielzahl von Routinen für die automatische Klassenselektion für die Auswahl einer der Speicher- und Verwaltungsklassen bzw. einer der Speichergruppen für jede einzeln adressierbare Dateneinheit, die in dem Datenspeichersystem gespeichert werden soll, wobei jede Routine für die automatische Klassenselektion bei jeder Klassenselektion auf die betreffenden Definitionen zugreift, die in dem Datenspeichersystem gespeichert sind.
- Unter einem zweiten Aspekt betrachtet, stellt die vorliegende Erfindung eine Vorrichtung für die Verwaltung der Speicherung von Daten bereit, die in einem Datenspeichersystem gespeichert werden sollen, sowie für die spätere Verwaltung dieser in dem Datenspeichersystem gespeicherten Daten, wobei die Vorrichtung umfaßt: Klassendefinitionsmittel, um in dem Datenspeichersystem eine Vielzahl von Speicherklassendefinitionen festzulegen und zu speichern, wobei jede der Definitionen vorbestimmte Parameter zur Datenspeicherleistung und -verfügbarkeit enthält; wobei die Klassendefinitionsmittel in dem Datenspeichersystem eine Vielzahl von Verwaltungsklassendefinitionen festlegen und speichern, von denen jede Verwaltungsklassendefinition Verwaltungsparameter wie die Lebenszyklusverarbeitung für die Verarbeitung von Dateneinheiten enthält, die in dem Datenspeichersystem gespeichert sind, und wobei diese Verwaltungsparameter unabhängig von den Leistungs- und Verfügbarkeitsparametern sind; Speichergruppendefinitionsmittel, um in dem Datenspeichersystem Speichergruppendefinitionen festzulegen und zu speichern, von denen jede eine Vielzahl von Datenträgern mit Operationen enthält, die mit den auf den Datenträgern gespeicherten Daten durchgeführt werden sollen, die sich in den jeweiligen Speichergruppen befinden; und Klassenselektionsmittel, um in dem Datenspeichersystem eine Vielzahl von Routinen für die automatische Klassenselektion festzulegen und zu speichern, mit denen jeweils eine der Speicher- und Verwaltungsklassen bzw. eine der Speichergruppen für jede einzeln adressierbare und in dem Datenspeichersystem gespeicherte Dateneinheit ausgewählt wird, wobei jede der Routinen für die automatische Klassenselektion bei der Klassenselektion auf die jeweiligen, im Datenspeichersystem gespeicherten Definitionen zugreift.
- Gemäß der vorliegenden Erfindung wird eine Vielzahl von datenbezogenen Klassen definiert. Diese Klassen werden unabhängig voneinander definiert. Die Klassen werden so festgelegt, daß ein Host auf Datensatzparameter reagieren und implizit Datenspeichergeräte auswählen kann, die diejenigen gewünschten Systemoperationen durchführen können, die für die Datensatzparameter erforderlich sind. Die Datensatzparameter werden bevorzugt implizit von Datensatznamen abgeleitet, die von Datensatznamenskonventionen und -standards geregelt werden, die explizit unabhängig von den Parametern des peripheren Datenspeichers sind.
- In einem maschinenausgeführten Verfahren der Erfindung enthalten die datenbezogenen Klassen Datenklassen, die auf vorbestimmten Datensatzparametern für verschiedene Datensatztypen basieren, die in dem peripheren Datenspeicher gespeichert bzw. daraus abgerufen werden sollen, Speicherklassen, die die Klassifizierung von Datensätzen nach vorbestimmten Leistungs- und Verfügbarkeitsparametern enthalten, die zu den verschiedenen Speicherklassen gehören sollen, sowie eine/mehrere Speichergruppe(n), die die Gruppen von peripheren Datenspeichergeräten hinsichtlich Status, Kapazität, Anschlußfähigkeit usw. definieren, sowie weiter Verwaltungsklassen, die die Lebenszyklusmerkmale der verschiedenen Datensätze definieren. Die Informationen aus einer Speicherklasse werden verwendet, um Datenträger in einer der Speichergruppe(n) unabhängig von JCL-Anweisungen des Anwendungsprogramms auszuwählen. Auch der verfügbare freie Speicherplatz auf den Datenträgern und ihr jeweiliges Aktivitätsniveau sind Faktoren bei der Auswahl der Speichergruppen-Datenträger.
- Die Klassenselektionen für einen gegebenen Datensatz werden bevorzugt auf der Basis einer Datensatznamenskonvention festgelegt, z. B. einer Konvention mit der Kennzeichnung des Unternehmensbereichs, der dem Datensatz erzeugt hat, seiner Größe, der Zuweisungsattribute, der Sicherheitskriterien und anderer damit zusammenhängender Jobinformationen und -erfordernisse. Ein Datenträger kann direkt oder indirekt einem physischen Gerät zugeordnet werden; die Auswahl eines Datenträgers impliziert die Auswahl eines Geräts. Jedes physische Gerät kann einen oder mehrere Datenträger haben, wobei ein Datenträger auf eine Vielzahl von Geräte verteilt sein kann, logische Geräte bei der Adressierung des physischen Geräts verwendet werden können, usw.
- Die Klassen und Gruppen werden zunächst mit interaktiven Mitteln durch einen sogenannten Speicheradministrator definiert. Die definierten Klassen und Gruppen werden in Steuerungstabellen zusammengefaßt, mit denen Dateneinheiten basierend auf Angaben zu den logischen Ebenen des Datensatzes ausgewählt werden, um eine Zuweisung von Speicherplatz des peripheren Datenspeichers zu erhalten. In einer bevorzugten Reihenfolge der maschinenausgeführten Geräteselektion wird zunächst die Datenklasse und anschließend eine Speicherklasse gefolgt von einer Verwaltungsklasse ausgewählt. Die Auswahl der drei Klassen wird danach kombiniert, um eine Speichergruppe auszuwählen, die am besten zu den Parameter aus den drei ausgewählten Klassen paßt. Die Auswahl der Klassen für einen beliebigen Datensatz oder eine Datenbank ist nicht nur abhängig von den Klassendefinitionen, sondern auch von der Logik, die bei der Verarbeitung der automatischen Klassenselektion verwendet wird. In jedem Fall hat der Speicheradministrator (in der Regel eine Person) die vollständige Kontrolle über die Kriterien für die Datenträger- und Klassenselektion; der Softwareprogrammierer muß sich mit diesen Definitionen nicht befassen. Nachdem eine Speichergruppe ausgewählt wurde, kann die Zuweisung von Datenspeicherplatz auf einem Datenträger, der zu der Speichergruppe gehört, im Hinblick auf die automatische Klassenselektion asynchron erfolgen.
- Die oben genannten und andere Aufgaben, Merkmale und Vorzüge der Erfindung werden aus der folgenden ausführlichen Beschreibung der bevorzugten Ausführungsformen der Erfindung und den beigefügten Zeichnungen deutlich.
- Fig. 1 zeigt eine Vielzahl von Hosts, die gemeinsam ein peripheres Datenspeichersystem nutzen, bei dem die vorliegende Erfindung nutzbringend eingesetzt wird.
- Fig. 2 zeigt eine vereinfachte Darstellung einer zu diesem Zeitpunkt zufällig ausgeführten Gruppe von Maschinenoperationen, die die Interaktion mit einem Benutzer beinhalten, mit denen Klassen und Gruppen festgelegt werden, die für die praktische Ausführung der vorliegenden Erfindung in dem System aus Fig. 1 eingesetzt werden können.
- Fig. 3 ist ein vereinfachtes Flußdiagramm von maschinenausgeführten Operationen, die Routinen für die automatische Klassenselektion für die Klassen und Gruppen kompilieren, die mit den Maschinenoperationen aus Fig. 2 definiert werden.
- Fig. 4 ist ein vereinfachtes Blockdiagramm der Beziehung zwischen Anwendungsprogrammen und peripheren Datenspeicher, wenn die vorliegende Erfindung mit dem System aus Fig. 1 angewendet wird.
- Fig. 5 ist ein vereinfachtes Blockdiagramm eines peripheren Datenspeichersystems, bei dem die vorliegende Erfindung nutzbringend eingesetzt wird.
- Fig. 6 ist eine vereinfachte Darstellung der Datenstrukturen, die mit dem System aus Fig. 4 verwendet werden können.
- Fig. 7 ist ein vereinfachtes Flußdiagramm der Maschinenoperationen zur Auswahl von Klassen für einen Datensatz, wenn die vorliegende Erfindung angewendet wird.
- Fig. 8 ist ein vereinfachtes Flußdiagramm der Maschinenoperationen für die Zuweisung von Datenspeicherplatz in einem oder mehreren Datenspeichergeräten, nachdem die Klassen für die Datensätze wie in Fig. 7 dargestellt ausgewählt wurden.
- In den beigefügten Zeichnungen beziehen sich identische Zahlen auf identische Merkmale und Operationen in den verschiedenen Zeichnungen. Fig. 1 zeigt ein Datenverarbeitungssystem mit einer Vielzahl von Hosts 10, die gemeinsam ein peripheres Datenspeichersystem 12 über eine Vielzahl von Ein-/Ausgabe-Anschlüssen (z. B. E/A-Kanäle) 11 nutzen. Die vorliegende Erfindung vereinfacht das Datenverarbeitungssystem für den Softwareprogrammierer.
- Fig. 2 zeigt die vorbereitenden Schritte für die Implementierung der vorliegenden Erfindung in dem in Fig. abgebildeten Datenverarbeitungssystem. Ein Programm mit Mensch-Maschine-Interaktion ermöglicht die interaktiven Schritte 15-18 und erzeugt Datenstrukturen, durch die Softwareprogrammierer nicht mit den Merkmalen des Datenspeichersystems 12 in Berührung kommen. Die Schritte 15-18 können aus einer fortlaufenden, zeitgesteuerten und interaktiven Operation bestehen, wie dies durch die Klammer 19 schematisch dargestellt ist, um die Verarbeitung durch das Datenverarbeitungssystem zu optimieren.
- Das interaktive Verhältnis zwischen einem Host 10 und einem Bediener (Speicheradministrator) enthält die Datenstation 13 und ein Datenstations-Unterstützungsprogramm im Host 10. Ein bevorzugtes interaktives System für die Festlegung der Klassen und Gruppen ist IBM Interactive System Management Facility (ISMF), das Teil des IBM Data Facility Product (DFP) ist. Mit ISMF können die Schritte aus den Fig. 2 und 3 problemlos ausgeführt werden. Angesichts der Vielzahl an verfügbaren interaktiven Programme werden die internen Details solcher Programme hier nicht wiederholt. Die hier enthaltene Beschreibung macht dem Fachmann deutlich, wie die vorliegende Erfindung angewendet werden kann. ISMF ist menügesteuert und verfügt über den folgenden Menüaufbau, um u. a. die Klassen, Speichergruppen und ACS-Routinen der beschriebenen Ausführungsform festzulegen. ISMF-Menü
- Die obigen Begriffe weichen von denjenigen in ISMF geringfügig ab.
- Schritt 15 ermöglicht die interaktive Definition von Datenklassen. Eine solche interaktive Definition wird durch die ISMF-Option Nummer 4 erreicht. Eine Datenklasse gibt die logischen Attribute für den Datensatz an, z. B. Datensatztyp, Datensatzlänge, Anforderungen an den Datenspeicherplatz im Hinblick auf logische Bytes anstelle von physischem Speicherplatz, Ablauf- und Datenhaltungszeit für den Datensatz sowie alle VSAM-Optionen (virtuelle Speicherzugriffsmethode) für den Datensatz. Die Datenklasse selbst vereinfacht die Datensatzzuweisung (so werden z. B. JCL-DD-Anweisungen vereinfacht), unterstützt die Einführung von Zuweisungsstandards, kann mit später definierten Klassen gemäß der vorliegenden Erfindung oder unabhängig verwendet werden und erhöht dabei die Unabhängigkeit der Arbeit des Softwareprogrammierers von dem peripheren Datenspeichersystem, wie weiter unten noch deutlicher wird.
- Eine mit ISMF definierte Gruppe von Datensätzen für die erste Installation einer Ausführungsform der Erfindung ist in der untenstehenden Tabelle aufgeführt: Tabelle der Datenklassen
- Die Kurzbezeichnungen in der obigen Tabelle stehen für:
- Namen von Datenklassen;; DATAF - sequentieller Datensatz mit fester Länge; DATAV - sequentieller Datensatz mit variabler Länge; SRCFLIB - untergliederte Datensatzquelle mit fester Länge; SRCVLIB - untergliederte Datensatzquelle mit variabler Länge; LOADLIB - untergliederte Lademodulbibliothek; LISTING - sequentielle SYSOUT-Ausgabe (SYSOUT steht für Systemausgabe); ENTRY - folgegebundene VSAM-Eingabe; KEYED - folgegebundener VSAM- Schlüssel; DIRECT - relativer VSAM-Datensatz und LINEAR - linearer VSAM-Datensatz.
- Spaltenüberschriften; RECFM - Datensatzformat; LRECL - logische Datensatzlänge; AVGREC - Skalierungsfaktor für Datenspeicherplatz (d. h. Megabyte (MB, Kilobyte (KB) oder andere Einheiten für den Speicherplatz); AVGVAL - Durchschnittswert der Datensatzlänge; PSPACE - erforderlicher Primärspeicherplatz; SPACE - erforderlicher Sekundärspeicherplatz und DIR - Größe eines Verzeichnisses für den Datensatz.
- Kurzbezeichnungen in den Spalten; FB - Block mit fester Größe; VB - Block mit variabler Größe; U - undefinierte Datensätze (multipliziert mit 1); VBA - mit ASA-Zeichen gesperrte Variable; ES - mit Zugangsfolge; KS - mit Schlüsselfolge; RR - relativer Datensatz; und LS - linearer Datensatz.
- Aus der obigen Tabelle geht hervor, daß die Datensatzparameter in den Datenklassen definiert werden, um die Daten der verschiedenen zu speichernden Datensätze zu charakterisieren. Anders ausgedrückt, eine Datenklasse bestimmt, wie ein Datensatz für einen Datenprozessor aussieht.
- Eine definierte Datenklasse gilt für Datensätze, die sowohl auf systemverwalteten als auch auf nicht systemverwalteten Datenträgern gespeichert werden. Der Begriff "nicht systemverwaltete Datenträger" bezeichnet diejenigen Datenträger, die nicht durch das System ausgewählt oder anderweitig gesteuert werden, in dem die vorliegende Erfindung angewendet werden kann. Datensätze, die einer beliebigen Datenklasse zugeordnet werden können, werden im Datenspeichersystem 12 entweder als systemverwaltete oder als nicht systemverwaltete Datensätze gespeichert.
- In Schritt 16, der durch die Option 5 im obigen ISMF-Menü aufgerufen wird, werden mit den Einrichtungen und Verfahren aus Schritt 15 interaktiv Speicherklassen definiert. Jede Speicherklasse legt geräteunabhängig ihre eigene Gruppe von Speicherdiensten fest. Diese Dienste enthalten Spezifizierungen für den wahlfreien Zugriff, Spezifizierungen für den sequentiellen Zugriff, garantierter Speicherplatz (d. h. Vorgabe von Datenspeicherplatz vor einer versuchten Speicherung von Daten im peripheren Datenspeichersystem) usw. Aus dieser Auflistung geht hervor, daß diese Anforderungen nicht mit den Gerätefunktionen gleichzusetzen sind. Nachdem ein Datensatz einer Speicherklasse zugewiesen wurde, wird der Datensatz mit der vorliegenden Erfindung verwaltet; zur Vereinfachung wird ein solcher Datensatz als "systemverwalteter Datensatz" bezeichnet. Das Format der Klassendefinition ist willkürlich und wird hier nicht gezeigt. Untenstehender Abschnitt führt eine Reihe von Speicherklassen auf, die für die Anwendung der vorliegenden Erfindung geeignet sind.
- Im folgenden werden einige beispielhafte Speicherklassen und ihre Dienstmerkmale kurz beschrieben. Die Speicherklasse DBLOG ist für Datenbankprotokolle vorgesehen. Sie verfügt über eine direkte Zugriffsspezifizierung zum Lesen mit einer Ansprechzeit von fünf Millisekunden. Sequentielle Spezifizierungen dienen dem Aufzeichnen oder Schreiben vom Datensätzen in das Datenspeichersystem 12 mit einer Ansprechzeit von drei Millisekunden. Für Datensätze dieser Klasse ist ein garantierter Speicherplatz erforderlich. Die Speicherklasse DBBASE ist für sogenannte Standard- bzw. gewöhnliche Datenbanken vorgesehen. Die einzige Spezifizierung ist in diesem Fall garantierter Speicherplatz. Die Speicherklasse DBENHANC für Datenbanken mit verbesserter Leistung verfügt über Datensätze mit einer Direktzugriffsspezifizierung für den Lesevorgang von zehn Millisekunden und einer Lesezugriffszeit für den sequentiellen Zugriff von ebenfalls zehn Millisekunden. Datensätze in dieser Speicherklasse verfügen über garantierten Speicherplatz. Die Speicherklasse DBCRIT für Datenbanken mit hoher Verfügbarkeit verfügt über eine Direktzugriffs-Lesespezifizierung von zehn Millisekunden, eine Spezifizierung für dem sequentiellen Lesezugriff von zehn Millisekunden, die ständige Verfügbarkeit von Daten für die Hosts 10 sowie über garantierten Speicherplatz. Die Speicherklasse DBFAST für Hochleistungsdatenbanken hat eine Ansprechzeit für den Direktzugriffs-Lesevorgang von fünf Millisekunden, eine Ansprechzeit für den sequentiellen Lesevorgang von fünf Millisekunden und verfügt über garantierten Speicherplatz für ihre Datensätze. Die Speicherklasse BASE enthält Standarddienste, wie sie von dem Datenspeichersystem 12 bereitgestellt werden können. Die Speicherklasse ENHANCED ist eine Gruppe von Speicherdiensten zur Leistungsverbesserung. Alle Zugriffsarten (Lesen und Schreiben) verfügen über eine Ansprechzeit für den direkten und sequentiellen Zugriff voh zehn Millisekunden. Die Speicherklasse CRITICAL verfügt über Dienste mit ständiger Verfügbarkeit und Ansprechzeiten für den direkten und sequentiellen Zugriff von zehn Millisekunden für alle Zugriffsarten. Die Speicherklasse FASTREAD beschreibt Speicherdienste für eine hohe Leseleistung. Die Spezifizierungen legen eine Zugriffsansprechzeit von fünf Millisekunden für alle Lesezugriffe bei direktem und sequentiellem Zugriff fest. Die zuletzt aufgeführte Speicherklasse FASTWRIT ist für Dienste mit hoher Schreibleistung vorgesehen. Sie verfügt über einen Schreib- bzw. Aufzeichnungsspeicherzugriff von fünf Millisekunden bei Direktzugriff bzw. von drei Millisekunden bei sequentiellem Zugriff.
- In Schritt 17, der durch die Option 3 im obigen ISMF-Menü aufgerufen wird, werden Definitionen für Verwaltungsklassen erzeugt. Jede Verwaltungsklasse bezieht sich auf Lebenszyklussteuerungen für einen Datensatz. Sie legt Speicherplatz, Verfügbarkeit und Anforderungen für die Datenhaltungsverwaltung fest. Diese Spezifizierungen enthalten die Verschiebung von einer hohen oder Schnellzugriffsebene einer Datenspeicherhierarchie zu niedrigeren Ebenen oder langsameren Zugriffszeiten, Ablauf- und Datenhaltungszeiten und -grenzwerte, Sicherungshäufigkeit (null steht für keine Sicherung), Datenhaltungszeit für Sicherungskopien, Optionen für Gruppen von Dateigenerationen (GDG) und für die Satzverarbeitung (jede GDG ist eine Datenversion; bei jeder Aktualisierung eines Datensatzes wird dieser zu einer neuen Datenversion - d. h. zu einer neuen Datengeneration) sowie Optionen für die Teilfreigabe. Teilfreigabe bedeutet hier, daß ein nicht genutzter Bereich des Datenspeichers freigegeben werden kann, d.h. wieder in eine Auflistung des freien oder verfügbaren Speicherplatzes des jeweiligen Datenträgers aufgenommen werden kann. Untenstehende Beschreibung erläutert eine Gruppe von ISMF-definierten Verwaltungsklassen, die für die Anwendung der vorliegenden Erfindung verwendet werden können.
- Alle Verwaltungsklassen verfügen über die folgenden Standardeigenschaften, die durch die Angabe von abweichenden Werten in einer der Verwaltungsklassen überschrieben werden können: keine Begrenzung für das Datensatz-Ablaufdatum, keine Teilfreigaben, die Anzahl der Tage im Primärspeicher (Speicherebene null) ohne Nutzung wird auf zwei begrenzt (durch eine Verschiebung oder eine andere Aktivität wird ein inaktiver Datensatz aus dem primären Datenträger entfernt), und die Datenhaltungszeit bei Nichtnutzung beträgt für die Ebene eins oder eine beliebige niedrigere Ebene sechzig Tage (Ebene eins ist die nächstniedrigere Ebene nach Ebene null in der Hierarchie des peripheren Datenspeichers). Die Primärebene oder Ebene null enthält die peripheren Datenspeichergeräten, mit denen die Hosts 10 ihre normalen peripheren Operationen durchführen. Die Standardparameter ermöglichen sowohl die automatische als auch die angewiesene Verschiebung in verschiedene Ebenen der Hierarchie des peripheren Datenspeichers, die Sicherungshäufigkeit ist eins, die Anzahl der Sicherungsversionen ist zwei, Sicherungskopien werden für sechzig Tage, zusätzliche Sicherungskopien für dreißig Tage gehalten, der Speicheradministrator oder ein Benutzer können eine Sicherung veranlassen, und die automatische Sicherung ist aktiviert. Im folgenden Abschnitt werden einige Beispiele für Verwaltungsklassen genannt.
- Die Verwaltungsklasse INTERIM - als "MGMTCLAS (INTERIM)" bezeichnet - definiert Datensätze mit kurzer Lebensdauer. Diese Verwaltungsklasse gibt ein Verfallsdatum für die Datensätze von sieben Tagen ohne Nutzung an, verfügt über eine Gruppe von Dateigenerationen im Primärspeicher (Ebene 1), bei einer Aktivität der Dateigenerationsgruppe verfällt der Datensatz, Teilfreigaben sind zulässig, und es gibt keine automatische Sicherung.
- MGMTCLAS (DBSTNDRD) gilt für Datenbanken ohne Verschiebung. Dabei gibt es keine angewiesene oder automatische Verschiebung und keine automatische Sicherung. MGMT (DBMIG) gilt für Datenbanken mit Verschiebung. Die Anzahl der Tage ohne Nutzung auf der Primärspeicherebene (Ebene null) ist auf fünfzehn begrenzt, wonach die Datenbank automatisch auf eine niedrigere Ebene in der Datenspeicherhierarchie verschoben wird, in der Regel auf Ebene eins. Es gibt keine automatische Sicherung. MGMTCLAS (STANDARD) ist für Datensätze mit Standardverarbeitung vorgesehen. Die Teilfreigabe dieser Datensätze ist zulässig, die Anzahl der Tage ohne Nutzung auf der Ebene eins beträgt fünfzehn, bevor eine Verschiebung zu einer niedrigeren Speicherebene stattfindet, die Sicherungshäufigkeit ist null, und die automatische Sicherung ist aktiviert. MGMTCLAS (GDG) beschreibt Gruppen von Datengenerationen. In dieser Klasse sind Teilfreigaben zulässig, die Anzahl der Tage für die Datenhaltung auf der Primärebene oder Ebene null ohne Nutzung vor einer Verschiebung zur Ebene eins ist auf fünfzehn Tage beschränkt, während die Anzahl der Tage für die Datenhaltung auf Ebene eins ohne Nutzung auf dreißig Tage begrenzt ist, bevor eine Verschiebung zu einer niedrigeren Ebene der Datenspeicherhierarchie veranlaßt wird; ein GDG-Element kann in den primären bzw. Datenspeichergeräten der Ebene null gespeichert werden, die Elemente werden bei Ablauf der Datenhaltungszeit auf eine niedrigere Ebene verschoben, und es gibt keine automatische Sicherung. MGMT (LATEMIG) beschreibt die verzögerte Verschiebung. In dieser Verwaltungsklasse ist die Teilfreigabe zulässig, und die Anzahl der Tage ohne Nutzung auf der Primärebene beträgt fünfunddreißig. MGMTCLAS (NOMIG) beschreibt Datensätze ohne Verschiebung, bei denen eine angewiesene oder automatische Verschiebung nicht zulässig und die Sicherungshäufigkeit gleich Null ist. MGMTCLAS (EXTRABAK) beschreibt Datensätze, für die zusätzliche Sicherungsversionen erstellt werden sollen. Bei dieser Klasse sind Teilfreigaben zulässig, die Sicherungshäufigkeit beträgt null, fünf Sicherungsversionen sind gestattet, und die Anzahl der Tage für einen Aufenthalt im Primärspeicher beträgt fünfzehn. MGMTCLAS (NOACTION) beschreibt Datensätze ohne Verschiebung oder Sicherungsverarbeitung durch die Systemverwaltung. Es gibt keine angewiesene oder automatische Sicherung.
- Schritt 18, der durch die Option 6 im obigen ISMF-Menü aufgerufen wird, erzeugt eine Definition für eine Speichergruppe. Jede Speichergruppe kennzeichnet eine Gruppe von Datenträgern ähnlich einem Datenträger-Pool. Jede dieser Gruppen kann mit den Speichergruppen Ähnlichkeit aufweisen, die durch Clifton et. al. (siehe oben) beschrieben werden. Jede Speichergruppe hat ihre eigenen Anforderungen für die Datenträgerverwaltung, z.B. Grenzwerte für die Speicherplatzzuweisung (xx, yy), wobei xx ein hoher Grenzwert ist - wenn der Datenträger diesen Grenzwert erreicht, veranlaßt das Datenverarbeitungssystem so lange eine Datenverschiebung vom Primärdatenträger bzw. Datenträger der Ebene null, bis xx nicht mehr überschritten wird. Eine solche Verschiebung ist bekannt und kann mit dem IBM Programm DFHSM durchgeführt werden. yy ist ein niedriger Grenzwert, bei dem die oben genannte Verschiebung zu einem Datenträger auf einer niedrigeren Ebene der Datenspeicherhierarchie beendet wird. Eine solche Verschiebung enthält implizit die Operationen der Datensatzverschiebung von dem Datenträger sowie der Freigabe von Speicherplatz, der zuvor durch einen verschobenen Datensatz besetzt worden war, und das Löschen von Datensätzen auf dem Datenträger, die nicht verschoben werden müssen. Das IBM Programm DFHSM verschiebt, sichert und stellt Datensätze wieder her. Eine Speichergruppe wird nur für einen Datensatz ausgewählt, um eine periphere, Speicherplatzzuweisung durch Programmittel zu erhalten; d. h. die Speichergruppen sind für einen Benutzer oder Software-Entwickler nicht zugänglich, wie dies bei Clifton et. al. noch der Fall ist.
- Im folgenden werden die definierten Speichergruppen für einen Datensatz festgelegt, der für eine Anwendung der vorliegenden Erfindung geeignet ist, wobei diese Ausführungen nicht als Einschränkung zu verstehen sind. Zunächst soll die Option 6 aus dem oben genannten ISMF-Menü gewählt worden sein. Es werden vier Arten von Speichergruppen definiert: PRIMARY für Datensätze, die nicht in Datenbanken vorliegen; LARGE für große Datensätze, die nicht in Datenbanken vorliegen; DATABASE für Datenbank-Datensätze und VIO für kleine, temporäre Datensätze. Sofern nicht anderweitig ausgewählt, lauten die Standardeinstellungen für alle vier Speichergruppen: automatische Verschiebung ist aktiviert, automatische Sicherung ist aktiviert, automatischer Speicherauszug ist nicht zulässig, Grenzwerte für die Verschiebung sind nicht vorgegeben, und eine Speicherauszugsklasse ist nicht angegeben.
- Die Speichergruppe PRIMARY ist ein Datensatz-Pool. Die Definition für die Speichergruppe PRIMARY enthält eine Auflistung der Datenträger in der Speichergruppe, eine Systemauflistung, der Grenzwert für die Verschiebung ist auf 90,80 gesetzt, der automatische Speicherauszug ist aktiviert, und der Speicherauszug wird am Sonntag ausgeführt (Speicherauszugsklasse = SUNDAY). Die Speichergruppe LARGE ist ebenfalls ein Datensatz-Pool. Die Definition für die Speichergruppe LARGE enthält Datenträger für die Speicherung großer Datensätze (diese Auflistung enthält andere Datenträger als diejenigen der PRIMARY-Klasse, wobei dies nicht als Einschränkung zu verstehen ist), sie gibt ferner das System an (kann mit dem System für andere Speichergruppen identisch sein), automatische Verschiebung und Sicherung sind aktiviert, der Verschiebungsgrenzwert beträgt 50,40, und der automatische Speicherauszug ist für die Speicherauszugsklasse SUNDAY zulässig. Die Definition für die Speichergruppe DATABASE (Datensatz-Pool) führt andere Datenträger auf als die Auflistungen für die Speichergruppen PRIMARY und LARGE, wobei dies nicht als Einschränkung zu verstehen ist; sie kann dasselbe System definieren, die automatische Verschiebung ist aktiviert, während automatische Sicherung und automatischer Speicherauszug deaktiviert sind. Ein Verschiebungsgrenzwert von 90,80 ist festgelegt. Die Speichergruppe VIO gilt für virtuelle Ein-/Ausgaben mit einer maximalen Größe von 1024 Bytes und einer Gerätebezeichnung 3380 und gibt dasselbe System an wie die anderen drei Speichergruppen.
- Fig. 3 zeigt Schritte für die Definition von ACS-Routinen, die von dem in Fig. 1 abgebildeten Datenverarbeitungssystem verwendet werden, um die in Fig. 2 definierten Datensatzklassen auszuwählen, die verwaltet werden sollen. In Fig. 3 steht die Zahl 25 für den Beginn einer Sitzung, in der ACS-Routinen erzeugt oder modifiziert werden, wie dies mit der Option 7 aus dem oben genannten ISMF-Menü ausgeführt wird. In Schritt 26 gibt der Bediener an der Datenstation 13 die Daten für die ACS-Routine ein, die erzeugt werden soll. Der erzeugten ACS-Routine wird ein Name zugewiesen. Nach der Dateneingabe überprüft der Host 10, mit dem die Datenstation 13 verbunden ist, in Schritt 27 die neu eingegebenen Daten und kompiliert die erzeugte ACS-Routine auf die übliche Art und Weise in einen ausführbaren Code. Weiter unten sind beispielhafte Quellcodes für die automatische Klassenselektion (ACS) aufgeführt, die in Schritt 26 für die definierten Klassen erzeugt wurden. In Schritt 28 werden die ausführbaren Module im Datenverarbeitungssystem gesichert. Das Programm für die Verwaltung der peripheren Datenhierarchie, z. B. das IBM Programm DFP (Data Facility Product) ruft anschließend das kompilierte Modul auf, wobei ein Modul für jede Klasse (Daten, Speicher, Verwaltung) und ein Modul für die Speichergruppe aufgerufen wird, um für jeden Datensatz automatisch Klassen auszuwählen, wie dies im Hinblick auf Fig. 7 weiter unten beschrieben wird.
- Der Quellcode für die in dem Schritten 26-28 erzeugten kompilierten Module für die Klassenselektion ist weiter unten aufgeführt. Wann immer eine zusätzliche Klasse oder Gruppe in einem der Schritte 15-18 erzeugt wird, werden die Module für die automatische Klassenselektion so geändert, daß sie die neuen Definitionen enthalten. Solche Programmodifizierungen sind hinreichend bekannt und werden hier nicht ausführlicher beschrieben.
- In den untenstehenden Auflistungen gibt /* eine Anmerkung an, die die unmittelbar folgenden Maschinenoperationen beschreibt. Das Symbol steht für ein logisches OR; && steht für ein logisches AND, NOT= gibt eine Ungleichheit an, während = bei einem funktionserzeugenden Schritt angibt, daß der linke Operator gleich dem rechten Operator ist, und bei einem WHEN-Schritt Gleichheit als ein Parameter für eine Programmablaufprüfung angibt. Die Klammer steht für die Gruppierung von logischen Operatoren, wie hinreichend bekannt ist. Die Auflistungen basieren auf erwarteten ISMF-Ausgaben; sie sind vereinfachte Darstellungen des ISM-Ausgabeformats. ACS-ROUTINE FÜR DATENKLASSEN
- /* ANMERKUNG: Falls die Zuweisungsanforderung eine Datenklasse angibt, soll sie verwendet werden; andernfalls soll eine Datenklasse ausgehend von dem Bezeichner für erkennbare Low-Level- Datensätze ausgewählt werden.*/
- Die obige Quellenauflistung zeigt eine Form der maschinell ausgeführten Datenklassenselektion für die Auswahl von Datenklassen, die in der Tabelle der Datenklassen (DATACLAS) enthalten sind.
- Die in Schritt 16 definierten Speicherklassen spezifizieren ihre jeweilige Gruppe von Speichergeräten auf geräteunabhängige Art und Weise. Solche spezifizierten Dienste werden mit Parametern in der Zuweisungsanforderung für die Auswahl einer Speicherklasse abgeglichen. Diese Auswahl erfolgt unabhängig von der Auswahl einer Daten- oder Verwaltungsklasse. Jede Speicherklasse gibt Spezifizierungen für den wahlfreien, sequentiellen oder direkten Zugriff an; sie gibt ferner an, welcher garantierte, logische Datenspeicherplatz (falls vorhanden) zur Verfügung gestellt werden muß (Datenspeicherplatz zur Speicherung von Datensätzen wird zugeordnet, bevor eine Speicherzugriffsanforderung für die Datenspeicherung ausgegeben wird). Dabei ist zu beachten, daß die Dienste unabhängig von den Gerätefunktionen ausgedrückt werden - alle Spezifizierungen befinden sich noch auf einer logischen Ebene.
- Falls eine Datenklasse ausgewählt wird und keine Speicherklasse für einen Datensatz ausgewählt wurde, wird der Datensatz nicht vom System verwaltet. Die Auswahl von Speicherklassen erfolgt bevorzugt durch die Überprüfung von DSNAME (Datensatzname) und seinen Bezeichnern.
- Untenstehend wird die Quellcodeauflistung für ein in den Schritten 25 bis 28 erzeugtes Programmodul für die automatische Auswahl einer STORCLAS aufgeführt. ACS-ROUTINE FÜR SPEICHERKLASSEN
- Die in den Schritten 25 - 28 generierte Quellcodeauflistung für die automatische Auswahl einer Verwaltungsklasse in der Datenspeicherhierarchie gemäß den oben genannten Verwaltungsklassen wird im folgenden aufgeführt. ACS-ROUTINE FÜR VERWALTUNGSKLASSEN
- Die in den Schritten 25 - 28 generierte Quellcodeauflistung für die automatische Auswahl einer Speicherklasse in der Datenspeicherhierarchie gemäß den oben genannten Speichergruppen und ausgewählten Klassen wird im folgenden aufgeführt. ACS-ROUTINE FÜR SPEICHERGRUPPEN
- Fig. 4 zeigt in vereinfachter Form die logischen Beziehungen zwischen Software-Programmierung und den Steuerungen der vorliegenden Erfindung. Alle in Fig. 4 dargestellten Elemente mit Ausnahme des peripheren Datenspeichers 12 befinden sich in einem Host 10. Eine Vielzahl an Anwendungsprogrammen 30 wird auf dem Host 10 ausgeführt. Software-Verbindungen mit den peripheren Steuerprogrammen 31 werden auf die übliche Art und Weise realisiert. Das Data Facility Product (DFP) 32 enthält eine Programmierung, mit der die vorliegende Erfindung implementiert werden kann. Einen Bestandteil von DFP 32 bildet ISMF 33, ein Programm für die Datenstationsunterstützung, das oben in Verbindung mit der Datenstation 13 erwähnt wurde. Der mit zwei Spitzen abgebildete Pfeil 34 steht für den Anschluß an eine oder mehrere Datenstationen 13. Das Datenverschiebungsprogramm 35 veranlaßt die Verschiebung von Daten zwischen dem Hauptspeicher (nicht abgebildet) des Hosts und dem peripheren Datenspeicher 12. Das IBM Programm DFDSS ist ein solches Datenverschiebungsprogramm. Das Datenverschiebungsprogramm 35 verwendet das IOS (Eingabe- Ausgabe-System) 37, das einen Bestandteil des Betriebssystems des Hosts 10 bildet, für die Übertragung der Daten zwischen dem Hauptspeicher (nicht abgebildet) des Hosts 10 und dem peripheren Datenspeicher 12 über die Ein-/Ausgabe-Kanäle 38. Die Koordination solcher peripheren Operationen erfolgt über Steuersätze (CDS) 40; die meisten dieser Datensätze sind bereits bekannt, zum besseren Verständnis der vorliegenden Erfindung sind neue Datenstrukturen in Fig. 6 dargestellt. Parallel zu DFP 32 arbeitet DFHMS 41, ein Verwaltungsprogramm für den hierarchischen Speicher. DFHSM 41 stellt die oben erwähnte Verschiebung, Aufruf, Sicherung usw. von Datenträgern bereit und arbeitet ferner auf Datensatz- und Datenbankebene, wobei es die Verwaltungsklassen-Steuerungen verwendet.
- Fig. 5 ist ein vereinfachtes Schaubild eines peripheren Datenspeichersystems 12, das mit den Kanälen 38 verbunden ist. Eine primäre Ebene bzw. Ebene 0 des hierarchischen peripheren Datenspeichers enthält ein. bzw. mehrere im Cache gespeicherte(s) DASD-Teilsystem(e) 45, während die Ebene eins der Hierarchie DASD(s) (46) mit mittlerer Leistung enthält. Hochleistungs- DASD(s) 47 können ein Bestandteil der Primärebene sein. Die Ebene zwei der Hierarchie kann ein oder mehrere direkt verbundene(s) Bandteilsystem(e) 48 oder gepufferte Bandteilsystem(e) 49 enthalten. Ebene drei der Hierarchie enthält Regale für die Speicherung 50. Dabei versetzen Operatoren die Bandspulen (Datenträger) von Hand von einem bzw. mehreren Speichergerät(en) 50 zu den Bandlaufwerken des/der Bandteilsystem(e) 48 und 49. Eine automatische Datenträgerbibliothek (Band oder Platte) 55 kann ebenfalls Bestandteil des peripheren Datenspeichers 12 sein. Die Bibliothek 55 enthält typischerweise einen Bereich für das Datenträger-Handling 56 und eine Vielzahl von Aufzeichnungs-/Lesegeräten (Band oder Platte) DEV 57 sowie eine Bibliothekssteuerung CONTR 58. Das/die Speicherregal(e) 50 ist bzw. sind ebenfalls funktionsmäßig mit der Bibliothek 55 verbunden. Eine Steuerkonsole 60 bildet die Datenstation für die Kommunikation mit dem Host 10 für manuell durchführbare Aspekte des peripheren Datenspeichers 12 und kann als Datenstation 13 für ISMF verwendet werden. Die Bibliothek 55 kann je nach Ausführung eine niedrigere (oder höhere) Ebene der Datenspeicherhierarchie sein.
- Fig. 6 zeigt ist eine vereinfachte Darstellung von Datenstrukturen, die bei einer Anwendung der vorliegenden Erfindung in der beschriebenen Umgebung verwendet werden können. Der Begriff "Datenträger" bezeichnet einen logischen Datenträger (einzeln adressierbarer Speicherplatz) oder einen physischen Datenträger (Bandspule, DASD-Spindel, Gruppe von DASD-Zylindern usw.). Die logischen Datenträger sind Adreßräume auf einem oder mehreren physischen Datenträgern. Jeder im peripheren Datenspeicher 12 adressierbare Datenträger verfügt über ein Datenträgerverzeichnis, das als Datenträgerinhaltsverzeichnis (VTOC) bezeichnet wird (hierzu gehört auch das TTOC bzw. Bandinhaltsverzeichnis), sowie über VVDS (Datensatz des VSAM-Datenträgers). Das Verzeichnis 70, das ein Datensatz sein kann, enthält DSN 71, in dem der Datensatz- oder Datenbankname gespeichert wird, LOC 72, das die Speicherstelle von DSN angibt, STORCLAS 74, die die Speicherklasse angibt, zu der DSN gehört, und MGMTCLS 75, die die Verwaltungsklasse angibt, zu der DSN gehört. Die Datenklasse ist nicht enthalten, da sie keine Parameter definiert, die direkt vom peripheren Datenspeicher 12 verwendet werden können; die Datenklasse definiert vielmehr DSN als Datensatzparameter (bzw. Datenbankparameter), nicht als Speicherparameter. Das Feld V 75 gibt an, daß jeder Eintrag weitere Felder enthalten kann, die im Hinblick auf die vorliegende Erfindung nicht von Bedeutung sind.
- Die Datenklassendefinition kann im Katalog der Datenverarbeitungsgeräte, in anderen Datenstrukturen, auf die das System zugreifen kann, oder als separater Steuerblock gespeichert sein. Jeder Datenklasseneintrag (DATACLAS) 80 enthält ein Typfeld 81 für dem Datentyp, ein RF-Feld 82 für das Datensatzformat, ein RL-Feld 83 für die Datensatzlänge, ein Speicherplatzfeld 84 für die Anforderungen des Primär-, -Sekundär- und Verzeichnisspeicherplatzes, ein EXP-Feld 85 für die abgelaufene Zeit (die Zeitspanne seit der Erzeugung der Daten), ein RETENT-Feld 86 für die Datenhaltungsanforderungen für den Primärspeicher sowie ein VSAM-Feld 87 für die VSA-Datensatzparameter. Jeder Speicherklasseneintrag (STORCLAS) enthält ein Lesefeld 91 und ein Schreibfeld 92 für Anforderungen der Lese- bzw. Schreibzugriffszeiten, ein AVAIL-Feld 93 für die Verfügbarkeitsanforderungen, ein ALLOC-Feld 94 für die Zuweisungsgröße, die für die zugehörigen Datensätze und Datenbanken erforderlich ist, sowie andere Felder, die erforderlich oder erwünscht sein können. Ein Verwaltungsklasseneintrag MGMTCLAS 100 enthält ein EXPIRE-Feld 101 für die abgelaufene Zeit (d. h. eine Zeitspanne anstelle eines Kalenderdatums), ein RETENT-Feld 102 für die Datenhaltungszeit im Primärspeicher, ein MIGRATE-Feld 103 für die Verschiebungsanforderungen wie beispielsweise die Tage seit dem letzten Zugriff, ein BU-Feld 104 für Sicherungsanforderungen, ein Versionsfeld 105 für die Anzahl der Versionen, die gehalten werden sollen, sowie weitere Felder für sonstige Anforderungen für eine bestimmte Verwaltungsklasse. Ein Speichergruppeneintrag STORGRP 110 enthält ein TYPE-Feld 111 für den Gruppentyp (Pool usw.), ein ALLOC-Feld 112 für die Zuweisungsgrößen, ein VIO-Feld 113 für die Anforderungen für flüchtige E/A-Datensätze (VIO), ein MIGRATE-Feld 114 für Verschiebungseigenschaften (automatisch, keine usw.), ein DUMP-Feld 115 für die Speicherauszugsparameter (zulässig usw.), ein BU-Feld 116 für die Sicherungsparameter sowie weitere Felder für sonstige Parameter. Hier wird deutlich, daß der Datenklasseneintrag 80 nicht alle Parameter und Anforderungen in den Speicher- und Verwaltungsklassen sowie in der Speichergruppe angibt. Dies bedeutet, daß der Software-Programmierer oder Benutzer nicht mit diesen Details in Berührung kommt - der Benutzer muß lediglich den Datensatz charakterisieren, was implizit über den Datensatznamen (DSN) geschehen kann.
- Für die Adressierung der Einträge aus Fig. 6 kann ein beliebiges herkömmliches Adressierungsschema für die Tabellenadressierung verwendet werden. Jede der Klassen und Gruppendefinitionen kann sich in separaten Tabellen befinden (dies ist nicht als Einschränkung zu verstehen), wobei die relative Position des Eintrags anzeigt, welche Klasse oder Gruppe definiert wird. Jedem Eintrag kann für die Vergleichsadressierung ein zusätzliches Feld mit dem Namen der Klasse oder Gruppe hinzugefügt werden.
- Fig. 7 zeigt ein Flußdiagramm mit der automatischen Klassenselektion (ACS), die gemäß der vorliegenden Erfindung eingesetzt und zwischen der Bestimmung eines Datensatzes oder einer Datenbank und einer Anforderung für die Zuweisung von Datenbereich im System 12 für diesen Datensatz bzw. die Datenbank durchgeführt wird. Eine solche automatische Klassenselektion für jeden Datensatz enthält stets die Auswahl einer Datenklasse DATACLAS. Falls lediglich eine DATACLAS und weder Speicher- und Verwaltungsklassen noch Speichergruppen spezifiziert werden, ist der Datensatz nicht systemverwaltet. Der Datensatz ist dagegen systemverwaltet, wenn eine Speicherklasse ausgewählt wird. Diese Klassenselektionen für einen Datensatz werden bevorzugt durch den Computer ohne Bedienerinteraktion durchgeführt. Dabei kann jede übliche Programmierung für die Folgebestimmung der dargestellten Routinen für die Klassenselektion verwendet werden; Einzelheiten, die für das Verständnis der vorliegenden Erfindung nicht von Bedeutung sind, werden daher nicht genannt. Die tatsächlich für den Datensatz ausgewählten Klassen sind nicht nur abhängig von den jeweiligen Klassendefinitionen, sondern auch von der Selektionsprogrammierlogik. Bei den dargestellten ACS-Routinen stellt eine einfache Auflistung sowohl eine Selektionspriorität der zuerst aufgelisteten Klasse in jeder Klassengruppe als auch die Reihenfolge der Klassenselektion bereit. Best-fit- oder andere Algorithmen können ebenfalls verwendet werden, um die verschiedenen Ergebnisse zu erhalten.
- Die Klassenselektionsanforderung für einen Datensatz wird von einem Benutzerprogramm über DFP-Prozesse (nicht abgebildet oder beschrieben) auf Leitung 140 empfangen. Diese Anforderung kann durch die Eingabe eines Datensatzes oder einer Datenbank im System ausgegeben werden. Dabei soll sich der Begriff "Datensatz" im folgenden sowohl auf einen Datensatz als auch auf eine Datenbank beziehen. Der erste Schritt 141 ist eine maschinell ausgeführte Auswahl einer Datenklasse mit dem ACS-Programm, das weiter oben in der Tabelle "ACS-ROUTINE FÜR DATENKLASSEN" enthalten ist. Bei der Datenklassenselektion vergleicht diese ACS-Routine Informationen in DATACLAS 80 mit den Parametern (nicht abgebildet), die mit dem Datensatz empfangen wurden, z. B. im Datensatznamen (DSN). Ein vorbestimmter Vergleich der Informationen in DATACLAS und der empfangenen Parameter, z. B. vorbestimmte Kennzeichnungen (dies ist nicht als Einschränkung zu verstehen), veranlaßt die ACS-ROUTINE FÜR DATENKLASSEN, einen der oben aufgeführten DATACLAS-Einträge auszuwählen. Nach der Auswahl einer Datenklasse wird in einem zweiten Schritt 142 eine Speicherklasse ausgewählt. Das Programm für die maschinell ausgeführte Auswahl ist weiter oben in der Tabelle mit dem Titel "ACS-ROUTINE FÜR SPEICHERKLASSEN" aufgeführt. Eine der Optionen bei der maschinellen Auswahl der Speicherklasse (Pfeil 143) besteht darin, die Zuordnung einem "nicht SMS-verwalteten" Bereich des Datenverarbeitungssystems zuzuweisen. Das heißt, das Speicherverwaltungssystem (SMS), das die Speicher- und Verwaltungsklassen verwendet, soll den Datensatz, der Gegenstand der aktuellen Anforderung für eine Klassenselektion ist, nicht verwalten.
- Dieser Ausschlußprozeß ist in der Anmerkung "Definiere nicht SMS-verwaltete Datensätze" der Auflistung ACS-ROUTINE FÜR SPEICHERKLASSEN beschrieben. In diesem Beispiel basieren die Systemdatensätze (SYS.**) mit einem DSN mit dem Ausschlußparameter der vorliegenden Erfindung auf einer syntaktischen Analyse des DSN. Daher können Datenklassen für Datensätze ausgewählt werden, die mit der vorliegenden Erfindung oder mit anderen Steuerungsarten verwaltet werden sollen.
- Wenn eine Speicherklasse für einen Datensatz ausgewählt wurde, wird in einem dritten maschinenausgeführten Schritt 144 eine Verwaltungsklasse maschinell ausgewählt, wobei das Programm aus der Tabelle "ACS-ROUTINE FÜR VERWALTUNGSKLASSEN" verwendet wird. Die Parameter in MGMTCLAS 100 werden mit den empfangenen Datensatzparametern verglichen, um das am besten geeignete Vergleichselement zu ermitteln, das angibt, welche der oben aufgeführten Verwaltungsklassen für den Datensatz ausgewählt wird.
- Die maschinelle Auswahl einer Verwaltungsklasse bildet den Abschluß des maschinell ausgeführten Klassenselektionsprozesses, der insgesamt der Auswahl einer Speichergruppe von Datenträgern dient, auf denen dem Datensatz Speicherplatz zugewiesen werden soll. In diesem Zusammenhang ist anzumerken, daß Datensätze einer Datenklasse verschiedene Speicher- und Verwaltungsklassen haben bzw. diese zugeordnet bekommen können, daß Datensätze mit verschiedenen oder zugeordneten Datenklassen zu derselben Speicherklasse und gleichzeitig zu verschiedenen Verwaltungsklassen gehören können.
- Die vierte und letzte Option ist die Auswahl der Speichergruppe durch den maschinell ausgeführten Schritt 145, mit dem dem Datensatz Speicherplatz zugewiesen wird. Diese maschinelle Auswahl wird in der Tabelle mit dem Titel "ACS-ROUTINE FÜR SPEICHERGRUPPEN" beschrieben. Nach Abschluß der Klassen- und Gruppenselektionen werden mit dem maschinell ausgeführten Schritt 146 die Kennzeichnungen der ausgewählten Klassen und der ausgewählte Datensatz in dem Datenverarbeitungssystem aus Fig. 1 für einen bestimmten Zeitraum als Steuersatz gesichert, der ein Eintrag im Verzeichnis 70 ist und später durch das Zuweisungsprogramm (Fig. 8) verwendet wird. In der Ausführungsform der vorliegenden Erfindung soll eine Speichergruppe Speicherparameter für Datensätze beschreiben, die über verschiedene Datenklassen, Speicherklassen und Verwaltungsklassen verfügen. Pfeil 147 gibt an, daß die Programmausführung mit anderweitiger Programmierung fortfährt, die für die vorliegende Erfindung nicht von Bedeutung ist. Zu diesem Zeitpunkt wird das Datenverarbeitungssystem auf den Empfang einer bzw. mehrerer Zuweisungsanforderung(en) für den Datensatz und die Zuweisung mittels SMS-Verwaltung vorbereitet.
- Fig. 8 zeigt die Reaktion von DFP auf eine empfangene Zuweisungsanforderung, wenn sich die Zugriffsanforderung auf die SMS-verwalteten Daten bezieht. Die Zuweisungsanforderung wird in Schritt 150 von einem Benutzerprogramm empfangen. In Schritt 151 wird der zugehörige Steuersatz (Eintrag im Verzeichnis 70) gelesen, um zu ermitteln, ob eine Speicherklasse für den Datensatz ausgewählt wurde. Falls keine Speicherklasse ausgewählt wurde (das Feld STORCLAS 74 des Eintrags in das Verzeichnis 70 ist gleich Null), wird die Zugriffsanforderung wie in der herkömmlichen Technik behandelt, d. h. es handelt sich nicht um einen systemverwalteten Datensatz. Falls eine Speicherklasse ausgewählt wurde, wird in Schritt 151 mit den Geräten, die einer Speichergruppe zugeordnet wurden, auf den Speicher zugegriffen. Dabei ist zu beachten, daß Klassen bestimmte Anforderungen an die Speicherverwaltung angeben; daher liegt der Hauptverwendungszweck der Klassendefinitionen in der Verwaltung des Datenbereichs, um seine Hilfsprogramme zu optimieren, während gleichzeitig eine implizite Verarbeitung der Zuweisung erfolgt, die auf der Datenklassendefinition basiert. Das IBM Produkt DFHSM bezieht sich beispielsweise auf die im Feld MGMTCLAS 75 angegebene Verwaltungsklasse, um festzustellen, welche der zu diesem Zeitpunkt maschinell ausgeführten Verschiebungs-, Sicherungs-, Lösch- und Speicherauszugsoperationen sowie wann diese Operationen mit den systemverwalteten Datensätzen ausgeführt werden sollen, die während ihrer "Lebensdauer" Mitglied der verschiedenen Verwaltungsklassen sind. Das IBM Produkt DFP übernimmt wie hier beschrieben die Zuweisung des Datenbereichs. Dabei ist zu beachten, daß die hier beschriebenen Datenstrukturen erweitert werden können und daß die implizite und benutzerunabhängige Daten- und Datenbereichsverwaltung mit den Modifizierungen der Datenstrukturen und mit der Erschließung weiterer Anwendungsmöglichkeiten der aktuellen Datenstrukturen ebenfalls ausgebaut werden kann.
- Die Anwendung der vorliegenden Erfindung vereinfacht JCL-Anweisungen, indem sie die Informationsmenge reduziert, die der Host für eine erfolgreiche Antwort auf JCL-Anweisungen benötigt. In der herkömmlichen Technik konnte eine JCL-Anweisung folgendermaßen aussehen:
- Bei einer Anwendung der vorliegenden Erfindung lautet obige JCL- Anweisung folgendermaßen:
Claims (12)
1. Maschinenausgeführtes Verfahren für die Verwaltung der
Datenspeicherung für Daten, die in einem Datenspeichersystem
gespeichert werden können, und für die spätere Verwaltung
dieser in dem Datenspeichersystem gespeicherten Daten,
wobei das Verfahren die folgenden maschinenausgeführten
Schritte umfaßt:
In dem Datenspeichersystem Einrichtung und Speicherung (16)
einer Vielzahl von Speicherklassendefinitionen, wobei jede
Definition vorbestimmte Parameter zur Datenspeicherleistung
und -verfügbarkeit umfaßt;
in dem Datenspeichersystem Einrichtung und Speicherung (17)
einer Vielzahl von Verwaltungsklassendefinitionen, wobei
jede Verwaltungsklassendefinition Verwaltungsparameter wie
beispielsweise die Lebenszyklusverarbeitung zum Verwalten
von in dem Datenspeichersystem gespeicherten Dateneinheiten
umfaßt, und wobei diese Verwaltungsparameter unabhängig von
den Leistungs- und Verfügbarkeitsparametern sind;
in dem Datenspeichersystem Einrichtung und Speicherung (18)
von Speichergruppendefinitionen, von denen jede eine
Vielzahl von Datenspeicher-Datenträgern mit Operationen umfaßt,
die mit den auf den Datenträgern gespeicherten Daten
durchgeführt werden sollen, die sich in den betreffenden
Speichergruppen befinden; und
in dem Datenspeichersystem Einrichtung und Speicherung
einer Vielzahl von Routinen für die automatische
Klassenselektion für die Auswahl (142, 144, 145) einer der
Speicher- und Verwaltungsklassen bzw. einer der Speichergruppen für
jede einzeln adressierbare Dateneinheit, die in dem
Datenspeichersystem gespeichert werden soll, wobei jede Routine
für die automatische Klassenselektion bei jeder
Klassenselektion auf die betreffenden Definitionen zugreift, die in
dem Datenspeichersystem gespeichert sind.
2. Maschinenausgeführtes Verfahren nach Anspruch 1, das die
folgenden maschinenausgeführten Schritte umfaßt:
Einrichtung von vorbestimmten Benutzerdatensatz-Anzeigen
für eine Dateneinheit, die in dem Datenspeichersystem
gespeichert werden soll;
Vergleichen der vorbestimmten Benutzerdatensatz-Anzeigen
der Dateneinheit mit den Speicherklassendefinitionen und
Auswählen (142) einer der Speicherklassen unabhängig von
den Verwaltungsklassendefinitionen (144); und
nach der Auswahl einer der Speicher- und Verwaltungsklassen
Auswählen (145) einer der Speichergruppen unabhängig von
der Auswahl der Speicherklasse.
3. Maschinenausgeführtes Verfahren nach Anspruch 2, das die
folgenden maschinenausgeführten Schritte umfaßt:
Nach der Auswahl (145) einer der Speichergruppen Zuweisen
von Datenspeicherplatz auf mindestens einem Datenträger,
der zu der ausgewählten Speichergruppe gehört, wobei die
Zuweisung prinzipiell unabhängig von der Klassenauswahl
ist; und
Speichern der Dateneinheit auf dem ausgewählten
Datenträger.
4. Maschinenausgeführtes Verfahren nach den Ansprüchen 2 oder
3, das die folgenden maschinenausgeführten Schritte umfaßt:
In dem Datenspeichersystem Einrichtung und Speicherung (15)
einer Vielzahl von Datenklassendefinitionen, die jeweils
verschiedene Definitionen von Datenmerkmalen festlegen, die
unabhängig von den Definitionen in den Speicher- und
Verwaltungsklassendefinitionen sind; und
Verwaltung des Lebenszyklusses der gespeicherten Daten mit
den Parametern der Verwaltungsklasse unabhängig von den
vorbestimmten Benutzerdatensatz-Anzeigen.
5. Maschinenausgeführtes Verfahren nach Anspruch 4, das die
folgenden maschinenausgeführten Schritte umfaßt:
automatische Verwaltung einiger Daten mit den Speicher- und
Verwaltungsklassen und manuelle Verwaltung (143) anderer
Daten mit Steuerungen, die nicht die Speicher- und
Verwaltungsklassen umfassen, wobei die Benutzer der einen Daten
an der Verwaltung der anderen Daten beteiligt sind.
6. Maschinenausgeführtes Verfahren nach Anspruch 5, das weiter
die folgenden Schritte umfaßt:
Verwaltung des Lebenszyklusses einer jeden in dem
Datenspeichersystem gespeicherten Dateneinheit, wobei nur die
betreffende Verwaltungsklasse verwendet wird, die für die
Dateneinheiten ausgewählt wurde.
7. Maschinenausgeführtes Verfahren aus einem beliebigen der
vorangehenden Ansprüche, das weiter den
maschinenausgeführten Schritt umfaßt:
Einrichtung eines Steuerverzeichnisses (146) für alle
Dateneinheiten, die ausgewählten Daten-, Speicher- und
Verwaltungsklassen sowie Speichergruppen zugewiesen wurden,
und Kennzeichnung ausschließlich derjenigen ausgewählten
Speicher- und Verwaltungsklassen sowie des/der
Datenträger/s, die für die Speicherung der betreffenden
Dateneinheiten zugewiesen wurden, und weiter Kennzeichnung der
betreffenden Dateneinheit.
8. Vorrichtung für die Verwaltung der Datenspeicherung für
Daten, die in einem Datenspeichersystem gespeichert werden
können, und für die spätere Verwaltung dieser in dem
Datenspeichersystem gespeicherten Daten, wobei die Vorrichtung
umfaßt:
Klassendefinitionsmittel, um in dem Datenspeichersystem
eine Vielzahl von Speicherklassendefinitionen einzurichten
und zu speichern (16), wobei jede der Definitionen
vorbestimmte Parameter zur Datenspeicherleistung und
-verfügbarkeit umfaßt;
wobei die Klassendefinitionsmittel in dem
Datenspeichersystem eine Vielzahl von Verwaltungsklassendefinitionen
einrichten und speichern (17), von denen jede
Verwaltungsklassendefinition Verwaltungsparameter wie die
Lebenszyklusverarbeitung für die Verarbeitung von Dateneinheiten
umfaßt, die in dem Datenspeichersystem gespeichert sind,
und wobei diese Verwaltungsparameter unabhängig von den
Leistungs- und Verfügbarkeitsparametern sind;
Speichergruppendefinitionsmittel, um in dem
Datenspeichersystem Speichergruppendefinitionen einzurichten und zu
speichern (18), von denen jede eine Vielzahl von
Datenspeicher-Datenträgern mit Operationen enthält, die mit den auf
den Datenträgern gespeicherten Daten durchgeführt werden
sollen, die sich in den jeweiligen Speichergruppen
befinden; und
Klassenselektionsmittel, um in dem Datenspeichersystem eine
Vielzahl von Routinen für die automatische Klassenselektion
einzurichten und zu speichern, mit denen jeweils eine der
Speicherung- und Verwaltungsklassen bzw. eine der
Speichergruppen für jede einzeln adressierbare und in dem
Datenspeichersystem zu speichernde Dateneinheit ausgewählt wird
(142, 144, 145), wobei jede der Routinen für die
automatische Klassenselektion bei der Klassenselektion auf die
jeweiligen, im Datenspeichersystem gespeicherten Definitionen
zugreift.
9. Vorrichtung nach Anspruch 8, die weiter umfaßt:
Mittel für die Einrichtung von vorbestimmten
Benutzerdatensatz-Anzeigen für eine Dateneinheit, die in
dem Datenspeichersystem gespeichert werden soll;
wobei das Klassenselektionsmittel die vorbestimmten
Benutzerdatensatz-Anzeigen der Dateneinheit mit den
Speicherklassendefinitionen vergleicht und unabhängig von den
Verwaltungsklasssendefinitionen (144) eine der
Speicherklassen auswählt (142); und
wobei das Klassenselektionsmittel ferner nach der Auswahl
einer Speicher- und Verwaltungsklasse unabhängig von der
Speicherklassenselektion eine Speichergruppe auswählt
(145).
10. Vorrichtung nach Anspruch 9, wobei das
Klassenselektionsmittel nach der Auswahl (145) einer der Speichergruppen
Datenspeicherplatz auf mindestens einem Datenträger
zuweist, der ein Mitglied der ausgewählten Speichergruppe
ist, wobei diese Zuweisung prinzipiell unabhängig von den
Klassenselektionen erfolgt; und
Speichermittel für die Speicherung der Dateneinheit auf dem
Datenträger.
11. Vorrichtung aus Anspruch 9 oder 10, wobei das
Klassendefinitionsmittel in dem Datenspeichersystem eine Vielzahl
von Datenklassendefinitionen einrichtet und speichert (15),
von denen jede verschiedene Definitionen von Datenmerkmalen
definiert, die unabhängig von den Definitionen in den
Speicher- und Verwaltungsklassendefinitionen sind, und
wobei der Lebenszyklus der gespeicherten Daten unabhängig von
den vorbestimmten Benutzerdatensatz-Anzeigen mit den
Parametern der Verwaltungsklassen verwaltet wird.
12. Vorrichtung nach einem beliebigen der Ansprüche 8 bis 11,
die weiter umfaßt:
Mittel für die Einrichtung eines Steuerverzeichnisses (146)
für alle Dateneinheiten, die ausgewählten Daten-,
Speicher- und Verwaltungsklassen sowie Speichergruppen zugewiesen
wurden, und Kennzeichnung ausschließlich der ausgewählten
Speicher- und Verwaltungsklassen und Datenträger, die für
die Speicherung der betreffenden Dateneinheiten zugewiesen
wurden, und weiter Kennzeichnung der betreffenden
Dateneinheit.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/301,970 US5018060A (en) | 1989-01-26 | 1989-01-26 | Allocating data storage space of peripheral data storage devices using implied allocation based on user parameters |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69029210D1 DE69029210D1 (de) | 1997-01-09 |
DE69029210T2 true DE69029210T2 (de) | 1997-05-22 |
Family
ID=23165701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69029210T Expired - Lifetime DE69029210T2 (de) | 1989-01-26 | 1990-01-25 | Verwaltungsverfahren und Vorrichtung zur Datenspeicherung |
Country Status (4)
Country | Link |
---|---|
US (1) | US5018060A (de) |
EP (1) | EP0381651B1 (de) |
JP (1) | JPH0754478B2 (de) |
DE (1) | DE69029210T2 (de) |
Families Citing this family (124)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0291747A (ja) * | 1988-09-29 | 1990-03-30 | Hitachi Ltd | 情報処理装置 |
JPH02236668A (ja) * | 1989-03-10 | 1990-09-19 | Hitachi Ltd | 入出力処理方法 |
US5276867A (en) * | 1989-12-19 | 1994-01-04 | Epoch Systems, Inc. | Digital data storage system with improved data migration |
US5317728A (en) * | 1990-09-07 | 1994-05-31 | International Business Machines Corporation | Storage management of a first file system using a second file system containing surrogate files and catalog management information |
US5345584A (en) * | 1991-03-11 | 1994-09-06 | Laclead Enterprises | System for managing data storage based on vector-summed size-frequency vectors for data sets, devices, and residual storage on devices |
US5287500A (en) * | 1991-06-03 | 1994-02-15 | Digital Equipment Corporation | System for allocating storage spaces based upon required and optional service attributes having assigned piorities |
CA2072178A1 (en) * | 1991-06-24 | 1992-12-25 | Said S. Saadeh | Innate bus monitor for computer system manager |
JPH05324287A (ja) * | 1991-12-17 | 1993-12-07 | Texas Instr Inc <Ti> | 分散環境下で他の部分からデータ及び情報収集部分を分離する方法とシステム |
US5421011A (en) * | 1991-12-20 | 1995-05-30 | International Business Machines Corporation | Method and system for access and accounting control in a data processing system by using a single resource account for a user or a group of users |
JP3448068B2 (ja) * | 1991-12-24 | 2003-09-16 | 富士通株式会社 | データ処理システムおよびストレージ管理方法 |
US5303214A (en) * | 1992-01-03 | 1994-04-12 | International Business Machines Corporation | Multi-media-type automatic libraries |
JP3213766B2 (ja) * | 1992-03-16 | 2001-10-02 | 株式会社日立製作所 | レプリケートファイル更新システム |
US5506986A (en) * | 1992-07-14 | 1996-04-09 | Electronic Data Systems Corporation | Media management system using historical data to access data sets from a plurality of data storage devices |
JP3376604B2 (ja) * | 1992-07-20 | 2003-02-10 | カシオ計算機株式会社 | 情報管理装置 |
US5408656A (en) * | 1992-09-23 | 1995-04-18 | International Business Machines Corporation | Method and system for non-specific address data retrieval in a data storage subsystem which includes multiple datasets stored at specific addresses |
US5475834A (en) * | 1992-10-26 | 1995-12-12 | International Business Machines Corporation | Integration of migration level two and backup tape processing using multiple inventory entries |
US5495603A (en) * | 1993-06-14 | 1996-02-27 | International Business Machines Corporation | Declarative automatic class selection filter for dynamic file reclassification |
US5546557A (en) * | 1993-06-14 | 1996-08-13 | International Business Machines Corporation | System for storing and managing plural logical volumes in each of several physical volumes including automatically creating logical volumes in peripheral data storage subsystem |
US5513156A (en) * | 1993-07-23 | 1996-04-30 | Fujitsu Limited | Library apparatus |
JPH0792648A (ja) * | 1993-09-22 | 1995-04-07 | Dainippon Screen Mfg Co Ltd | 製版用工程管理装置および方法 |
US6298439B1 (en) * | 1994-01-28 | 2001-10-02 | International Business Machines Corporation | Automated storage library for managing allocation of a peripheral data storage device in response to a multi-volume data set request |
US5491810A (en) * | 1994-03-01 | 1996-02-13 | International Business Machines Corporation | Method and system for automated data storage system space allocation utilizing prioritized data set parameters |
JP2682811B2 (ja) * | 1994-03-22 | 1997-11-26 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ記憶管理システム及び方法 |
US5586252A (en) * | 1994-05-24 | 1996-12-17 | International Business Machines Corporation | System for failure mode and effects analysis |
US5546549A (en) * | 1994-06-01 | 1996-08-13 | International Business Machines Corporation | Multi-path channel (MPC) interface with user transparent, unbalanced, dynamically alterable computer input/output channels |
FR2721468B1 (fr) * | 1994-06-17 | 1996-07-26 | Alcatel Mobile Comm France | Procédé de partage de ressources physiques et dispositif d'interface pour la mise en Óoeuvre du procédé. |
US5901277A (en) * | 1994-07-29 | 1999-05-04 | Apple Computer, Inc. | Shared decompression buffer |
DE69524999T2 (de) * | 1994-08-01 | 2002-07-18 | Opentv Inc | Verfahren zum Komprimieren und Dekomprimieren von Dateien |
US5659743A (en) * | 1994-12-05 | 1997-08-19 | Legent Corporation | Method and apparatus for a pattern based spaced management system |
US5787446A (en) * | 1995-08-03 | 1998-07-28 | International Business Machines Corporation | Sub-volume with floating storage space |
US6012032A (en) * | 1995-11-30 | 2000-01-04 | Electronic Data Systems Corporation | System and method for accounting of computer data storage utilization |
US5758050A (en) * | 1996-03-12 | 1998-05-26 | International Business Machines Corporation | Reconfigurable data storage system |
AU4495597A (en) | 1996-09-23 | 1998-04-14 | Lowrie Mcintosh | Defining a uniform subject classification system incorporating document management/records retention functions |
JPH10320205A (ja) * | 1997-05-20 | 1998-12-04 | Fujitsu Ltd | 情報処理装置 |
US6496791B1 (en) * | 1997-07-09 | 2002-12-17 | Neville Yates | Interfaces for an open systems server providing tape drive emulation |
US5983368A (en) * | 1997-08-26 | 1999-11-09 | International Business Machines Corporation | Method and system for facilitating hierarchical storage management (HSM) testing |
US6044442A (en) * | 1997-11-21 | 2000-03-28 | International Business Machines Corporation | External partitioning of an automated data storage library into multiple virtual libraries for access by a plurality of hosts |
US6120553A (en) * | 1997-12-18 | 2000-09-19 | Sidwell; Leland P. | System for modifying JCL statements to optimize data storage allocations |
US6131190A (en) * | 1997-12-18 | 2000-10-10 | Sidwell; Leland P. | System for modifying JCL parameters to optimize data storage allocations |
US6154787A (en) * | 1998-01-21 | 2000-11-28 | Unisys Corporation | Grouping shared resources into one or more pools and automatically re-assigning shared resources from where they are not currently needed to where they are needed |
NL1008642C2 (nl) * | 1998-03-19 | 1999-09-23 | Oce Tech Bv | Digitale kopieerinrichting met een persoonlijk gegevens-opslagsysteem. |
US6260113B1 (en) | 1998-11-12 | 2001-07-10 | International Business Machines Corporation | Method and apparatus defining a miss list and producing dial-in hit ratios in a disk storage benchmark |
US7035880B1 (en) | 1999-07-14 | 2006-04-25 | Commvault Systems, Inc. | Modular backup and retrieval system used in conjunction with a storage area network |
US7395282B1 (en) | 1999-07-15 | 2008-07-01 | Commvault Systems, Inc. | Hierarchical backup and retrieval system |
US7389311B1 (en) | 1999-07-15 | 2008-06-17 | Commvault Systems, Inc. | Modular backup and retrieval system |
US6910214B1 (en) | 1999-08-25 | 2005-06-21 | International Business Machines Corporation | Method, system, and program for converting an input parameter list into an output parameter list |
US6854034B1 (en) * | 1999-08-27 | 2005-02-08 | Hitachi, Ltd. | Computer system and a method of assigning a storage device to a computer |
JP2001195406A (ja) * | 2000-01-06 | 2001-07-19 | Media Fusion Co Ltd | データベース管理システム |
US7155481B2 (en) | 2000-01-31 | 2006-12-26 | Commvault Systems, Inc. | Email attachment management in a computer system |
US6542972B2 (en) | 2000-01-31 | 2003-04-01 | Commvault Systems, Inc. | Logical view and access to physical storage in modular data and storage management system |
US6658436B2 (en) | 2000-01-31 | 2003-12-02 | Commvault Systems, Inc. | Logical view and access to data managed by a modular data and storage management system |
US7003641B2 (en) | 2000-01-31 | 2006-02-21 | Commvault Systems, Inc. | Logical view with granular access to exchange data managed by a modular data and storage management system |
US6826711B2 (en) | 2000-02-18 | 2004-11-30 | Avamar Technologies, Inc. | System and method for data protection with multidimensional parity |
US7062648B2 (en) * | 2000-02-18 | 2006-06-13 | Avamar Technologies, Inc. | System and method for redundant array network storage |
US6704730B2 (en) | 2000-02-18 | 2004-03-09 | Avamar Technologies, Inc. | Hash file system and method for use in a commonality factoring system |
US7509420B2 (en) | 2000-02-18 | 2009-03-24 | Emc Corporation | System and method for intelligent, globally distributed network storage |
US7194504B2 (en) * | 2000-02-18 | 2007-03-20 | Avamar Technologies, Inc. | System and method for representing and maintaining redundant data sets utilizing DNA transmission and transcription techniques |
US7783695B1 (en) | 2000-04-19 | 2010-08-24 | Graphics Properties Holdings, Inc. | Method and system for distributed rendering |
US7092983B1 (en) | 2000-04-19 | 2006-08-15 | Silicon Graphics, Inc. | Method and system for secure remote distributed rendering |
US7062527B1 (en) * | 2000-04-19 | 2006-06-13 | Silicon Graphics, Inc. | Management and scheduling of a distributed rendering method and system |
US6571310B1 (en) | 2000-04-20 | 2003-05-27 | International Business Machines Corporation | Method and apparatus for managing a heterogeneous data storage system |
JP2003536195A (ja) * | 2000-06-09 | 2003-12-02 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 記憶メディアで利用可能なメモリ領域を暗黙に分割する方法 |
US6810398B2 (en) * | 2000-11-06 | 2004-10-26 | Avamar Technologies, Inc. | System and method for unorchestrated determination of data sequences using sticky byte factoring to determine breakpoints in digital sequences |
US20020112043A1 (en) * | 2001-02-13 | 2002-08-15 | Akira Kagami | Method and apparatus for storage on demand service |
GB2372598A (en) * | 2001-02-26 | 2002-08-28 | Coppereye Ltd | Organising data in a database |
US6839815B2 (en) | 2001-05-07 | 2005-01-04 | Hitachi, Ltd. | System and method for storage on demand service in a global SAN environment |
US20020188592A1 (en) * | 2001-06-11 | 2002-12-12 | Storage Technology Corporation | Outboard data storage management system and method |
JP4144727B2 (ja) * | 2001-07-02 | 2008-09-03 | 株式会社日立製作所 | 情報処理システム、記憶領域提供方法、およびデータ保持管理装置 |
US7200609B2 (en) * | 2001-07-19 | 2007-04-03 | Emc Corporation | Attribute based resource allocation |
US7136882B2 (en) * | 2001-07-31 | 2006-11-14 | Hewlett-Packard Development Company, L.P. | Storage device manager |
JP4176341B2 (ja) * | 2001-10-23 | 2008-11-05 | 株式会社日立製作所 | 記憶制御装置 |
US7281044B2 (en) * | 2002-01-10 | 2007-10-09 | Hitachi, Ltd. | SAN infrastructure on demand service system |
US6826653B2 (en) * | 2002-02-06 | 2004-11-30 | Hewlett-Packard Development Company, L.P. | Block data mover adapted to contain faults in a partitioned multiprocessor system |
US7243094B2 (en) * | 2002-05-31 | 2007-07-10 | Softek Storage Solutions Corporation | Method and system for intelligent storage management |
US7269612B2 (en) * | 2002-05-31 | 2007-09-11 | International Business Machines Corporation | Method, system, and program for a policy based storage manager |
US7418562B2 (en) * | 2002-08-29 | 2008-08-26 | International Business Machines Corporation | Apparatus and method to assign one or more storage construct names to a logical volume |
US7020755B2 (en) * | 2002-08-29 | 2006-03-28 | International Business Machines Corporation | Method and apparatus for read-only recovery in a dual copy storage system |
US7461166B2 (en) * | 2003-02-21 | 2008-12-02 | International Business Machines Corporation | Autonomic service routing using observed resource requirement for self-optimization |
US6988110B2 (en) * | 2003-04-23 | 2006-01-17 | International Business Machines Corporation | Storage system class distinction cues for run-time data management |
JP4343578B2 (ja) * | 2003-05-08 | 2009-10-14 | 株式会社日立製作所 | ストレージ運用管理システム |
US7814128B2 (en) | 2003-05-30 | 2010-10-12 | Symantec Operating Corporation | Multi-volume file support |
US7454569B2 (en) | 2003-06-25 | 2008-11-18 | Commvault Systems, Inc. | Hierarchical system and method for performing storage operations in a computer network |
WO2005008440A2 (en) * | 2003-07-11 | 2005-01-27 | Computer Associates Think, Inc. | System and method for common storage object model |
JP4418286B2 (ja) * | 2003-07-14 | 2010-02-17 | 富士通株式会社 | 分散型ストレージシステム |
US8321379B2 (en) * | 2003-08-26 | 2012-11-27 | International Business Machines Corporation | System method and apparatus for optimal performance scaling of storage media |
US20050086430A1 (en) * | 2003-10-17 | 2005-04-21 | International Business Machines Corporation | Method, system, and program for designating a storage group preference order |
WO2005050381A2 (en) | 2003-11-13 | 2005-06-02 | Commvault Systems, Inc. | Systems and methods for performing storage operations using network attached storage |
US7917711B2 (en) * | 2003-11-14 | 2011-03-29 | International Business Machines Corporation | System, apparatus, and method for automatic copy function selection |
US6994572B2 (en) * | 2003-11-26 | 2006-02-07 | International Business Machines Corporation | Apparatus, system, and method for component deactivated interlock |
JP4789420B2 (ja) * | 2004-03-04 | 2011-10-12 | トヨタ自動車株式会社 | 車両制御システムにおけるデータ処理装置 |
US20050246762A1 (en) * | 2004-04-29 | 2005-11-03 | International Business Machines Corporation | Changing access permission based on usage of a computer resource |
US20060036645A1 (en) * | 2004-08-10 | 2006-02-16 | International Business Machines Corporation | System and method for automated data storage management |
JP2006209237A (ja) * | 2005-01-25 | 2006-08-10 | Hitachi Ltd | 記憶システム及びその制御方法並びに仮想化装置 |
US20070083482A1 (en) * | 2005-10-08 | 2007-04-12 | Unmesh Rathi | Multiple quality of service file system |
US20070240126A1 (en) * | 2006-02-01 | 2007-10-11 | International Business Machines Corporation | System and method for event based resource selection |
JP5204099B2 (ja) | 2006-05-05 | 2013-06-05 | ハイバー インコーポレイテッド | グループ・ベースの完全および増分コンピュータ・ファイル・バックアップ・システム、処理および装置 |
JP4887955B2 (ja) * | 2006-07-21 | 2012-02-29 | 日本電気株式会社 | データ配置管理システム及び方法とプログラム |
JP4943081B2 (ja) * | 2006-07-27 | 2012-05-30 | 株式会社日立製作所 | ファイル格納制御装置及び方法 |
US9052826B2 (en) | 2006-07-28 | 2015-06-09 | Condusiv Technologies Corporation | Selecting storage locations for storing data based on storage location attributes and data usage statistics |
US7870128B2 (en) | 2006-07-28 | 2011-01-11 | Diskeeper Corporation | Assigning data for storage based on speed with which data may be retrieved |
US20090132621A1 (en) * | 2006-07-28 | 2009-05-21 | Craig Jensen | Selecting storage location for file storage based on storage longevity and speed |
US20080167127A1 (en) * | 2007-01-05 | 2008-07-10 | Microsoft Corporation | Integration of Media on Gaming Consoles |
US8083593B2 (en) | 2007-01-05 | 2011-12-27 | Microsoft Corporation | Recording media on gaming consoles |
US20080167128A1 (en) | 2007-01-05 | 2008-07-10 | Microsoft Corporation | Television Viewing on Gaming Consoles |
US7788297B2 (en) * | 2007-05-15 | 2010-08-31 | Microsoft Corporation | Interactive storage meter for a storage container |
US8738575B2 (en) * | 2007-09-17 | 2014-05-27 | International Business Machines Corporation | Data recovery in a hierarchical data storage system |
US7945587B2 (en) * | 2007-10-10 | 2011-05-17 | Microsoft Corporation | Random allocation of media storage units |
US8473466B1 (en) * | 2007-12-31 | 2013-06-25 | Teradata Us, Inc. | Systems and methods for storing data, such as storing data based on storage classes |
US7958084B2 (en) * | 2008-05-12 | 2011-06-07 | Teradata Us, Inc. | System, method, and computer-readable medium for providing a regionalized file system |
US8843459B1 (en) | 2010-03-09 | 2014-09-23 | Hitachi Data Systems Engineering UK Limited | Multi-tiered filesystem |
US8516466B2 (en) | 2010-06-30 | 2013-08-20 | International Business Machines Corporation | Optimization of automated system-managed storage operations |
US8966218B2 (en) | 2010-07-01 | 2015-02-24 | International Business Machines Corporation | On-access predictive data allocation and reallocation system and method |
US8949293B2 (en) * | 2010-12-17 | 2015-02-03 | Microsoft Corporation | Automatically matching data sets with storage components |
US9021198B1 (en) | 2011-01-20 | 2015-04-28 | Commvault Systems, Inc. | System and method for sharing SAN storage |
US9218206B2 (en) | 2011-06-20 | 2015-12-22 | Microsoft Technology Licensing, Llc | Memory management model and interface for new applications |
EP2724226A1 (de) | 2011-06-23 | 2014-04-30 | CohortFS, LLC | Dynamische datenpositionierung für verteilten speicher |
CN103092578A (zh) * | 2011-10-28 | 2013-05-08 | 浙江大华技术股份有限公司 | 嵌入式Linux平台下的显示方法 |
US8775728B2 (en) | 2012-01-03 | 2014-07-08 | International Business Machines Corporation | Extended address volume (EAV) allocation verification |
CN103581052B (zh) * | 2012-08-02 | 2017-07-21 | 华为技术有限公司 | 一种数据处理方法、路由器及ndn系统 |
US10108622B2 (en) | 2014-03-26 | 2018-10-23 | International Business Machines Corporation | Autonomic regulation of a volatile database table attribute |
JP6606355B2 (ja) * | 2015-05-29 | 2019-11-13 | キヤノン株式会社 | 情報処理装置、情報処理方法、及びプログラム |
CN106874144A (zh) * | 2016-12-30 | 2017-06-20 | 上海中信信息发展股份有限公司 | 基于电子档案属性的存储备份策略评价方法 |
US10552082B2 (en) * | 2018-04-03 | 2020-02-04 | International Business Machines Corporation | Optimized data replication in multi-tier storage environment |
US11775289B2 (en) | 2021-07-12 | 2023-10-03 | International Business Machines Corporation | Source code development interface for storage management |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1499184A (en) * | 1974-04-13 | 1978-01-25 | Mathematik & Datenverarbeitung | Circuit arrangement for monitoring the state of memory segments |
GB1548401A (en) * | 1975-10-08 | 1979-07-11 | Plessey Co Ltd | Data processing memory space allocation and deallocation arrangements |
US4310883A (en) * | 1978-02-13 | 1982-01-12 | International Business Machines Corporation | Method and apparatus for assigning data sets to virtual volumes in a mass store |
US4467421A (en) * | 1979-10-18 | 1984-08-21 | Storage Technology Corporation | Virtual storage system and method |
US4313161A (en) * | 1979-11-13 | 1982-01-26 | International Business Machines Corporation | Shared storage for multiple processor systems |
US4463424A (en) * | 1981-02-19 | 1984-07-31 | International Business Machines Corporation | Method for dynamically allocating LRU/MRU managed memory among concurrent sequential processes |
US4429363A (en) * | 1981-10-15 | 1984-01-31 | International Business Machines Corporation | Method and apparatus for managing data movements from a backing store to a caching buffer store |
US4466059A (en) * | 1981-10-15 | 1984-08-14 | International Business Machines Corporation | Method and apparatus for limiting data occupancy in a cache |
JPS5917654A (ja) * | 1982-07-22 | 1984-01-28 | Hitachi Ltd | 磁気テ−プ装置の割当て方式 |
US4638425A (en) * | 1982-09-29 | 1987-01-20 | International Business Machines Corporation | Peripheral data storage having access controls with error recovery |
US4574346A (en) * | 1982-09-29 | 1986-03-04 | International Business Machines Corporation | Method and apparatus for peripheral data handling hierarchies |
JPS603056A (ja) * | 1983-06-21 | 1985-01-09 | Toshiba Corp | 情報整理装置 |
US4638424A (en) * | 1984-01-12 | 1987-01-20 | International Business Machines Corporation | Managing data storage devices connected to a digital computer |
US4660130A (en) * | 1984-07-24 | 1987-04-21 | Texas Instruments Incorporated | Method for managing virtual memory to separate active and stable memory blocks |
JPS6140643A (ja) * | 1984-07-31 | 1986-02-26 | Hitachi Ltd | システムの資源割当て制御方式 |
US4805093A (en) * | 1986-10-14 | 1989-02-14 | Ward Calvin B | Content addressable memory |
-
1989
- 1989-01-26 US US07/301,970 patent/US5018060A/en not_active Expired - Lifetime
-
1990
- 1990-01-25 EP EP90850034A patent/EP0381651B1/de not_active Expired - Lifetime
- 1990-01-25 DE DE69029210T patent/DE69029210T2/de not_active Expired - Lifetime
- 1990-01-26 JP JP2015137A patent/JPH0754478B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE69029210D1 (de) | 1997-01-09 |
JPH0754478B2 (ja) | 1995-06-07 |
US5018060A (en) | 1991-05-21 |
EP0381651A2 (de) | 1990-08-08 |
JPH02239344A (ja) | 1990-09-21 |
EP0381651B1 (de) | 1996-11-27 |
EP0381651A3 (de) | 1992-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69029210T2 (de) | Verwaltungsverfahren und Vorrichtung zur Datenspeicherung | |
DE10393595B4 (de) | Verfahren und Vorrichtung zum Liefern von Speicherressourcen | |
DE4218025C2 (de) | Vorrichtung und Verfahren zur automatischen Zuordnung von Datenspeichereinrichtungen in einem Computersystem | |
DE69031862T2 (de) | Verfahren zum Lastausgleich für Kanälen und Verwendung desselben in einem Datenverarbeitungssystem | |
DE69023499T2 (de) | Rechner mit erweitertem virtuellem Speicher. | |
DE3587398T2 (de) | Datenspeicherhierarchie und deren Betriebsverfahren. | |
DE102013215535B4 (de) | Sicherung oder wiederherstellung von daten mit hilfe eines hauptspeichers und nichtflüchtiger speichermedien | |
DE3781577T2 (de) | Verwaltung der groesse und der anzahl der den prozessen zugeordneten speichersegmente in einer konfiguration fuer mehrfachverarbeitung. | |
DE69636192T2 (de) | Datenmigrationssystem und -verfahren unter verwendung von undichten dateien | |
EP0682318B1 (de) | Datenverwaltungssystem | |
DE3780807T2 (de) | Verfahren zum schnellen oeffnen von mit pfadnamen identifizierten plattendateien. | |
DE60313783T2 (de) | Bewegen von daten zwischen speichereinheiten | |
DE69531513T2 (de) | Vervielfältigungssystem | |
DE69403192T2 (de) | Vorrichtung und verfahren zur datensicherung von speichereinheiten in einem rechnernetzwerk | |
DE3689664T2 (de) | Verfahren und Gerät zur Verwaltung von veralteten Datenobjekten. | |
DE3382808T2 (de) | Datenbankzugriffsverfahren mit einem benutzerfreundlichen Menü | |
DE69934894T2 (de) | Verfahren und vorrichtung zur wahlweisen einstellung des zugangs zu anwendungsmerkmalen | |
DE602005004166T2 (de) | Vorrichtung, system und verfahren zur reinitialisierung einer serialisierung von dateisystemen | |
DE10226909A1 (de) | System und Verfahren zur vorgeschriebenen Zugriffssteuerung auf ein Dateisystem | |
DE60306663T2 (de) | Verfahren, Vorrichtungen und Programme zur Regelung des Zugriffs auf Datenobjekte unter Verwendung von Sperren | |
DE60035432T2 (de) | System zur verwaltung der rdbm fragmentierungen | |
DE3688191T2 (de) | Editor für virtuelle Maschinen. | |
DE69818135T2 (de) | Verfahren zum Zugriff auf Datenbankinformation | |
DE112013006646B4 (de) | Computer, System und computerlesbares Ablagemedium zum Identifizieren von Arbeitslast und Dimensionierung von Puffern zum Zweck der Volumenreplikation | |
DE102021108572A1 (de) | Containerisierte anwendungsmanifeste und virtuelle persistente volumes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) |