Log Manager Thread Return with Secondary Event Writes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems face challenges in efficiently managing event logs across primary and secondary systems for high availability, leading to increased latency and resource utilization due to the need for confirmation of event writes across both systems.

Innovation Solution

A log management component that groups event writes by transaction type and thread, allowing for immediate thread return without confirmation of secondary system writes, thereby reducing latency and enhancing resource efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If event writes are confirmed on both primary and secondary computing systems before thread return, then data reliability and high availability are improved, but thread latency and resource utilization deteriorate

Engineering Contradiction:
Improvedata reliabilityVSAvoidthread latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by writing events to the primary computing system immediately and returning the thread without waiting for secondary system confirmation. The secondary system writes are initiated but not blocked, allowing the thread to proceed while the backup write completes asynchronously in the background.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The event writing process is segmented into critical path operations (primary system write) and non-critical path operations (secondary system write). The thread only waits for the primary system confirmation, while secondary system writes are handled separately without blocking thread execution.

Inventive Principle:
Principle #1Segmentation

2Reliability

If event writes are confirmed on both primary and secondary computing systems before thread return, then high availability is improved, but thread resource utilization deteriorates

Engineering Contradiction:
Improvehigh availabilityVSAvoidthread resource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by writing events to the primary computing system immediately and returning the thread without waiting for secondary system confirmation. The secondary system writes are initiated but not blocked, allowing the thread to proceed while the backup write completes asynchronously in the background.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The potential harm of uncached writes is converted into benefit by using asynchronous secondary system writes. The thread returns quickly improving utilization, while the secondary system writes complete in the background ensuring data redundancy and high availability without blocking resources.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

3Use of energy by moving object

If event writes are grouped and dispatched together, then network efficiency is improved, but write latency for individual events deteriorates

Engineering Contradiction:
Improvenetwork efficiencyVSAvoidwrite latency
Core Design Contradiction:
Use of energy by moving objectVSLoss of time

Solution Approach 1:

The system applies partial grouping by only grouping events that are already destined for the same secondary system write operation. Not all events are grouped together - only those that share the same backup destination, which minimizes additional latency while still achieving network efficiency benefits for compatible events.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10726047B2Early thread return with secondary event writes
Publication Date: 2020.07.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10726047B2 patent drawing
  • US10726047B2 patent drawing
  • US10726047B2 patent drawing

AI summary

A log manager causing events to be written to the primary and the secondary computing systems for high availability, and returning threads quickly. Rather than cause every event write to be immediately written to the secondary computing system, the log management component is triggered to write to the secondary computing system upon detecting event write requests of event writes of a particular event type. In response to detecting such an event write, the log management component gathers a group of event writes corresponding to that particular event write, and dispatches the event writes as a group. The particular thread that initiated the particular event write of the particular event type is returned after dispatching the event write group, but before or without confirmation of the particular event write group has been written to the secondary computing system.