IP Library Granted Patent US 9,594,780
Granted Patent B1
US 9,594,780 · App. 13/930,036 · Granted Mar 14, 2017

Database system with user-directed application-side control of data movement among storage tiers

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 9,594,780
App. No.
13/930,036
Granted
Mar 14, 2017
Kind
B1
Abstract

A database system is provided with user-directed application-side storage tiering control functionality. A database node of a database system comprises a daemon to communicate with a plurality of storage devices on a plurality of storage tiers of the database system; the daemon further configured to implement storage tiering control functionality based on a user-specified data selection and tier imperative for at least first and second storage tiers comprising respective disjoint subsets of the plurality of storage tiers. An application executing on the database node provides the user-specified data selection and tier imperative to the daemon for processing in response to a predefined keyword. The daemon performs the storage tiering control functionality in response to a programmatic call comprising one or more predefined keywords, such as predefined base command verbs, tier imperative keywords and/or environmental qualifiers. A shunt robot optionally implements the storage tiering control functionality on the at least first and second storage tiers.

Claims (42)

1. A database node of a database system, comprising:

a daemon to communicate with a plurality of storage devices on a plurality of storage tiers of the database system;

the daemon further configured to implement storage tiering control functionality in response to a command-based user-specified dynamic data selection of at least one database object subset and a tier imperative for at least first and second storage tiers comprising respective disjoint subsets of the plurality of storage tiers, wherein said command-based user-specified dynamic data selection comprises one or more verb phrases to dynamically generate said at least one database object subset from data in an active memory of said database node, wherein said daemon executes in said active memory;

the daemon thereby being configured to dynamically control movement of said at least one dynamically generated database object subset between the at least first and second storage tiers in response to said command-based user-specified dynamic data selection and tier imperative;

the daemon being implemented utilizing at least one processing device coupled to a memory.

2. The database node of claim 1 , wherein an application executing on said database node provides said user-specified data selection and tier imperative to the daemon for processing in response to a predefined keyword.

3. The database node of claim 1 , wherein said daemon performs said storage tiering control functionality in response to a programmatic call comprising one or more predefined keywords.

4. The database node of claim 3 , wherein said one or more predefined keywords comprise one or more predefined base command verbs to define said user-specified data selection.

5. The database node of claim 3 , wherein said one or more predefined keywords comprise one or more tier imperative keywords to define said tier imperative.

6. The database node of claim 3 , wherein said one or more predefined keywords comprise one or more environmental qualifiers to define an environment of said database system.

7. The database node of claim 1 , wherein the daemon is further configured to communicate with one or more clients over a network and to process requests from said clients.

8. The database node of claim 1 , wherein the daemon further comprises a shunt robot to implement said storage tiering control functionality on said at least first and second storage tiers.

9. The database node of claim 8 , wherein at least a portion of the shunt robot is implemented using data migration software at least a portion of which is stored in said memory and executed by said at least one processing device.

10. The database node of claim 9 , wherein the shunt robot spawns one or more storage realignment activity threads.

11. The database node of claim 10 , wherein a number of said storage realignment activity threads is determined based on an assessment of one or more of resources in said database system and a complexity of a re-tiering task.

12. The database node of claim 1 , wherein the daemon further comprises a lexical parser to perform lexical parsing in context using one or more predefined keywords.

13. The database node of claim 1 , wherein the daemon further comprises a control scrubber to evaluate one or more of a syntax validity and security.

14. The database node of claim 1 , wherein the daemon further comprises a storage option scrubber to evaluate one or more of a profile and risks of one or more of the database host and storage resources.

15. The database node of claim 1 , wherein said user-specified tier imperative allows said user to selectively promote and demote said selected at least one database object subset.

16. A processing platform comprising the database node of claim 1 .

17. A method comprising:

configuring a daemon on a database node to communicate with a plurality of storage devices on a plurality of storage tiers of a database system; and

further configuring the daemon to implement storage tiering control functionality in response to a command-based user-specified dynamic data selection of at least one database object subset and a tier imperative for at least first and second storage tiers comprising respective disjoint subsets of the plurality of storage tiers based on said user-specified data selection and tier imperative, wherein said command-based user-specified dynamic data selection comprises one or more verb phrases to dynamically generate said at least one database object subset from data in an active memory of said database node, wherein said daemon executes in said active memory;

the daemon thereby being configured to dynamically control movement of said at least one dynamically generated database object subset between the at least first and second storage tiers in response to said command-based user-specified dynamic data selection and tier imperative.

18. The method of claim 17 , wherein an application executing on said database node provides said user-specified data selection and tier imperative to the daemon for processing in response to a predefined keyword.

19. The method of claim 17 , further comprising the step of configuring the daemon to perform said storage tiering control functionality in response to a programmatic call comprising one or more predefined keywords.

20. The method of claim 19 , wherein said one or more predefined keywords comprise one or more of predefined base command verbs to define said user-specified data selection, tier imperative keywords to define said tier imperative and environmental qualifiers to define an environment of said database system.

21. The method of claim 17 , wherein the daemon further comprises a shunt robot to implement said storage tiering control functionality on said at least first and second storage tiers.

22. The method of claim 21 , further comprising the step of configuring the shunt robot to spawn one or more storage realignment activity threads.

23. The method of claim 17 , wherein said user-specified tier imperative allows said user to selectively promote and demote said selected at least one database object subset.

24. A computer program product comprising a non-transitory machine-readable storage medium having encoded therein executable code of one or more software programs, wherein the one or more software programs when executed cause the daemon to perform the steps of the method of claim 17 .

25. A database system comprising:

a database node;

a plurality of storage tiers having at least first and second storage tiers comprising respective disjoint subsets of the plurality of storage tiers; and

a daemon on said database node to communicate with a plurality of storage devices on said plurality of storage tiers;

the daemon further configured to implement storage tiering control functionality in response to a command-based user-specified dynamic data selection of at least one database object subset and a tier imperative for said at least first and second storage tiers, wherein said command-based user-specified dynamic data selection comprises one or more verb phrases to dynamically generate said at least one database object subset from data in an active memory of said database node, wherein said daemon executes in said active memory; and

the daemon thereby being configured to dynamically control movement of said at least one dynamically generated database object subset between the at least first and second storage tiers in response to said command-based user-specified dynamic data selection and tier imperative.

26. The database system of claim 25 , wherein an application executing on said database system provides said user-specified data selection and tier imperative to the daemon for processing in response to a predefined keyword.

27. The database system of claim 25 , wherein said daemon performs said storage tiering control functionality in response to a programmatic call comprising one or more predefined keywords.

28. The database system of claim 27 , wherein said one or more predefined keywords comprise one or more of predefined base command verbs to define said user-specified data selection, tier imperative keywords to define said tier imperative and environmental qualifiers to define an environment of said database system.

29. The database system of claim 25 , wherein the daemon further comprises a shunt robot to implement said storage tiering control functionality on said at least first and second storage tiers.

30. The database system of claim 29 , wherein the shunt robot spawns one or more storage realignment activity threads.

Assignments (7)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (042769/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2013
From: ESPOSITO, JEFFREY D.; MCCLURE, ANNE
To: EMC CORPORATION
Reel/Frame 031141/0517 →