IP Library Granted Patent US 9,424,296
Granted Patent B2
US 9,424,296 · App. 13/929,424 · Granted Aug 23, 2016

Indexing of database queries

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,424,296
App. No.
13/929,424
Granted
Aug 23, 2016
Kind
B2
Abstract

Making data available from a database is disclosed. Making data available includes specifying a query function having a query function name, wherein the query function includes a structure and a member, determining the structure and the member included in the query function, wherein the query function has a query function name and includes the structure and the member, creating an index for the structure on the member, and compiling the query function to be available to a user by invoking the query function name without the user having to specify the structure and the member. Retrieving data from a database is disclosed. Retrieving includes invoking a query function that specifies a plurality of structures and a value, accessing a cross index of the plurality of structures, and using the cross index to access the data.

Claims (34)

1. A method of retrieving data from a DNS database, including:

invoking a query function for querying the DNS database using a processor, wherein the query function specifies a plurality of structures and a value; and wherein the DNS database includes a first structure and a second structure;

accessing a cross index of the plurality of structures, wherein a first member of the first structure is concatenated with a second member of the second structure to form a third member of the cross index; and wherein the cross index indexes a structure on a member that corresponds to the value;

using the cross index to access the data; and

automatically updating the cross index each time a write operation is performed that affects the cross index.

2. A method as recited in claim 1 , wherein the query function is specified in a cross index structure.

3. A method as recited in claim 1 , wherein the member includes a key of a structure, wherein the key uniquely identifies an object.

4. A method as recited in claim 1 , wherein the cross index includes a list of objects.

5. A method as recited in claim 1 , wherein the cross index includes a plurality of lists corresponding to each of the possible values of the member.

6. A method as recited in claim 1 , wherein the cross index includes a list of keys wherein each key uniquely identifies an object.

7. A method as recited in claim 1 , wherein the query function is specified in a markup language.

8. A method as recited in claim 1 , wherein the structure and the member are specified in a markup language.

9. A system for making data available from a DNS database, including:

a processor configured to:

invoke a query function for querying the DNS database, wherein the query function specifies a plurality of structures and a value; and wherein the DNS database includes a first structure and a second structure;

access a cross index of the plurality of structures, wherein a first member of the first structure is concatenated with a second member of the second structure to form a third member of the cross index; and wherein the cross index indexes a structure on a member that corresponds to the value;

use the cross index to access the data; and

automatically update the cross index each time a write operation is performed that affects the cross index; and

a memory coupled with the processor, wherein the memory provides the processor with instructions.

10. A system as recited in claim 9 , wherein the cross index includes a list of objects.

11. A system as recited in claim 9 , wherein the cross index includes a plurality of lists corresponding to each of the possible values of the virtual member.

12. A system as recited in claim 9 , wherein the cross index includes a list of keys wherein each key uniquely identifies an object.

13. A system as recited in claim 9 , wherein the query function is specified in a markup language, and wherein the structure and the member are specified in a markup language.

14. A computer program product for retrieving data from a DNS database, the computer program product being embodied in a tangible non-transitory computer readable medium and comprising computer instructions for:

invoking a query function for querying the DNS database, wherein the query function specifies a plurality of structures and a value; and wherein the DNS database includes a first structure and a second structure;

accessing a cross index of the plurality of structures, wherein a first member of the first structure is concatenated with a second member of the second structure to form a third member of the cross index; and wherein the cross index indexes a structure on a member that corresponds to the value;

using the cross index to access the data; and

automatically updating the cross index each time a write operation is performed that affects the cross index.

15. A computer program product as recited in claim 14 , wherein the query function is specified in a cross index structure.

16. A computer program product as recited in claim 14 , wherein the member includes a key of a structure, wherein the key uniquely identifies an object.

17. A computer program product as recited in claim 14 , wherein the cross index includes a list of objects.

18. A computer program product as recited in claim 14 , wherein the cross index includes a plurality of lists corresponding to each of the possible values of the member.

19. A computer program product as recited in claim 14 , wherein the cross index includes a list of keys wherein each key uniquely identifies an object.

20. A computer program product as recited in claim 14 , wherein the query function is specified in a markup language, and wherein the structure and the member are specified in a markup language.

Assignments (6)
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS (RELEASES RF 040575/0549) Recorded Dec 3, 2020
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: INFOBLOX INC.
Reel/Frame 054585/0914 →
FIRST LIEN SECURITY AGREEMENT Recorded Dec 2, 2020
From: INFOBLOX INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054615/0317 →
SECOND LIEN SECURITY AGREEMENT Recorded Dec 2, 2020
From: INFOBLOX INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054615/0331 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS (RELEASES RF 040579/0302) Recorded Oct 23, 2019
From: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
To: INFOBLOX, INC.
Reel/Frame 050809/0980 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Nov 8, 2016
From: INFOBLOX INC.
To: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
Reel/Frame 040579/0302 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Nov 7, 2016
From: INFOBLOX INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 040575/0549 →