Query Statement Interceptor for Distributed Storage Policy Enforcement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed storage and processing environments like Apache Hadoop, it is challenging to augment system functionality in a manner that is guaranteed to work with the continuously changing code base, as the open-source platform experiences frequent updates from the contributor community.

Innovation Solution

A non-transitory computer-readable storage medium with instructions executed by a processor to intercept query statements, evaluate tokens for pattern matches, and form revised statements based on policy rules, maintaining computation logic while altering parameters, thereby ensuring operability across a changing code base.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the code base of an open source platform like Hadoop continuously changes due to community contributions, then the platform gains improved functionality and adaptability, but it becomes difficult to augment system functionality in a manner that is guaranteed to work with the continuously changing code base

Engineering Contradiction:
Improvesystem functionalityVSAvoidoperation guarantee
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a statement interceptor as an intermediary component that sits between the client and the distributed storage system. This interceptor captures query statements, modifies them according to policy rules, and forwards them to the storage system. By placing this intermediary layer, the system can augment functionality (policy enforcement, statement modification) without directly modifying the Hadoop code base, thus maintaining reliability despite continuous changes in the underlying platform.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the system into distinct functional components: the client component, the statement interceptor component, and the distributed storage system. This segmentation allows each component to be independently modified and maintained. The statement interceptor can be updated with new policy rules without affecting the core Hadoop functionality, enabling the system to adapt to changing requirements while maintaining stable core operations.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If policy rules are enforced by modifying existing code, then policy enforcement capability is improved, but code complexity and maintenance difficulty increase

Engineering Contradiction:
Improvepolicy enforcement capabilityVSAvoidcode complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Instead of modifying existing Hadoop code to enforce policies, the patent introduces a separate statement interceptor that handles policy enforcement. This interceptor captures query statements, applies policy rules, and modifies statements as needed before forwarding them to the storage system. This approach adds policy enforcement capability without increasing the complexity of the core Hadoop code base, as the policy logic is isolated in a separate component.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If query statements are intercepted and modified to enforce policies, then security and data access control are enhanced, but processing time and system overhead increase

Engineering Contradiction:
Improvesecurity and data access controlVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The statement interceptor performs policy evaluation and statement modification in advance, before the query is executed by the distributed storage system. By preprocessing the query statements and applying policy rules upfront, the system ensures security and access control are enforced without adding significant overhead during the actual query execution phase. The modification work is done preliminarily, so the core processing can proceed efficiently.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3243148B1Distributed storage and distributed processing statement interception and modification
Publication Date: 2022.08.24 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3243148B1 patent drawingFigure 1
  • EP3243148B1 patent drawingFigure 2
  • EP3243148B1 patent drawingFigure 3

AI summary

A non-transitory computer readable storage medium has instructions executed by a processor to intercept a query statement at a master machine. The query statement is an instruction from a client machine that specifies how data managed by a distributed storage system should be processed and provided back to the client. In the communication between the client and the master machine, tokens associated with the statement are evaluated to selectively identify a pattern match of one of connection pattern tokens, login pattern tokens or query pattern tokens. For the query pattern tokens, altered tokens for the query statement are formed in response to the pattern match to establish a revised statement. The revised statement is produced in response to application of a policy rule. The revised statement maintains computation, logic and procedure of the statement, but alters parameters of the statement as specified by the policy rule.