Dynamic Log Shard Persistence via Router-Writer Assignment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing log management systems in distributed systems face inefficiencies in scalability, load balancing, and resource consumption, particularly in high data throughput environments, due to complex load distribution among writers and lack of a central management system, which makes it difficult to adapt to dynamic system changes.

Innovation Solution

A method and system for dynamically persisting log data by transmitting shards to router-writer pairs based on a writer assignment map, which identifies writers based on criteria such as number of writers, load, shard size, or estimated capacity, and continuously monitors and reassigned shards as needed to optimize resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a prior log management system distributes load among writers without central coordination, then system autonomy and simplicity are maintained, but load balancing efficiency and adaptability to dynamic changes deteriorate

Engineering Contradiction:
Improvesystem autonomyVSAvoidload balancing efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent introduces a central log persistence manager as an intermediary component that coordinates between multiple writers and manages shard assignments. This manager receives log data, determines optimal writer assignments based on current system state, and routes data accordingly, thereby achieving efficient load balancing while maintaining system autonomy through centralized intelligence rather than distributed coordination overhead

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system dynamically adjusts writer assignments and shard distributions based on real-time monitoring of writer status, load conditions, and system changes. The log persistence manager continuously evaluates the state of writers and reassigns shards to optimize load balancing, enabling the system to adapt quickly to dynamic changes in writer availability and performance

Inventive Principle:
Principle #15Dynamics

2Productivity

If the number of writers and log categories increases to handle higher data throughput, then system capacity and scalability are improved, but election complexity and resource consumption worsen

Engineering Contradiction:
Improvedata throughput capacityVSAvoidelection process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments log data into multiple shards categorized by different categories or groups, with each shard independently assigned to specific writers. This segmentation allows the system to handle high data throughput by parallelizing processing across multiple writers while simplifying the assignment process through category-based routing, avoiding complex elections for each individual log entry

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The log persistence manager performs preliminary assignment of shards to writers based on predetermined criteria and current system state before data arrival. By pre-establishing writer assignments for different shard categories and maintaining an assignment map, the system eliminates the need for complex runtime elections, reducing resource consumption while maintaining high throughput capacity

Inventive Principle:
Principle #10Preliminary action

3Reliability

If log data is persisted with strict durability guarantees to prevent data loss, then reliability is improved, but persistence latency and resource consumption worsen

Engineering Contradiction:
Improvedata persistence reliabilityVSAvoidpersistence latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements dynamic parameter adjustment for log persistence operations, allowing the system to modify persistence guarantees, batching intervals, and confirmation thresholds based on current system conditions, data priorities, and writer performance. This enables the system to maintain high reliability for critical logs while reducing latency for less critical data by adjusting persistence parameters in real-time

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8903871B2Dynamic management of log persistence
Publication Date: 2014.12.02 META PLATFORMS INC
  • US8903871B2 patent drawing
  • US8903871B2 patent drawing
  • US8903871B2 patent drawing

AI summary

Disclosed is a method and system for dynamically persisting log data from member computers in a network. The log data is transmitted as a plurality of shards to a router of router-writer pairs which transmits the shards to writers of the router-writer pairs that persist the shards into a storage unit. A shard contains a distinct subset of the log data. The shards are transmitted to the writers based on a writer assignment map that identifies a writer assigned to persist each of the shards. The assignment of the shards to a writer is performed based on assignment criteria that include at least one of (i) number of writers, (ii) a load of the writers, (iii) number of shards, (iv) size of a particular shard, or (v) estimated load capacity of writers.