IP Library Granted Patent US 8,527,497
Granted Patent B2
US 8,527,497 · App. 13/228,312 · Granted Sep 3, 2013

Composite term index for graph data

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,527,497
App. No.
13/228,312
Granted
Sep 3, 2013
Kind
B2
Abstract

An indexing system for graph data. In particular implementations, the indexing system provides for denormalization and replica index functionality to improve query performance.

Claims (52)

1. An apparatus comprising:

an index stored in one or more memory devices, the index comprising:

a plurality of index entries that each comprise a term and a document identifier, at least one of the index entries comprising:

a document identifier corresponding to a data object of a plurality of data objects; and

a composite term comprising two or more data-object attributes; and one or more index servers operative to:

access a query comprising one or more attribute values;

search the index against the attribute values to identify one or more data objects that match the query; and

return one or more object identifiers corresponding to one or more identified data objects that match the query; and

a term producer operative to:

access a data object comprising a plurality of data-object attributes;

parse the data object to create one or more index entries for the data object; and

output a set of document-identifier term pairs, each pair comprising a type based on the corresponding object types of the data objects, wherein at least one of the terms is a composite term, the document-identifier-term pairs comprising:

a connection type and source pair comprising:

 a document identifier of a source object; and

 a composite term identifying a connection type of an edge object and a document identifier of a destination object;

a connection and source pair comprising:

 a document identifier of a source object; and

 a composite term identifying a connection and a document identifier of a destination object;

a connection type and destination pair comprising:

 a document identifier of a destination object; and

 a composite term identifying a connection type of an edge object and a document identifier of a source object; or

a connection and destination pair comprising:

 a document identifier of a destination object; and

 a composite term identifying a connection and a document identifier of a source object.

2. The apparatus of claim 1 , wherein the document identifier comprises an object identifier and a time stamp.

3. The apparatus of claim 1 , wherein the index comprises one or more replica indexes.

4. The apparatus of claim 1 , wherein the index comprises a plurality of shards each allocated a portion of a document identifier space.

5. A method comprising:

storing, by one or more memory devices, an index comprising:

a plurality of index entries that each comprise a term and a document identifier, at least one of the index entries comprising:

a document identifier corresponding to a data object of a plurality of data objects; and

a composite term comprising two or more data-object attributes; and

accessing, by one or more index servers, a query comprising one or more attribute values;

searching, by the index servers, the index against the attribute values to identify one or more identified data objects that match the query;

returning, by the index servers, one or more object identifiers corresponding to one or more identified data objects that match the query;

accessing, by one or more term producers, a data object comprising a plurality of data-object attributes;

parsing, by the term producers, the data object to create one or more index entries for the data object; and

outputting, by the term producers, a set of document-identifier term pairs, each pair comprising a type based on the corresponding object types of the data objects, wherein at least one of the terms is a composite term, the document-identifier-term pairs comprising:

a connection type and source pair comprising:

a document identifier of a source object and a composite term identifying a connection type of an edge object and a document identifier of a destination object;

a connection and source pair comprising:

a document identifier of a source object; and

a composite term identifying a connection and a document identifier of a destination object;

a connection type and destination pair comprising:

a document identifier of a destination object; and

a composite term identifying a connection type of an edge object and a document identifier of a source object; or

a connection and destination pair comprising:

a document identifier of a destination object; and

a composite term identifying a connection and a document identifier of a source object.

6. The method of claim 5 , wherein the document identifier comprises an object identifier and a time stamp.

7. The method of claim 5 , wherein the index comprises one or more replica indexes.

8. The method of claim 5 , wherein the index comprises a plurality of shards each allocated a portion of a document identifier space.

Assignments (1)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →