Log Broker Component for Data Consistency in Cloud DBaaS

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud computing environments, conventional DBaaS systems face challenges in ensuring data consistency during recovery by preventing log records from being disseminated until they are safely persisted, as secondary compute systems may apply operations ahead of the primary compute system, leading to potential data inconsistency.

Innovation Solution

A broker component is introduced to manage log records, ensuring they are not disseminated unless persisted in a persistent log, thereby maintaining data consistency by determining the persistence status before providing log records to secondary compute systems or storage segment servers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If secondary compute systems apply operations from log records before confirmation of persistence, then processing speed is improved, but data consistency is compromised

Engineering Contradiction:
Improveprocessing speedVSAvoiddata consistency
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The broker component performs preliminary verification of log record persistence status before allowing secondary compute systems to apply operations. This preliminary action ensures that only persisted log records are disseminated, maintaining data consistency while enabling parallel processing of confirmed records.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The broker component acts as an intermediary between the primary compute system and secondary compute systems. It mediates the dissemination of log records by filtering and controlling which records are transmitted, ensuring that only persisted records reach secondary systems while maintaining high processing throughput.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the broker component verifies persistence status for every log record request, then data consistency is maintained, but processing overhead increases

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The broker component performs persistence verification in advance before log records are disseminated to secondary compute systems. This preliminary verification prevents the need for repeated checks during processing, reducing overall overhead while maintaining data consistency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The broker component implements a feedback mechanism where persistence status information is tracked and communicated back to the dissemination process. This feedback allows the system to make informed decisions about which log records to propagate, reducing unnecessary verification overhead while maintaining consistency.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11455292B2Brokering persisted and unpersisted log records
Publication Date: 2022.09.27 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11455292B2 patent drawing
  • US11455292B2 patent drawing
  • US11455292B2 patent drawing

AI summary

Brokering log records so as to prevent log records that are not yet persisted in a persistent log from being disseminated. The log records may be generated as a primary compute system performs operations. Upon receiving a request for a log record, the broker component determines whether the requested log record has been persisted in a persistent log. If the broker component determines that the log record has been persisted in the persistent log, the broker component responds to the request by causing the requested log record to be provided to the requesting entity (e.g., a secondary compute system). On the other hand, if the log record cannot yet determine that the log record has been persisted in the persistent log, the broker component prevents the log record from being provided to the requesting entity. This prevents data from being inconsistent during recovery.