IP Library Granted Patent US 9,626,434
Granted Patent B2
US 9,626,434 · App. 13/591,684 · Granted Apr 18, 2017

Systems and methods for generating and using aggregated search indices and non-aggregated value storage

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,626,434
App. No.
13/591,684
Granted
Apr 18, 2017
Kind
B2
Abstract

Systems, methods and computer program products for using searchable aggregate indices associated with non-aggregated value storage. In one method, a search system stores metadata values for each of a plurality of objects in a storage unit. The metadata values are stored in corresponding value storage locations that are associated with an identifiable metadata fields. An aggregate index is provided which includes a dictionary of terms that are contained in metadata values associated with a designated set of the metadata fields. The aggregate index is searched for one or more specific search terms, and one or more of the metadata values are retrieved from the value storage locations in response to the search, where the individual metadata fields associated with the retrieved metadata values are identified.

Claims (55)

1. A method for computerized searches, the method comprising:

at a search system embodied on non-transitory computer memory, the search system comprising a server having a processor and a data storage unit containing an index, the search system communicatively connected to a repository storing a plurality of content objects, the index having multiple metadata indices for metadata fields, each metadata field of the metadata fields having a unique identity and a corresponding metadata value storage location in the data storage unit:

the search system storing metadata values for each of the plurality of content objects in corresponding metadata value storage locations of the metadata fields in the data storage unit,

wherein the index in the data storage unit of the search system further comprises multiple aggregate metadata indices in addition to the multiple metadata indices,

wherein each aggregate metadata index of the multiple aggregate metadata indices includes a dictionary and a single defined metadata field, the single defined metadata field associated with a designated set of metadata fields including at least two of the metadata fields from the multiple metadata indices, each of the at least two of the metadata fields retaining the unique identity and the corresponding metadata value storage location in the data storage unit, the at least two of the metadata fields being logically related or associated to one another,

wherein the dictionary contains and identifies terms contained in particular metadata values associated with the at least two of the metadata fields from the multiple metadata indices, the aggregate metadata index further containing, for each term of the terms, one or more pointers identifying content objects which have metadata fields containing the particular metadata values;

the search system receiving a search query containing a specific search term over a network via a search interface operating on a client computer having the defined metadata field of the aggregate metadata index;

the search system searching the dictionary of the aggregate metadata index for a term that matches the specific search, the term pointing, via associated one or more pointers, to one or more content objects which have one or more metadata values that contain the specific search term;

the search system retrieving, from corresponding metadata value storage locations, the one or more metadata values associated with the one or more content objects and containing the specific search term; and

the search system returning to the client computer over the network via the search interface at least a metadata value of the one or more metadata values associated with the one or more content objects.

2. The method of claim 1 , wherein the search system further provides one or more metadata-specific indices, wherein each of the one or more metadata-specific indices includes a dictionary of terms that are contained in metadata values of corresponding metadata fields.

3. The method of claim 1 , wherein retrieving the one or more metadata values from the corresponding metadata value storage locations comprises retrieving all metadata values for each one of the plurality of content objects which have metadata values that contain the specific search term.

4. The method of claim 1 , wherein retrieving the one or more metadata values from the corresponding metadata value storage locations comprises retrieving metadata values associated with specified ones of the metadata fields for each one of the plurality of content objects which have metadata values that contain the specific search term.

5. The method of claim 1 , further comprising generating an aggregate metadata index.

6. The method of claim 5 , wherein generating the aggregate metadata index comprises:

analyzing the plurality of content objects;

identifying search terms in the plurality of content objects; and

generating the dictionary for the aggregate metadata index, wherein the dictionary contains ones of the identified search terms that are associated with the designated set of metadata fields, wherein for each of the identified search terms, the dictionary indicates which ones of the plurality of content objects contain the identified search term.

7. The method of claim 6 , wherein for each of the identified search terms, the dictionary indicates which of the metadata value storage locations contains the identified search term.

8. A computer program product comprising a non-transitory computer readable medium having a set of instructions stored thereon, the instructions, which when executed by a computer system, perform:

storing metadata values for each of a plurality of content objects in corresponding metadata value storage locations in a data storage unit containing an index, the plurality of content objects stored in a repository accessible by the computer system, the index having multiple metadata indices for metadata fields, each metadata field of the metadata fields having a unique identity and a corresponding metadata value storage location in the data storage unit,

wherein the index in the data storage unit further comprises multiple aggregate metadata indices in addition to the multiple metadata indices,

wherein each aggregate metadata index of the multiple aggregate metadata indices includes a dictionary and a single defined metadata field, the single defined metadata field associated with a designated set of metadata fields including at least two of the metadata fields from the multiple metadata indices, each of the at least two of the metadata fields retaining the unique identity and the corresponding metadata value storage location in the data storage unit, the at least two of the metadata fields being logically related or associated to one another,

wherein the dictionary contains and identifies terms contained in particular metadata values associated with the at least two of the metadata fields from the multiple metadata indices, the aggregate metadata index further containing, for each term, one or more pointers identifying content objects which have metadata fields containing the particular metadata values;

receiving a search query containing a specific search term over a network via a search interface operating on a client computer having the defined metadata field of the aggregate metadata index;

searching the dictionary of the aggregate metadata index for a term that matches the specific search term, the term pointing, via associated one or more pointers, to one or more content objects which have one or more metadata values that contain the specific search term;

retrieving, from corresponding metadata value storage locations, the one or more metadata values associated with the one or more content objects and containing the specific search term; and

returning to the client computer over the network via the search interface at least a metadata value of the one or more metadata values associated with the one or more content objects.

9. The computer program product of claim 8 , wherein the instructions, which when executed by the computer system, further perform providing one or more metadata-specific indices, wherein each of the one or more metadata-specific indices includes a dictionary of terms that are contained in metadata values of corresponding metadata fields.

10. The computer program product of claim 8 , wherein the instructions, which when executed by the computer system, further perform retrieving all metadata values for each one of the plurality of content objects which have metadata values that contain the specific search term.

11. The computer program product of claim 8 , wherein the instructions, which when executed by the computer system, further perform retrieving metadata values associated with specified ones of the metadata fields for each one of the plurality of content objects which have metadata values that contain the specific search term.

12. The computer program product of claim 8 , wherein the instructions, which when executed by the computer system, further perform generating an aggregate metadata index.

13. The computer program product of claim 12 , wherein the instructions, which when executed by the computer system further perform:

analyzing the plurality of content objects;

identifying search terms in the plurality of content objects; and

generating the dictionary for the aggregate metadata index, wherein the dictionary contains ones of the identified search terms that are associated with the designated set of the metadata fields, wherein for each of the identified search terms, the dictionary indicates which ones of the plurality of content objects contain the identified search term.

14. The computer program product of claim 13 , wherein for each of the identified search terms, the dictionary indicates which of the metadata value storage locations contains the identified search term.

15. A system for computerized searches comprising:

a computer search system including a central processing unit and a data storage unit containing an index, the computer search system communicatively connected to a repository storing a plurality of content objects, the index having multiple metadata indices for metadata fields, each metadata field of the metadata fields having a unique identity and a corresponding metadata value storage location in the data storage unit;

wherein the central processing unit stores metadata values for each of the plurality of content objects in corresponding metadata value storage locations of the metadata fields in the data storage unit,

wherein the index in the data storage unit of the search system further comprises multiple aggregate metadata indices in addition to the multiple metadata indices,

wherein each aggregate metadata index of the multiple aggregate metadata indices includes a dictionary and a single defined metadata field, the single defined metadata field associated with a designated set of metadata fields including at least two of the metadata fields from the multiple metadata indices, each of the at least two of the metadata fields retaining the unique identity and the corresponding metadata value storage location in the data storage unit, the at least two of the metadata fields being logically related or associated to one another,

wherein the dictionary contains and identifies terms contained in particular metadata values associated with the at least two of the metadata fields from the multiple indices, the aggregate metadata index further containing, for each term, one or more pointers identifying content objects which have metadata fields containing the particular metadata values;

wherein the search system receives a search query containing a specific search term over a network via a search interface operating on a client computer having the defined metadata field of the aggregate metadata index;

wherein the search system searches the dictionary of the aggregate metadata index for a term that matches the specific search term, the term pointing, via associated one or more pointers, to one or more content objects which have one or more metadata values that contain the specific search term;

wherein the search system retrieves, from corresponding metadata value storage locations, the one or more metadata values associated with the one or more content objects and containing the specific search term; and

wherein the search system returns to the client computer over the network via the search interface at least a metadata value of the one or more metadata values is associated with the one or more content objects.

16. The search system of claim 15 , wherein the search system provides one or more metadata-specific indices, wherein each of the one or more metadata-specific indices includes a dictionary of terms that are contained in metadata values of corresponding metadata fields.

17. The search system of claim 15 , wherein the search system retrieves the one or more metadata values from the corresponding metadata value storage locations by retrieving all metadata values for each one of the plurality of content objects which have metadata values that contain the specific search term.

18. The search system of claim 15 , wherein the search system retrieves the one or more metadata values from the corresponding metadata value storage locations by retrieving metadata values associated with specified ones of the metadata fields for each one of the plurality of content objects which have metadata values that contain the specific search term.

19. The search system of claim 15 , wherein the search system generates an aggregate metadata index.

20. The search system of claim 19 , wherein the search system generates the aggregate metadata index by:

analyzing the plurality of content objects;

identifying search terms in the plurality of content objects; and

generating the dictionary for the aggregate metadata index, wherein the dictionary contains ones of the identified search terms that are associated with the designated set of metadata fields, wherein for each of the identified search terms, the dictionary indicates which ones of the plurality of content objects contain the identified search term.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 063559/0628) Recorded Jun 21, 2024
From: BARCLAYS BANK PLC
To: OPEN TEXT SA ULC
Reel/Frame 067807/0053 →
SECURITY INTEREST Recorded Aug 30, 2023
From: OPEN TEXT SA ULC
To: THE BANK OF NEW YORK MELLON
Reel/Frame 064761/0256 →
SECURITY INTEREST Recorded May 7, 2023
From: OPEN TEXT SA ULC
To: BARCLAYS BANK PLC
Reel/Frame 063559/0758 →
SECURITY INTEREST Recorded May 7, 2023
From: OPEN TEXT SA ULC
To: BARCLAYS BANK PLC
Reel/Frame 063559/0628 →
SECURITY INTEREST Recorded May 7, 2023
From: OPEN TEXT SA ULC
To: BARCLAYS BANK PLC
Reel/Frame 063559/0647 →
IP BUSINESS SALE AGREEMENT Recorded Aug 30, 2016
From: OPEN TEXT S.A.
To: OT IP SUB, LLC
Reel/Frame 039872/0605 →
CERTIFICATE OF AMALGAMATION Recorded Aug 30, 2016
From: IP OT SUB ULC
To: OPEN TEXT SA ULC
Reel/Frame 039872/0662 →
CERTIFICATE OF CONTINUANCE Recorded Aug 30, 2016
From: OT IP SUB, LLC
To: IP OT SUB ULC
Reel/Frame 039986/0689 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2012
From: PIDDUCK, PATRICK THOMAS SIDNEY
To: OPEN TEXT S.A.
Reel/Frame 028827/0206 →