On-device directory search for merchants

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing mobile device systems require network connectivity to search for nearby merchants, leading to latency and inefficiency, as they need to contact a server for every query, even when the user's location changes.

Innovation Solution

An on-device directory is maintained on the user's device, which is updated with delta information from a server about merchants in the user's geographic region, allowing searches to be performed locally without server contact, even when network communication is unavailable.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the system contacts a server for every merchant search query, then the merchant information can be up-to-date, but the search latency increases and network dependency is created

Engineering Contradiction:
Improvemerchant information currencyVSAvoidsearch latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by maintaining a local cache of merchant information on the user device and proactively updating it based on location changes. This allows the device to have merchant data available locally before a search query is initiated, eliminating the need to contact the server at the moment of searching and thus reducing latency while maintaining information currency.

Inventive Principle:
Principle #10Preliminary action

2Speed

If the system maintains a complete merchant directory on the device, then search speed improves, but device storage requirements increase

Engineering Contradiction:
Improvesearch speedVSAvoiddevice storage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system applies local quality by storing merchant information selectively based on the user's current location and search history. Instead of storing all merchants universally, it maintains a localized cache of merchants relevant to the user's geographic area, optimizing the balance between having enough data for fast local searches and minimizing storage consumption by only keeping locally-relevant information.

Inventive Principle:
Principle #3Local quality

3Reliability

If the system updates the merchant directory frequently, then the information remains current, but the energy consumption and network usage increase

Engineering Contradiction:
Improveinformation currencyVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system implements periodic action by updating the merchant directory based on specific triggers such as location changes or time intervals, rather than continuously or on every search. This allows the device to maintain reasonably current information while avoiding unnecessary frequent updates that would consume excessive energy and network resources, finding an optimal balance between information freshness and resource usage.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10373221B1On-device directory search
Publication Date: 2019.08.06 BLOCK INC
  • US10373221B1 patent drawing
  • US10373221B1 patent drawing
  • US10373221B1 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for performing searches using an on-device directory. One of the methods includes providing, by a user device, a location of the user device to a server. Delta information is received that identifies merchants to be added to an on-device directory of the user device, wherein the merchants to be added are located in a geographic region that includes the location of the user device. An on-device directory on the user device is updated using the received information identifying merchants. A search query for merchants located in the geographic region is received. Information is obtained from the on device directory identifying one or more merchants that satisfy the query, and the information identifying the one or more merchants is provided in response to the query.