IP Library Granted Patent US 9,058,377
Granted Patent B2
US 9,058,377 · App. 13/153,264 · Granted Jun 16, 2015

Fixed width encoding document posting lists

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,058,377
App. No.
13/153,264
Granted
Jun 16, 2015
Kind
B2
Abstract

This specification describes technologies relating to fixed width encoding/decoding of document posting lists. In general, one aspect of the subject matter described in this specification can be embodied in apparatuses that include a server obtaining a list of one or more of document identification numbers, each of the document identification numbers uniquely identifying a document; an encoding device operatively connected to the server, the encoding device generating a sequence of deltas from the sequential list of one or more of the document identification numbers, and encoding each delta in the sequence of deltas using a fixed-width encoding scheme.

Claims (51)

1. An apparatus comprising:

a server that includes a processor configured to execute instructions for obtaining a sequential list of document identification numbers, each of the document identification numbers uniquely identifying a document; and

an encoding device operatively connected to said server,

said encoding device generating, through operation of a processor executing instructions stored on a memory device, a sequence of deltas from the sequential list of the document identification numbers, and for each delta in the sequence of deltas, determining if the delta is greater than or equal to a first maximum value of a first predetermined byte number, and for each of the deltas greater than or equal to the first maximum value, recalculating the delta as one or more multiples of the first maximum value and a remainder value,

said encoding device determining a first total number of bytes for encoding the sequence of deltas based on the first predetermined byte number.

2. The apparatus according to claim 1 , wherein the encoding device, for each delta in the sequence of deltas, determines if the delta is greater than or equal to a second maximum value of a second predetermined byte number, and wherein the encoding device, for each of the deltas that is greater than or equal to the second maximum value, recalculates the delta as one or more multiples of the second maximum value and a remainder value,

said encoding device determining a second total number of bytes for encoding the sequence of deltas based on the second predetermined byte number.

3. The apparatus according to claim 2 , wherein the encoding device compares the first total number of bytes and the second total number of bytes, and encodes the sequence of deltas using the first predetermined byte number if the first total number of bytes is smaller than the second total number of bytes and encodes the sequence of deltas using the second predetermined byte number if the first total number of bytes is greater than or equal to the second total number of bytes.

4. The apparatus according to claim 2 , wherein the first predetermined byte number is 1 and the second predetermined byte number is 2.

5. The apparatus according to claim 1 , wherein said server receives a search request and one or more keywords, and

obtains the sequential list of the document identification numbers based on the received search request and the one or more keywords.

6. A computer-implemented method comprising:

obtaining, through operation of a processor executing instructions stored on a memory device, a sequential list of document identification numbers, each of the document identification numbers uniquely identifying a document;

generating a sequence of deltas based on the sequential list of the document identification numbers;

for each delta in the sequence of deltas, determining if the delta is greater than or equal to a first maximum value of a first predetermined byte number, and

for each of the deltas greater than or equal to the first maximum value,

recalculating the

delta as one or more multiples of the first maximum value and a remainder value; and

determining a first total number of bytes for encoding the sequence of deltas based on the first predetermined byte number.

7. The computer-implemented method of claim 6 , further comprising:

for each delta in the sequence of deltas, determining if the delta is greater than or equal to a second maximum value of a second predetermined byte number,

for each of the deltas greater than or equal to the second maximum value,

recalculating

the delta as one or more multiples of the second maximum value and a remainder value; and

determining a second total number of bytes for encoding the sequence of deltas based on the second predetermined byte number.

8. The computer-implemented method of claim 7 , further comprising:

comparing the first total number of bytes and the second total number of bytes;

encoding the sequence of deltas using the first predetermined byte number if the first total number of bytes is smaller than the second total number of bytes; and

encoding the sequence of deltas using the second predetermined byte number if the first total number of bytes is greater than or equal to the second total number of bytes.

9. The computer-implemented method of claim 7 , wherein the first predetermined byte number is 1 and the second predetermined byte number is 2.

10. The computer-implemented method of claim 6 , further comprising:

receiving a search request and one or more keywords, and

obtaining the sequential list of the document identification numbers based on the received search request and the one or more keywords.

11. A non-transitory computer-readable medium having computer-executable instructions, which, when executed by a computer having one or more processors, cause the computer to perform steps of:

obtaining a sequential list of document identification numbers, each of the document identification numbers uniquely identifying a document;

generating a sequence of deltas based on the sequential list of the document identification numbers;

for each delta in the sequence of deltas, determining if the delta is greater than or equal to a first maximum value of a first predetermined byte number, and

for each of the deltas that is greater than or equal to the first maximum value, recalculating the delta as one or more multiples of the first maximum value and a remainder value; and

determining a first total number of bytes for encoding the sequence of deltas based on the first predetermined byte number.

12. The non-transitory computer-readable medium of claim 11 , said computer-executable instructions, which, when executed by the computer, cause the computer to perform additional step of:

for each delta in the sequence of deltas: determining if the delta is greater than or equal to a second maximum value of a second predetermined byte number,

for each of the deltas that is greater than or equal to the second maximum value, recalculating the delta as one or more multiples of the second maximum value and a remainder value; and

determining a second total number of bytes for encoding the sequence of deltas based on the second predetermined byte number.

13. The non-transitory computer-readable medium of claim 12 , said computer-executable instructions, which, when executed by the computer, cause the computer to perform additional steps of:

comparing the first total number of bytes and the second total number of bytes;

encoding the sequence of deltas using a first predetermined byte number if the first total number of bytes is smaller than the second total number of bytes; and

encoding the sequence of deltas using the second predetermined byte number if the first total number of bytes is greater than or equal to the second total number of bytes.

14. The non-transitory computer-readable medium of claim 12 , wherein the first predetermined byte number is 1 and the second predetermined byte number is 2.

15. The non-transitory computer-readable medium of claim 11 , said computer-executable instructions, which, when executed by the computer, cause the computer to perform additional steps of:

receiving a search request and one or more keywords, and

obtaining the sequential list of the document identification numbers based on the received search request and the one or more keywords.

Assignments (1)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044334/0466 →