Versioned Metadata Framework for Multi-Tenant Log Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud computing environments, multi-tenant database systems face challenges in processing log files due to co-mingled data from multiple tenants, where system administrators need to ensure data privacy and integrity, while also providing relevant log data to tenants in a usable format, without exposing sensitive information or internal metrics.

Innovation Solution

A system and method that utilize a versioned metadata framework to parse and generate customer-facing log files, using a metadata file to specify which log entries and fields to include, ensuring data privacy and integrity by excluding sensitive information and maintaining schema integrity across application releases.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If log files from multiple tenants are processed together in a multi-tenant database system, then processing efficiency is improved, but data privacy and security are compromised due to co-mingled sensitive information

Engineering Contradiction:
Improvelog file processing efficiencyVSAvoiddata privacy exposure
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The patent segments log files by tenant ID, creating separate processing streams for each tenant. The log processing system divides the co-mingled log data into distinct tenant-specific datasets, allowing efficient batch processing while maintaining data privacy boundaries. Each tenant's log entries are processed independently after segmentation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts sensitive information and tenant-specific data from co-mingled log files using pattern matching and field extraction. Regular expressions and metadata frameworks identify and extract relevant log entries for specific tenants while leaving other tenants' sensitive data separate, thus extracting useful information without exposing confidential information.

Inventive Principle:
Principle #2Taking out (Extraction)

2Loss of information

If all log fields are included in processed log files, then data completeness is improved, but data privacy and security are compromised due to exposure of sensitive internal metrics

Engineering Contradiction:
Improvelog data completenessVSAvoidsensitive information exposure
Core Design Contradiction:
Loss of informationVSObject-affected harmful factors

Solution Approach 1:

The patent applies local quality by selectively including or excluding specific log fields based on tenant permissions and sensitivity classifications. Different log entries receive different treatment - some fields are included while others are redacted or excluded based on their sensitivity level and the tenant's access rights, rather than applying a uniform include/exclude policy to all fields.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent introduces a metadata framework as an intermediary layer between raw log data and processed output. This metadata layer contains classification information about each log field's sensitivity and permitted recipients, acting as a mediator that determines which fields should be included in the processed log files for each specific tenant.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If log file processing logic is hardcoded for specific formats, then processing speed is improved, but adaptability to different application releases and log formats is reduced

Engineering Contradiction:
Improvelog file processing speedVSAvoidlog format compatibility
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent makes the log processing system dynamic by using versioned metadata files that can be updated to reflect changes in application releases and log formats. Instead of static hardcoded logic, the system dynamically loads and applies processing rules from metadata files that correspond to specific application versions, allowing the processing logic to adapt automatically when new versions are deployed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes parameters from fixed hardcoded values to variable parameters defined in metadata files. The metadata framework stores configurable parameters such as field names, data types, and processing rules that can be modified without changing the core processing logic, enabling the system to adapt to different log formats and application versions by simply updating these parameters.

Inventive Principle:
Principle #35Parameter changes

4Reliability

If manual processing of co-mingled log files is performed to ensure data privacy, then data security is improved, but processing time and operational complexity increase significantly

Engineering Contradiction:
Improvedata security assuranceVSAvoidlog file processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements self-service by enabling the log processing system to automatically perform tenant segmentation, field extraction, and permission-based filtering without manual intervention. The metadata framework provides the system with the knowledge it needs to autonomously make decisions about which log entries to include or exclude based on tenant IDs and permission settings, eliminating the need for manual review while maintaining security.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10339126B2Processing log files using a database system
Publication Date: 2019.07.02 SALESFORCE INC
  • US10339126B2 patent drawing
  • US10339126B2 patent drawing
  • US10339126B2 patent drawing

AI summary

Disclosed are some examples of database systems, methods, and computer program products for processing log files. In some implementations, a server of a database system accesses a log file having a release version. The log file includes data entries identifying system events corresponding to user activity. The server generates or updates, based on the release version of the log file, a metadata file indicating approved entry types and approved data. The server also generates or updates, based on the log file and the metadata file, customer-facing log files. Each customer-facing log file is associated with a corresponding customer entity capable of being serviced by the database system. Each customer-facing log file includes a subset of the entries and a subset of the data items of at least one of the entries.