Reactive Database Standing Queries for Low-Latency Event Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database polling in large scale databases consumes significant bandwidth, causes latency, and leads to server throttling due to high processor and memory usage, especially in systems requiring frequent updates from edge computing devices.

Innovation Solution

Implementing a reactive database system with standing queries that are registered and executed server-side, eliminating the need for frequent client polling by using a reactive database application programming interface (API) to manage updates based on predefined trigger conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If frequent database polling is implemented to ensure real-time responsiveness, then system responsiveness is improved, but network bandwidth consumption increases significantly

Engineering Contradiction:
Improvesystem responsivenessVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The system pre-registers standing queries with the database server that will automatically execute when specific conditions are met. This preliminary setup eliminates the need for continuous client polling, as the server proactively notifies clients when data changes occur, thus maintaining real-time responsiveness while dramatically reducing network bandwidth consumption.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of the traditional approach where clients actively poll the database for changes, the system inverts the architecture by having the database server push notifications to clients when changes occur. This inversion transforms the client from an active polling role to a passive receiving role, reducing network traffic while maintaining responsiveness.

Inventive Principle:
Principle #13The other way round (Inversion)

2Speed

If high frequency polling is used to detect urgent events quickly, then detection speed is improved, but server processor and memory resources are consumed excessively

Engineering Contradiction:
Improveevent detection speedVSAvoidserver processor and memory usage
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The database server performs self-service by automatically executing pre-registered standing queries and generating notifications when conditions are met. This eliminates the need for external clients to continuously poll the database, reducing server processor and memory overhead while maintaining fast event detection through automated condition monitoring.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Instead of continuous periodic polling that consumes excessive resources, the system uses event-driven periodic action where queries are executed only when specific conditions are met. This transforms continuous resource-intensive polling into conditional, on-demand execution, reducing server load while maintaining detection speed.

Inventive Principle:
Principle #19Periodic action

3Loss of information

If repeated query-response cycles are implemented for real-time monitoring, then data freshness is improved, but communication latency increases due to unpredictable network conditions

Engineering Contradiction:
Improvedata freshnessVSAvoidcommunication latency
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The standing query mechanism establishes a continuous monitoring relationship between the database server and clients. When data changes occur, the server continuously evaluates registered conditions and immediately notifies relevant clients, ensuring data freshness without the need for repeated query-response cycles that introduce network latency.

Inventive Principle:
Principle #20Continuity of useful action

4Measurement precision

If multiple polling requests are sent to monitor database changes, then monitoring accuracy is improved, but server throttling occurs due to excessive request handling

Engineering Contradiction:
Improvemonitoring accuracyVSAvoidserver responsiveness
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The system extracts the monitoring function from the client-side polling mechanism and relocates it to the server-side standing query execution. The database server extracts and evaluates conditions locally, generating notifications only when changes occur. This eliminates excessive request handling that causes server throttling while maintaining monitoring accuracy through direct server-side condition evaluation.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20250278432A1Standing query to reactive database
Publication Date: 2025.09.04 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20250278432A1 patent drawing
  • US20250278432A1 patent drawing
  • US20250278432A1 patent drawing

AI summary

A computing system is provided, including non-volatile storage storing a reactive database including a plurality of database entities. The computing system may further include a processor configured to, via a reactive database application program interface (API), receive a first standing query registration input including a first standing query. The first standing query may include a first update condition and may be associated with a first database entity. The processor may be further configured to store the first standing query in the non-volatile storage. The processor may be further configured to write data to the reactive database and determine that the first update condition is satisfied by the written data. In response to determining that the first update condition is satisfied, the processor may be further configured to execute the first standing query to perform a first state change at the first database entity of the plurality of database entities.