IP Library Granted Patent US 8,959,060
Granted Patent B2
US 8,959,060 · App. 14/068,199 · Granted Feb 17, 2015

Global indexing within an enterprise object store file system

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,959,060
App. No.
14/068,199
Granted
Feb 17, 2015
Kind
B2
Abstract

A file system is disclosed that includes an application wide name space instantiated in a global index (Gindex) that is used for accessing objects related to an application. Using the Gindex, a method for cache coherency includes establishing one or more appliances, each defining a storage cluster; establishing one or more tenants spanning across appliances, wherein an application stores objects in file systems associated with the appliances and tenants; establishing a Gindex including metadata relating to objects stored in association with the application; replicating the Gindex to plurality of data centers supporting the tenants; storing an original object at a first data center; storing a cached copy of the object at a second data center; aligning the cached copy using metadata for the object from a local copy of the Gindex.

Claims (52)

1. A method comprising:

establishing a tenant wide name space to access objects of an application stored in one or more physical file systems across one or more appliances, each appliance defining a storage cluster in association with a tenant logically spanning across the one or more appliances;

establishing a global index (Gindex) including metadata relating to objects stored in association with the application under the tenant, wherein metadata for each object includes a last modification time indicator, and wherein each object is associated with a unique object identifier;

accessing objects stored in the one or more physical file systems associated with the tenant by corresponding object identifiers through the Gindex;

receiving a rollback date/time; and

restricting access to the objects stored in the one or more physical file systems associated with the tenant, such that access is provided to objects associated with a last modification time indicator that is older than the rollback date/time.

2. The method of claim 1 , further comprising providing permissioned access to objects associated with a last modification time indicator newer than the rollback date/time.

3. The method of claim 1 , further comprising:

storing new objects and new versions of existing objects having a last modification time indicator past the rollback date/time in the one or more physical file systems associated with the tenant; and

providing permissioned access to the new objects or new versions of existing objects.

4. The method of claim 3 , further comprising:

storing a system defined new version of an existing object;

defining an expiration period for an old version of the existing object, wherein each of the new version and the old version is associated with a last modification time indicator; and

deleting the old version after the expiration period.

5. The method of claim 1 , further comprising restricting access to the objects stored in the one or more physical file systems associated with a bucket set of the tenant.

6. The method of claim 5 , wherein the one or more physical file systems are indexed by the bucket set of the tenant.

7. The method of claim 2 , wherein accessing objects stored in the one or more physical file systems associated with the tenant comprises asserting a search API that discovers metadata in the Gindex corresponding to an object stored in the one or more physical file systems.

8. The method of claim 7 , wherein providing permissioned access comprises asserting an alternative search API and wherein the alternative search API and the search API are not the same API.

9. The method of claim 2 , wherein providing permissioned access to objects associated with a last modification time indicator newer than the rollback date/time further comprises accessing and fixing corrupt objects associated with a last modification time indicator newer than the rollback date/time.

10. The method of claim 9 , further comprising providing unrestricted access to objects associated with a last modification time indicator newer than the rollback date/time, wherein unrestricted access is limited to objects that have been accessed and fixed.

11. A system for accessing a file system, comprising:

one or more processors communicatively coupled to a file system, wherein the one or more processors are configured to:

establish a tenant wide name space used for accessing objects of an application stored in one or more physical file systems across one or more appliances, each appliance defining a storage cluster in association with a tenant logically spanning across the one or more appliances;

establish a global index (Gindex) including metadata relating to objects stored in association with the application under the tenant, wherein metadata for each object includes a last modification time indicator, and wherein each object is associated with a unique object identifier;

access objects stored in the one or more physical file systems associated with the tenant by corresponding object identifiers through the Gindex;

receive a rollback date/time; and

restrict access to the objects stored in the one or more physical file systems associated with the tenant, such that access is provided to objects associated with a last modification time indicator that is older than the rollback date/time.

12. The system of claim 11 , wherein the one or more processors are further operable to provide permissioned access to objects associated with a last modification time indicator newer than the rollback date/time.

13. The system of claim 11 , wherein the one or more processors are further operable to:

store new objects and new versions of existing objects having a last modification time indicator past the rollback date/time in the one or more physical file systems associated with the tenant; and

provide permissioned access to the new objects or new versions to existing objects.

14. The system of claim 13 , wherein the one or more processors are further operable to:

store a system defined new version of an existing object;

define an expiration period for an old version of the existing object, wherein each of the new version and the old version is associated with a last modification time indicator; and

delete the old version after the expiration period.

15. The system of claim 11 , wherein the one or more processors are further operable to restrict access to the objects stored in the one or more physical file systems associated with a bucket set of the tenant.

16. A non-transitory computer-readable storage medium comprising:

instructions executable by one or more processors to cause the one or more processors to:

establish a tenant wide name space used for accessing objects of an application stored in one or more physical file systems across one or more appliances, each appliance defining a storage cluster, in association with a tenant logically spanning across said the one or more appliances;

establish a global index (Gindex) including metadata relating to objects stored in association with the application under the tenant, wherein metadata for each object includes a last modification time indicator, and wherein each object is associated with a unique object identifier;

access objects stored in the one or more physical file systems associated with the tenant by corresponding object identifiers through the Gindex;

receive a rollback date/time; and

restrict access to the objects stored in the one or more physical file systems associated with the tenant, such that access is provided to objects associated with a last modification time indicator that is older than the rollback date/time.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the instructions further cause the one or more processors to provide permissioned access to objects associated with a last modification time indicator newer than the rollback date/time.

18. The non-transitory computer-readable storage medium of claim 16 , wherein the instructions further cause the one or more processors to:

store new objects and new versions of existing objects having a last modification time indicator past the rollback date/time in the one or more physical file systems associated with the tenant; and

provide permissioned access to the new objects or new versions to existing objects.

19. The non-transitory computer-readable storage medium of claim 18 , wherein the instructions further cause the one or more processors to:

store a system defined new version of an existing object;

define an expiration period for an old version of the existing object, wherein each of the new version and the old version is associated with a last modification time indicator; and

delete the old version after the expiration period.

20. The non-transitory computer-readable storage medium of claim 16 , wherein the instructions further cause the one or more processors to restrict access to the objects stored in the one or more physical file systems associated with a bucket set of the tenant.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →