Graph Database Text Search with Fuzzy and Linguistic Matching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database systems, particularly relational databases, face challenges in efficiently performing extended text searches on graph data, as they struggle to effectively locate linguistic, exact, and approximate matches within the complex relationships stored in graph structures.

Innovation Solution

A system and method are provided that utilize a data processor and memory to perform text searches on graph data stored in a database, including exact, fuzzy, and linguistic searches by parsing requests in declarative graph queries, and executing these searches across vertex and edge tables, enabling the identification of matches within the graph data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If relational databases are used to store graph data, then data can be organized into tables with implicit relationships, but the system struggles to efficiently perform extended text searches including linguistic matches

Engineering Contradiction:
Improvetext search capabilityVSAvoidsearch efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the search functionality into three distinct types: exact match search, fuzzy match search, and linguistic match search. Each search type is handled by dedicated processing logic that operates on the graph data structure, allowing efficient execution of each search variant without compromising the others.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary search processing layer that sits between the relational database storage and the query interface. This intermediary layer translates declarative graph queries into efficient search operations on the stored graph data, enabling extended text searches without requiring changes to the underlying database structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If graph databases are used to explicitly store relationships, then data relationships are clearly defined, but current systems face challenges in performing extended text searches on this structured data

Engineering Contradiction:
Improverelationship accuracyVSAvoidsearch functionality
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent creates a universal search mechanism that works across all types of graph data regardless of the specific relationship type or data structure. The search system can handle vertices, edges, and attributes uniformly, applying the same search algorithms (exact, fuzzy, linguistic) to any part of the graph structure.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent changes the search parameters from traditional relational database text search to graph-specific search parameters that consider the hierarchical and relational nature of graph data. This includes searching within vertex labels, edge types, and attribute values while respecting the graph structure.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If traditional text search methods are applied to graph data, then simple exact matches can be found, but the system cannot effectively locate linguistic matches such as derivations and conjugations

Engineering Contradiction:
Improvematch accuracyVSAvoidsearch type flexibility
Core Design Contradiction:
Measurement precisionVSAdaptability or versatility

Solution Approach 1:

The patent implements a dynamic search system that can adapt its matching behavior based on the search requirements. The system can switch between exact match mode, fuzzy match mode, and linguistic match mode, and can even combine multiple search types in a single query, making the search functionality both precise and versatile.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent performs preliminary processing of the graph data during the search operation, including tokenization, stemming, and lemmatization of text attributes before comparison. This preliminary action enables linguistic matches to be performed efficiently without compromising the precision of exact matches.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10769188B2Text searches on graph data
Publication Date: 2020.09.08 SAP SE
  • US10769188B2 patent drawing
  • US10769188B2 patent drawing
  • US10769188B2 patent drawing

AI summary

A method for performing text searches on graph data stored in a database is provided. The method may include receiving, from a client, a request to perform a text search to locate a target string in the graph data stored in the database. The request may be in accordance with a declarative graph query configured to query the graph data stored in the database. The response to the request may include performing the text search to locate, in the graph data stored in the database, one or more records of strings that are exact matches, approximate matches, and/or linguistic matches for the target string. Related systems and articles of manufacture, including computer program products, are also provided.