Graph Event Processing with In-Memory Views

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graph applications face challenges in providing low-latency and high-throughput event processing for graph-structured data, as traditional relational databases and graph stores are ill-suited for real-time query performance and data freshness, and previous approaches lack support for graph views and event-driven processing.

Innovation Solution

An event processing system that provides distributed, in-memory graph storage with transactional semantics and server-side event processing, allowing for graph views to be defined and monitored, enabling efficient asynchronous event processing and analysis, and supporting low-latency, interactive graph queries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional relational databases are used for graph storage, then data storage capability is provided, but query performance and data freshness deteriorate due to table joins overhead

Engineering Contradiction:
Improvedata storage capabilityVSAvoidquery performance
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent segments graph data into distinct vertex and edge structures with separate storage mechanisms. Vertices store node information while edges store relationship information, allowing independent optimization of query operations without the overhead of traditional table joins. This segmentation enables faster traversal and query performance while maintaining complete graph data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary event processing layer that sits between data storage and application logic. This event-driven architecture mediates between the graph database and applications, providing real-time notifications when graph elements change, thereby ensuring data freshness without requiring applications to continuously query the database.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If high-throughput event processing is implemented, then real-time analysis capability is improved, but system complexity increases

Engineering Contradiction:
Improveevent processing throughputVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements self-service mechanisms where graph elements automatically generate and publish events when their state changes. Each vertex and edge can independently notify subscribed applications of changes without requiring a centralized event management system, thereby achieving high throughput while minimizing system complexity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent establishes event subscription and notification mechanisms in advance, before events occur. Applications pre-register their interests in specific graph elements, and the system maintains these subscriptions ready for immediate notification. This preliminary setup enables high-throughput real-time processing without complex runtime decision-making.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If graph views are defined for monitoring, then query specificity is improved, but processing overhead increases

Engineering Contradiction:
Improvequery specificityVSAvoidcomputational overhead
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by allowing different graph views to monitor only their specific subsets of graph elements. Each view is configured to receive events only from relevant vertices and edges, rather than processing all graph changes. This localized event filtering reduces computational overhead while maintaining precise monitoring of view-specific data.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8819078B2Event processing for graph-structured data
Publication Date: 2014.08.26 SNOWFLAKE INC
  • US8819078B2 patent drawing
  • US8819078B2 patent drawing
  • US8819078B2 patent drawing

AI summary

Examples of the present disclosure may include methods, systems, and computer readable media with executable instructions. An example method for event processing for graph-structured data can include storing graph structured data. The graph structured data includes a plurality of vertex, edge, and/or property graph elements. The example method further includes defining a first graph view of a characteristic of vertex, edge, and/or property graph elements. A subgraph is determined as a subset of the plurality of vertex, edge, and/or property graph elements that have the characteristic of vertex, edge, and/or property graph elements defined by the first graph view. The vertex, edge, and/or property graph elements of the subgraph are processed responsive to a predefined event that occurs on at least one of the vertex, edge, and/or property graph elements of the subgraph.