Probabilistic Stream Indexing for Fast Co-Authoring File Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software applications and services face inefficiencies in managing and accessing authoring streams, particularly in co-authoring environments, leading to slowed user experiences and excessive power consumption due to the complexity of coordinating and accessing large numbers of streams.

Innovation Solution

Implementing probabilistic data structures, such as Bloom and Cuckoo filters, to manage and index authoring streams in multiple container files, allowing for fast and efficient access by maintaining an indices file that indicates the presence of streams in these files.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional indexing methods are used to manage authoring streams, then complete and accurate stream retrieval is ensured, but access speed decreases and power consumption increases due to the need to open and search through multiple files

Engineering Contradiction:
Improvestream access speedVSAvoidtime to locate and retrieve streams
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent introduces probabilistic index data structures (Bloom filters, Cuckoo filters) as intermediary layers between the query system and the actual stream storage files. These filters provide fast probabilistic lookups to determine which files may contain requested streams, avoiding the need to open and search every file. The intermediary filters significantly reduce access time while maintaining acceptable retrieval accuracy through probabilistic matching.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces traditional mechanical file-opening and linear-search operations with probabilistic data structure queries. Instead of opening files and sequentially searching for streams (mechanical approach), the system uses probabilistic index structures that can quickly determine stream presence through mathematical filtering, substituting the mechanical search process with a more efficient computational approach.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If traditional file access methods are used to retrieve authoring streams, then accurate stream retrieval is achieved, but power consumption increases due to excessive I/O operations

Engineering Contradiction:
Improvestream retrieval accuracyVSAvoidpower consumption during stream access
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

Probabilistic index filters serve as intermediaries that reduce the number of direct file I/O operations. By first querying the probabilistic index structures to identify candidate files, the system minimizes the actual file opening and searching operations, thereby reducing power consumption while maintaining reliable stream retrieval through subsequent verification steps.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The probabilistic filtering approach performs a preliminary partial search through the index structures before committing to full file access. This partial action allows the system to quickly eliminate files that definitely don't contain the requested streams, reducing the total I/O operations required while maintaining retrieval accuracy for streams that do exist in the system.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If probabilistic data structures are used to index authoring streams, then access speed increases and power consumption decreases, but there is a risk of false positives in stream presence indication

Engineering Contradiction:
Improvestream access efficiencyVSAvoidstream presence indication accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements feedback mechanisms where probabilistic index results are verified through additional checks. When the probabilistic filters indicate potential stream presence, the system performs verification queries or checks to confirm actual existence, thereby eliminating false positives while maintaining the speed benefits of probabilistic indexing. This feedback loop reconciles the speed-reliability tradeoff.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent adjusts parameters of the probabilistic data structures (such as filter size, hash function counts, and false positive rates) to optimize the balance between access speed and reliability. By dynamically tuning these parameters based on system requirements and workload characteristics, the system can achieve high productivity while keeping false positive rates at acceptable levels through parameter optimization.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP4315094B1Probabilistic indices for accessing authoring streams
Publication Date: 2026.01.21 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP4315094B1 patent drawingFigure 1
  • EP4315094B1 patent drawingFigure 2
  • EP4315094B1 patent drawingFigure 3

AI summary

In various implementations, streams are sent and received by a computing device engaged in an authoring session with respect to an electronic document. The computing device stores the streams in multiple container files associated with an instance of the electronic document open on the computing device. The device maintains an indices file to reflect a presence of the streams in the container files, such that fast access can be provided to the streams at a later time. The indices file comprises multiple probabilistic data structures corresponding to the container files that each indicate on a probabilistic basis whether a given stream is present in a corresponding one of the container files. The computing device uses the indices file to retrieve the streams from the container files.