Graph Partitioning for Ternary Key Search Resource Limits
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing search technologies, such as Ternary Content Addressable Memories (TCAMs), face challenges with high power consumption and limited scalability when dealing with ternary keys containing wildcards, especially when these wildcards are distributed chaotically, leading to inefficient search performance.
Innovation Solution
Implement a graph partitioning method that utilizes quantum key and pattern-based partitioning to optimize the representation of ternary keys, minimizing wildcard replication and enabling efficient edge key retrieval, thereby constructing graphs that can be searched more effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If TCAM is used to implement ternary key search, then search performance is high and deterministic, but power consumption is extreme and scalability is limited
Solution Approach 1:
The patent replaces the hardware-based TCAM system with a software-based graph partitioning and hashing approach. Instead of using dedicated hardware circuits for ternary key search, the invention uses general-purpose computing resources to construct graphs from ternary keys and perform searches algorithmically, thereby eliminating the need for power-intensive specialized hardware while maintaining search functionality.
Solution Approach 2:
The patent transforms the search problem from a hardware-oriented approach to a parameter-oriented computational approach. By changing the representation of ternary keys into graph structures with partitioned nodes and edges, and using hashing algorithms to manage the search space, the system achieves scalable performance without the power consumption constraints of TCAM.
2Reliability
If TCAM is used for ternary key search, then search performance is guaranteed independently of key statistics, but scalability is limited to a few hundred thousand keys
Solution Approach 1:
The patent segments the large set of ternary keys into multiple smaller subsets by partitioning them into different graphs based on their structural properties. This segmentation allows the system to handle much larger total numbers of keys by distributing them across multiple manageable graph structures, each of which can be processed efficiently using algorithmic approaches.
Solution Approach 2:
The patent adds a dimensional transformation by converting ternary keys into graph representations with multiple nodes and edges. This dimensional change from flat key storage to multi-dimensional graph structures enables the system to scale beyond the limitations of traditional TCAM by utilizing computational algorithms that can process the graph representations efficiently.
3Productivity
If hashing algorithm is used for binary keys, then computing is independent of table size and scalability is high, but performance degrades when wildcards are present
Solution Approach 1:
The patent segments the key search problem by partitioning ternary keys into different graphs based on their wildcard content and structure. Keys with wildcards are separated from binary keys and handled through specialized graph partitioning techniques, allowing the hashing algorithm to maintain its efficiency for binary keys while the graph structure handles wildcard-containing keys.
Solution Approach 2:
The patent applies different processing techniques to different parts of the key space. Binary keys without wildcards are handled using efficient hashing algorithms, while ternary keys containing wildcards are processed through graph partitioning and construction methods. This local differentiation of processing approaches allows each method to operate in its optimal performance range.
Data Source
AI summary
Methods, apparatus, and software for on-the-fly graph partitioning resource utilization. The graph includes a plurality of subgraphs comprising hierarchies of subsets of ternary keys having one or more wildcards. A move operation to be executed is identified under which ternary keys and associated structures for a subset in a source subgraph are to be moved to a destination subgraph. Prior to executing the move operation, a projection is made to whether there are sufficient memory and hardware resources to execute the move operation without hitting resource capacity limits. The move operation is executed when it is projected resource capacity limits will not be hit. Under one approach, an emulation of the move operation considering resource utilization required to execute the move is performed. Under another approach, current resource utilization for the graph across memory resources and hardware resources are compiled and peak resource utilization for the move operation is projected.


