Graph Database Text Search with Fuzzy and Linguistic Matching
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
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.
Data Source
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.


