Email Journaling Cache Using Update Sequence Numbers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional email journaling services face inefficiencies when handling distribution lists, as they often need to repeatedly match email addresses with targets for journaling, leading to unnecessary processing and reduced performance.

Innovation Solution

The implementation of an update sequence number system that allows for caching of matching results, enabling the journaling mail server to skip the matching process when the distribution list has not changed, by referencing cached results based on the update sequence number.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional email journaling services repeatedly match email addresses with targets for journaling, then they can ensure accurate identification of journaling targets, but they experience unnecessary processing overhead and reduced performance

Engineering Contradiction:
Improveaccurate identification of journaling targetsVSAvoidprocessing performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs the matching process in advance and stores the results in a cache with an associated update sequence number. When processing emails, the system first checks the cache to see if a matching result already exists for the given update sequence number, thereby avoiding redundant matching operations and improving processing performance while maintaining accurate identification of journaling targets.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If email journaling services process every email through the full matching process, then they can handle changes in distribution lists accurately, but they incur excessive processing time and computational resources

Engineering Contradiction:
Improvehandling of distribution list changesVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system pre-processes distribution list matching and caches the results with an update sequence number that tracks changes. When a new email arrives, the system checks whether the distribution list has changed by comparing update sequence numbers, thereby avoiding redundant processing of unchanged lists and reducing processing time while still accurately handling changes when they occur.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an update sequence number parameter that changes only when the distribution list actually changes. This parameter allows the system to distinguish between emails that require full matching processing and those that can use cached results, thereby reducing processing time for unchanged lists while maintaining reliability when changes occur.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If email journaling services implement a caching mechanism with update sequence numbers, then they can reduce processing overhead and improve performance, but they increase system complexity

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system creates a simplified copy of the matching results in a cache structure that includes only the essential elements (matched email addresses and an update sequence number). This copying approach reduces processing overhead by avoiding repeated full matching operations while keeping the cache structure relatively simple and manageable, thereby improving processing efficiency without excessively increasing system complexity.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10581767B1Systems and methods for email journaling
Publication Date: 2020.03.03 ARCTERA US LLC
  • US10581767B1 patent drawing
  • US10581767B1 patent drawing
  • US10581767B1 patent drawing

AI summary

A computer-implemented method for email journaling may include (1) maintaining, by a journaling mail server, a cache that associates together an update sequence number that indicates a version of an email distribution list and email addresses that are both designated as targets for journaling and included within the version of the email distribution list identified by the update sequence number, (2) receiving, by the server, an email that includes, within at least one header field, a candidate update sequence number and an email distribution list identifier, (3) determining that the update sequence number in the cache is a match for the candidate update sequence number in the header field, and (4) identifying, based on the match between the update sequence number and the candidate update sequence number, the email addresses specified in the cache as the targets for journaling. Various other methods, systems, and computer-readable media are also disclosed.