IP Library Granted Patent US 9,262,421
Granted Patent B2
US 9,262,421 · App. 14/589,366 · Granted Feb 16, 2016

Distributed and tiered architecture for content search and content monitoring

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,262,421
App. No.
14/589,366
Granted
Feb 16, 2016
Kind
B2
Abstract

An efficient large scale search system for video and multi-media content using a distributed database and search, and tiered search servers is described. Selected content is stored at the distributed local database and tier1 search server(s). Content matching frequent queries, and frequent unidentified queries are cached at various levels in the search system. Content is classified using feature descriptors and geographical aspects, at feature level and in time segments. Queries not identified at clients and tier1 search server(s) are queried against tier2 or lower search server(s). Search servers use classification and geographical partitioning to reduce search cost. Methods for content tracking and local content searching are executed on clients. The client performs local search, monitoring and/or tracking of the query content with the reference content and local search with a database of reference fingerprints. This shifts the content search workload from central servers to the distributed monitoring clients.

Claims (30)

1. A method for fast updating of a search database, the method comprising:

storing signatures of a real time database update in sequential order as received in a buffer on a user device;

sending the signatures from the user device to a remote database without locks; and

updating a remote database with the signatures of the real time database update.

2. The method of claim 1 , wherein the signatures are associated with one or more cluster keys and the buffer is a circular buffer for each of the one or more cluster keys.

3. The method of claim 1 , wherein the capacity of the buffer, configured as a circular buffer, is determined from a maximum number of signatures expected for a cluster key.

4. The method of claim 3 , wherein the maximum number of signatures in a tiered database is determined from an expected average number of signature updates associated with a tier selected for updating.

5. The method of claim 1 , wherein the capacity of the buffer, configured as a circular buffer, is determined to require an increase in size, based on a time difference between a first time stamp of a first entry in the circular buffer and a second time stamp of a second entry that overwrites the first entry.

6. The method of claim 5 , wherein if the time difference is less than a predetermined first threshold value, a counter value is incremented which if the counter value exceeds a predetermined second threshold, the capacity of the circular buffer is increased.

7. The method of claim 5 , wherein if the time difference is greater than a predetermined first threshold value, the capacity of the circular buffer is kept the same.

8. The method of claim 1 , wherein a previous signature which is to be overwritten in the buffer, configured to operate as a circular buffer, is for a lapsed event placing the previous signature to be overwritten in another search tier.

9. The method of claim 1 , wherein the buffer, configured as a circular buffer, has a first capacity that is increased by a predetermined amount to a second capacity without using locks, the predetermined amount selected to minimize loss of data due to overwriting of entries in the circular buffer when configured at the second capacity.

10. The method of claim 1 wherein a cluster index database is updated by use of the buffer, configured as a circular buffer.

11. The method of claim 1 further comprising:

receiving an update containing signatures and associated cluster keys from a search system; and

storing, without locks, the signatures into the buffer associated with the cluster key.

12. The method of claim 11 , wherein the buffer is configured to operate as a circular buffer with a capacity that minimizes loss of data due to overwriting of entries in the circular buffer.

13. The method of claim 11 , wherein the signatures represent a unit of multimedia content and a cluster index is a data structure that stores signatures that have the same cluster key.

14. The method of claim 1 , wherein the buffer is a circular buffer and said step of storing signatures of a real time database update in sequential order as received is performed without using locks.

15. The method of claim 14 , wherein the circular buffer is configured with a capacity that minimizes loss of data due to overwriting of entries in the circular buffer.

16. The method of claim 14 , wherein the capacity of the circular buffer is determined to require an increase in size, based on a time difference between a first time stamp of a first entry in the circular buffer and a second time stamp of a second entry that overwrites the first entry.

17. The method of claim 16 , wherein if the time difference is less than a predetermined first threshold value, a counter value is incremented which if the counter value exceeds a predetermined second threshold, the capacity of the circular buffer is increased.

18. The method of claim 14 further comprising:

receiving an update containing signatures and associated cluster keys from a search system; and

storing, without locks, the signatures into the circular buffer associated with the cluster key.

19. The method of claim 18 , wherein the signatures represent a unit of multimedia content and a cluster index is a data structure that stores signatures that have the same cluster key.

20. A computer readable non-transitory medium encoded with computer readable program data and code, the program data and code when executed operable to:

store signatures of a real time database update in sequential order as received in a buffer on a user device;

send the signatures from the user device to a remote database without locks; and

update a remote database with the signatures of the real time database update.

Assignments (16)
SECURITY INTEREST Recorded Sep 18, 2024
From: ROKU, INC.
To: CITIBANK, N.A.
Reel/Frame 068982/0377 →
RELEASE (REEL 053473 / FRAME 0001) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063603/0001 →
RELEASE (REEL 054066 / FRAME 0064) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063605/0001 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT (REEL/FRAME 056982/0194) Recorded Feb 22, 2023
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROKU, INC.; ROKU DX HOLDINGS, INC.
Reel/Frame 062826/0664 →
RELEASE (REEL 042262 / FRAME 0601) Recorded Oct 13, 2022
From: CITIBANK, N.A.
To: GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC
Reel/Frame 061748/0001 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Jun 29, 2021
From: ROKU, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 056982/0194 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2021
From: GRACENOTE, INC.
To: ROKU, INC.
Reel/Frame 056103/0786 →
PARTIAL RELEASE OF SECURITY INTEREST Recorded Apr 20, 2021
From: CITIBANK, N.A.
To: THE NIELSEN COMPANY (US), LLC; GRACENOTE, INC.
Reel/Frame 056973/0280 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 25, 2020
From: PEREIRA, JOSE PIO; MERCHANT, SHASHANK; RAMANATHAN, PRASHANT; KULKARNI, SUNIL SURESH; STOJANCIC, MIHAILO
To: ZEITERA, LLC
Reel/Frame 054158/0415 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENTS LISTED ON SCHEDULE 1 RECORDED ON 6-9-2020 PREVIOUSLY RECORDED ON REEL 053473 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SUPPLEMENTAL IP SECURITY AGREEMENT. Recorded Oct 7, 2020
From: A.C. NIELSEN (ARGENTINA) S.A.; A.C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A
Reel/Frame 054066/0064 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Jun 9, 2020
From: A. C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NIELSEN UK FINANCE I, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A.
Reel/Frame 053473/0001 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Apr 13, 2017
From: GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE DIGITAL VENTURES, LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 042262/0601 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Feb 8, 2017
From: JPMORGAN CHASE BANK, N.A.
To: GRACENOTE, INC.; CASTTV INC.; TRIBUNE MEDIA SERVICES, LLC; TRIBUNE DIGITAL VENTURES, LLC
Reel/Frame 041656/0804 →
SECURITY AGREEMENT Recorded Mar 1, 2016
From: GRACENOTE, INC.; TRIBUNE BROADCASTING COMPANY, LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 037960/0805 →
SECURITY AGREEMENT Recorded Aug 14, 2015
From: GRACENOTE, INC.; TRIBUNE BROADCASTING COMPANY, LLC; CASTTV INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 036354/0793 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2015
From: ZEITERA, LLC
To: GRACENOTE, INC.
Reel/Frame 036027/0392 →