RDF Graph Storage Structure With Indexed Adjacency Matrix Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for storing RDF graph data in graph databases are inefficient, particularly in handling large datasets, as they lack effective compression techniques and dynamic storage solutions that allow for both read/write operations while maintaining space efficiency.
Innovation Solution
The method involves obtaining adjacency matrices representing groups of RDF tuples and storing them as data structures with arrays of indices, allowing for efficient compression and dynamic querying, using a tree-like data structure with varying index sizes (32-bit, 16-bit, and 8-bit) to optimize storage and query performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If traditional storage methods are used for RDF graph data, then the system can handle large datasets, but the storage space required becomes excessively large and costly
Solution Approach 1:
The patent segments the RDF graph data into multiple adjacency matrices, where each matrix represents a specific predicate. This segmentation allows for independent compression and storage of each predicate's data, reducing overall storage requirements while maintaining query efficiency through targeted access to relevant matrices.
Solution Approach 2:
The patent implements a nested data structure where adjacency matrices are organized in a hierarchical format with indices pointing to sub-divisions. This nesting enables multi-level compression where commonly accessed data is stored at higher levels with faster access, while less frequently accessed data is compressed at lower levels, optimizing both storage space and query performance.
2Quantity of substance
If data compression techniques are applied to reduce storage size, then storage costs decrease, but query performance and access time increase
Solution Approach 1:
The patent performs preliminary organization of data into adjacency matrices with pre-computed indices and sub-divisions before storage. This preliminary action creates an optimized structure that enables fast query access without requiring decompression during query operations, thus reducing both storage size and query access time.
Solution Approach 2:
The patent implements dynamic indexing where the data structure adapts its compression level and access path based on query patterns. Frequently accessed predicates maintain lower compression levels for faster access, while less frequently accessed predicates use higher compression levels, dynamically optimizing the trade-off between storage size and query performance.
3Ease of manufacture
If simple storage structures are used, then implementation is easier, but the system cannot efficiently handle dynamic operations on large datasets
Solution Approach 1:
The patent designs a universal data structure that handles multiple operations (storage, compression, querying, updating) through a unified adjacency matrix framework. This multi-functional structure supports both static storage and dynamic operations on large datasets without requiring separate implementation mechanisms, simplifying overall system complexity while enhancing adaptability.
Data Source
Figure 1
Figure 2
Figure 3A~3B
AI summary
The disclosure notably relates to a computer-implemented method of storing RDF graph data in a graph database comprising a set of RDF tuples. The method comprises obtaining one or more adjacency matrices wherein each adjacency matrix represents a group of tuples of the graph database comprising a same predicate. The method further comprises storing, for each of the one or more adjacency matrices, a data structure comprising an array. The array comprises one or more indices each pointing to a sub-division of the adjacency matrix, and/or one or more elements each representing a group of tuples of the RDF graph database of a respective sub-division of the adjacency matrix.