Database Change Log for Usage State Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in effectively monitoring and determining the usage state of components that make changes to databases, particularly in identifying when a database management system is actively being used, which is crucial for managing database operations and ensuring compliance with usage rules.

Innovation Solution

A method that involves receiving component data indicating changes to a database, logging these changes to create a database change log, and determining the usage state of the component based on this log, allowing for the differentiation between active and inactive states and triggering remedial actions when usage exceeds defined limits.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If database change logging is implemented to monitor component usage, then usage state determination accuracy is improved, but system complexity increases

Engineering Contradiction:
Improveusage state determination accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

A database trigger serves as an intermediary mechanism that automatically captures change operations and writes them to a change log table. This trigger-based approach eliminates the need for complex external monitoring systems, as the trigger inherently intercepts and records all database modifications (INSERT, UPDATE, DELETE) on target tables, providing accurate usage state determination through structured log data containing operation type, timestamp, and affected records

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The invention creates a simplified copy of change operation data in a dedicated change log table, which mirrors essential information about database modifications without storing complete transactional details. This selective copying approach reduces storage requirements and simplifies analysis compared to logging entire database transactions, while still providing sufficient data to determine component usage states accurately

Inventive Principle:
Principle #26Copying

2Measurement precision

If comprehensive change logging is performed to track all database operations, then monitoring accuracy is improved, but processing time increases

Engineering Contradiction:
Improvemonitoring accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system implements partial logging by selectively recording only essential change operation attributes (operation type, timestamp, affected table, number of records) in the change log, rather than capturing complete transactional data. This partial action approach maintains sufficient monitoring accuracy to determine usage states while significantly reducing the processing overhead compared to comprehensive transaction logging

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The database trigger performs preliminary action by automatically capturing and structuring change operation data at the moment of modification, writing it directly to the change log table during the transaction. This preliminary capture eliminates the need for subsequent complex data collection and processing steps, reducing overall processing time while ensuring no change operations are missed

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11567924B2Product usage discovery signature based on database table content changes
Publication Date: 2023.01.31 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11567924B2 patent drawing
  • US11567924B2 patent drawing
  • US11567924B2 patent drawing

AI summary

Technology for logging application usage based on monitoring of read or change operations on database elements and then using the information from log data to determine application usage states (for example, active, inactive) in time.