IP Library Granted Patent US 8,087,021
Granted Patent B1
US 8,087,021 · App. 11/289,218 · Granted Dec 27, 2011

Automated activity processing

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,087,021
App. No.
11/289,218
Granted
Dec 27, 2011
Kind
B1
Abstract

A virtual data storage system includes a device emulator and a storage system. The virtual data storage system requires the performance of activities on a scheduled basis. An activity scheduler manages a set of pending, running, and completed activities. The activity scheduler provides scheduler services for use by external processes. A scheduler process examines a list of to-be-run activities. For each activity that has reached its scheduled time, that activity is considered for starting. An activity monitor process monitors started activities. Upon determining a problem with an activity, a recovery process is performed. The recovery process includes returning the problem activity to the list of to-be-run activities.

Claims (22)

1. A virtual data storage system for connecting a client system to a plurality of physical storage devices, the virtual data storage system including a device emulator for receiving commands and data from the client system, the virtual data storage system including a storage system for storing the data to the plurality of physical storage devices, the virtual data storage system performing activities on a scheduled basis, the virtual data storage system further comprising a plurality of resources and a non-transitory medium storing instructions for:

an activity scheduler for managing a set of activities including pending, running, and completed activities, the activity scheduler providing scheduler services for use by external processes,

the activity scheduler including a scheduler process for examining a list of pending activities, and for each activity that has reached its scheduled time, considering that activity for starting based on resource availability, and

the activity scheduler further including an activity monitor process for monitoring running activities, and upon determining a problem with a running activity, performing a recovery process including returning the running activity with the problem to the list of pending activities,

wherein the activity scheduler defines an activity interface including a set of methods to be implemented by an activity, whereby applications that use the scheduler services implement the activity interface.

2. A virtual data storage system for connecting a client system to a plurality of physical storage devices, the virtual data storage system including a device emulator for receiving commands and data from the client system, the virtual data storage system including a storage system for storing the data to the plurality of physical storage devices, the virtual data storage system performing activities on a scheduled basis, the virtual data storage system further comprising a plurality of resources and a non-transitory medium storing instructions for:

an activity scheduler for managing a set of activities including pending, running, and completed activities, the activity scheduler providing scheduler services for use by external processes,

the activity scheduler including a scheduler process for examining a list of pending activities, and for each activity that has reached its scheduled time, considering that activity for starting based on resource availability, and

the activity scheduler further including an activity monitor process for monitoring running activities, and upon determining a problem with a running activity, performing a recovery process including returning the running activity with the problem to the list of pending activities;

wherein the activity scheduler defines an activity interface including a set of methods to be implemented by an activity; and

wherein the storage system of the virtual data storage system is configured to implement a plurality of storage management policies by utilizing applications that implement the activity interface.

3. The virtual data storage system of claim 2 wherein the scheduler services are implemented such that activities can be scheduled to start immediately or at a specified time in the future.

4. The virtual data storage system of claim 2 wherein the scheduler services are implemented such that activities can be sequenced through the use of dependencies between activities such that a successor activity can only run when predecessor activities have completed successfully.

5. The virtual data storage system of claim 2 wherein the virtual data storage system is a multi-node system and wherein considering resource availability includes determining which node to run the activity on.

6. For use in a virtual data storage system for connecting a client system to a plurality of physical storage devices, the virtual data storage system including a device emulator for receiving commands and data from the client system, the virtual data storage system including a storage system for storing the data to the plurality of physical storage devices, the virtual data storage system performing activities on a scheduled basis, the virtual data storage system including a plurality of resources and an activity scheduler, an activity scheduler method comprising:

providing, with the activity scheduler, scheduler services for use by external processes that are external to the virtual data storage system;

examining, with the activity scheduler, a list of pending activities, and for each activity that has reached its scheduled time, considering that activity for starting based on resource availability; and

monitoring running activities, with the activity scheduler, and upon determining a problem with a running activity, performing a recovery process including returning the running activity with the problem to the list of pending activities,

wherein the activity scheduler defines an activity interface including a set of methods to be implemented by an activity, whereby applications that use the scheduler services implement the activity interface.

7. The method of claim 6 further comprising: managing the plurality of storage devices in accordance with a plurality of storage management policies by utilizing the applications that implement the activity interface.

8. The method of claim 7 wherein the plurality of storage management policies includes at least one retention policy.

9. The method of claim 8 wherein the plurality of storage management policies includes at least one replication policy.

Assignments (3)
MERGER Recorded Feb 4, 2016
From: STORAGE TECHNOLOGY CORPORATION
To: SUN MICROSYSTEMS, INC.
Reel/Frame 037694/0884 →
MERGER AND CHANGE OF NAME Recorded Feb 4, 2016
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037694/0935 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2005
From: HOLDMAN, JON MARK; OULD, JOHN GEORGE; KODALI, SARATH KUMAR
To: STORAGE TECHNOLOGY CORPORATION
Reel/Frame 017291/0723 →