IP Library Granted Patent US 8,095,503
Granted Patent B2
US 8,095,503 · App. 10/372,346 · Granted Jan 10, 2012

Allowing client systems to interpret higher-revision data structures in storage systems

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,095,503
App. No.
10/372,346
Granted
Jan 10, 2012
Kind
B2
Abstract

A method for allowing client computers in a distributed object-based data storage system to interpret higher revision data structures. In one embodiment, clients request layout maps of objects to be accessed from respective storage managers in the system and then construct and execute directed acyclic graphs (DAG) to accomplish desired I/O operations for data access. When a client computer running an older software revision is not able to interpret a particular data organization supplied by the storage manager that was designed after that client's software was installed, the client sends to the storage manager a description of the desired data access operation. The storage manager, in turn, interprets a data layout scheme for a client on a per-access basis and returns to that client a DAG containing a data structure that describes the sequence of I/O operations necessary to effect the data access. The client can then execute the storage manager-supplied DAG to carry out the data access.

Claims (20)

1. A method of accessing data in an object-based data storage system including a first computer and a second computer, said method comprising:

said first computer obtaining a data access map from said second computer, wherein said data access map contains information to be interpreted by said first computer to perform said data access;

said first computer interpreting said data access map so as to determine a first set of operations needed to be performed by said first computer for accessing said data; and

said first computer performing said first set of operations and a second set of operations to access said data

wherein said first computer performing said second set of operations includes:

said first computer constructing a directed acyclic graph (DAG) after interpreting said information in said data access map, wherein said DAG identifies a sequence for said second set of operations needed to be performed by said first computer for accessing said data; and

said first computer executing said DAG to perform said second set of operations in said sequence.

2. The method of claim 1 , wherein said data access map includes a layout map describing how one or more objects to be accessed during said data access are stored in said data storage system, and wherein said layout map contains at least one of the following:

a first information about a storage layout scheme for said one or more objects;

a second information about which one or more of a plurality of storage disks in said data storage system are used to store said one or more objects; and

a third information about the number of disks from said plurality of storage disks that are used to store said one or more objects.

3. The method of claim 1 , wherein said first computer performing said first set of operations includes at least one of the following:

said first computer computing, using said data access map, one or more physical disk locations in one or more of a plurality of storage disks in said data storage system that need to be accessed for said data access; and

said first computer further computing one or more byte offsets for accessing said data in said one or more of said plurality of storage disks.

4. In an object-based data storage system including a plurality of client computers and a server computer, wherein each of said plurality of client computers is configured to perform a corresponding data access to a storage disk in said data storage system, a method of accessing data in said storage disk comprising:

each of said plurality of client computers constructing a corresponding directed acyclic graph (DAG), wherein each said corresponding DAG identifies a sequence for a respective first set of operations needed to be performed by corresponding client computer for said corresponding data access; and

each of said plurality of client computers executing said corresponding DAG to perform said respective first set of operations in said sequence for said corresponding data access.

5. The method of claim 4 , further comprising:

each of said plurality of client computers obtaining a respective data access map from said server computer, wherein each said respective data access map contains information to be interpreted by a corresponding client computer to determine a respective second set of operations needed to be performed by said client computer as part of said corresponding data access; and

each of said plurality of client computers performing said respective second set of operations.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Feb 27, 2017
From: SILICON VALLEY BANK
To: PANASAS, INC.
Reel/Frame 041841/0079 →
SECURITY INTEREST Recorded Jun 30, 2015
From: PANASAS, INC.
To: WHITE OAK GLOBAL ADVISORS, LLC
Reel/Frame 035958/0709 →
RELEASE OF SECURITY INTEREST Recorded Jun 10, 2014
From: ORIX VENTURES, LLC FORMERLY KNOWN AS ORIX VENTURE FINANCE LLC
To: PANASAS, INC.
Reel/Frame 033115/0470 →
RELEASE OF SECURITY INTEREST Recorded Jun 6, 2014
From: SILICON VALLEY BANK
To: PANASAS, INC.
Reel/Frame 033100/0602 →
SECURITY INTEREST Recorded May 29, 2014
From: PANASAS, INC.; PANASAS FEDERAL SYSTEMS, INC.
To: AVIDBANK
Reel/Frame 033062/0225 →
SECURITY INTEREST Recorded Jul 13, 2011
From: PANASAS, INC.
To: SILICON VALLEY BANK
Reel/Frame 026595/0049 →
SECURITY AGREEMENT Recorded Jul 2, 2007
From: PANASAS, INC.
To: ORIX VENTURE FINANCE, LLC
Reel/Frame 019501/0806 →