Log Record Storage Using Template and Attribute Repositories

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in efficiently storing and searching log records from data centers due to high volumes and rates of log generation, requiring significant storage space and time while maintaining efficient search capabilities.

Innovation Solution

The method involves identifying template and attribute identifiers for log records, partitioning them into batches using a data structure that includes these identifiers, and storing them in a log repository, allowing for efficient retrieval and search through template and attribute repositories.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If log records are stored in a full-text index to enable complex text queries, then search functionality is improved, but storage space requirements increase proportionally to the number of terms in the log records

Engineering Contradiction:
Improvesearch functionalityVSAvoidstorage space
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The log record storage system is segmented into multiple repositories: a template repository storing unique template strings, an attribute repository storing unique attribute values, and a log repository storing compact log records with references. This segmentation eliminates redundant storage of repeated strings while maintaining search capabilities through the structured reference system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of storing complete log record texts in the log repository, the system stores compact references (template identifiers and attribute identifiers) that point to the actual template and attribute strings stored in separate repositories. This copying approach significantly reduces storage space while enabling efficient retrieval and search operations.

Inventive Principle:
Principle #26Copying

2Ease of operation

If log records are stored in full-text index format, then complex text queries can be performed, but processing time increases due to the volume of log records generated at millions per second

Engineering Contradiction:
Improvequery capabilityVSAvoidprocessing time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-processing log records into a normalized format with template identifiers and attribute identifiers during ingestion. This pre-structuring enables faster query processing later, as searches can operate on the compact reference format rather than parsing full text records at query time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the parameter representation from storing complete text strings to storing compact integer identifiers (template IDs and attribute IDs). This parameter transformation dramatically reduces the amount of data that needs to be processed during queries while maintaining the ability to perform text searches by retrieving and searching template and attribute strings from their respective repositories.

Inventive Principle:
Principle #35Parameter changes

3Loss of information

If all log records are stored in detail, then complete information is preserved, but storage efficiency decreases significantly

Engineering Contradiction:
Improveinformation completenessVSAvoidstorage efficiency
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The system creates a compact copy representation where each log record is stored as a tuple of (template_id, attribute_id, timestamp, log_id) in the log repository, while the actual template and attribute strings are stored once in their respective repositories. This copying mechanism preserves complete information while achieving significant storage efficiency through deduplication of repeated strings.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The information is segmented into three separate repositories: templates (invariant parts), attributes (variable parts), and log records (references). This segmentation allows the system to store only unique template and attribute strings once, while log records merely reference them, thereby preserving complete information without the redundancy of storing full text repeatedly.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10049171B2Batch processed data structures in a log repository referencing a template repository and an attribute repository
Publication Date: 2018.08.14 CA TECH INC
  • US10049171B2 patent drawing
  • US10049171B2 patent drawing
  • US10049171B2 patent drawing

AI summary

A method by a computer includes, for each of a plurality of log records received as part of a log stream from a host machine node, identifying a template identifier within a template repository for a template string matching an invariant string of the log record, and identifying an attribute identifier in an attribute repository for an attribute string matching a variant string of the log record. The log records are partitioned into batches. Each of the batches are defined by a data structure that includes the template identifier and the attribute identifier for each of the log records within the batch. The data structures for each of the batches are stored into a log repository.