On-device Indexing via Read Surrogate Database

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Mobile applications face challenges in effectively managing on-device indexes due to limited APIs and power constraints, leading to data integrity issues and difficulties in indexing all hosted content items, especially when using online content management services.

Innovation Solution

A method is implemented on portable electronic devices to detect indexing events within content management applications, determine the necessity of adding or removing index entries, and utilize a read surrogate database to check for existing entries before modifying the on-device index, thereby conserving computing resources and ensuring data integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If mobile applications continuously monitor and update the on-device index to ensure data integrity, then indexing accuracy improves, but power consumption and computational resources increase

Engineering Contradiction:
Improvedata integrityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The application performs preliminary checks by querying the read surrogate database before attempting to add or remove index entries. This preliminary action prevents unnecessary write operations to the on-device index, thereby conserving power while maintaining indexing accuracy through selective updates based on actual state changes.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If mobile applications use write-only APIs to manage the on-device index for security reasons, then system security improves, but the ability to verify index state and avoid duplicative entries deteriorates

Engineering Contradiction:
Improvesystem securityVSAvoidindex state visibility
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The read surrogate database serves as an intermediary that provides the application with read access to index state information without compromising the security of the write-only API. This intermediary allows the application to verify the current state of indexed content items and avoid duplicative entries while maintaining the security constraints of the underlying index management system.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If mobile applications attempt to index all hosted content items, then search completeness improves, but device storage and processing capacity are exceeded

Engineering Contradiction:
Improvesearch completenessVSAvoidindex management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The application implements partial indexing by selectively indexing only those content items that have changed state (added, removed, or modified) rather than attempting to index all hosted content items. This partial action approach maintains search completeness for relevant items while reducing the overall complexity and resource requirements of index management on the mobile device.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10353865B2On-device indexing of hosted content items
Publication Date: 2019.07.16 DROPBOX INC
  • US10353865B2 patent drawing
  • US10353865B2 patent drawing
  • US10353865B2 patent drawing

AI summary

Techniques on on-device indexing of hosted content items are described. In one embodiment, for example, a method is performed at a portable electronic device. The method includes the device performing the operations of: detecting an indexing event within a content management application; determining a content item, hosted with a content management service, to which the indexing event pertains; determining if the indexing event indicates that an index entry for the content item should be added to an on-device index; determining if a proxy entry for the content item already exists in a database that is a read surrogate for the on-device index at least with respect to a content management application by which the content item may be accessed; and attempting to add the index entry to the on-device index, if the proxy entry does not exist in the database.