HD SDK User Guide¶
Configure the SDK by passing the Proxy endpoint, providing valid X509 client certificates, and registering an asynchronous channel to consume Found records natively.
For GraphQL-based queries, the endpoint is exposed at /query. You can use the GraphiQL playground on port 8080 to test complex analytical queries.
Hardware Sizing, Planning, and Scaling (Client/SDK Side)¶
To prevent query bottlenecks and expensive computation on the storage cluster nodes, the SDK runtime processes analytical queries directly at the client edge.
Embedded Analytical Engines¶
The C++ SDK client runtime (fermihdi_client) is packaged with thin wrappers for Python, Go, Rust, JavaScript, R, Julia, Mojo, and Scala. It embeds three high-performance analytical engines that execute queries directly on raw, memory-mapped Apache Arrow bitframes:
* SQL Processor (DuckDB): Executes complex relational SQL queries locally.
* Vector Search (USearch): Performs dense vector similarity matches and indices.
* Graph Analytics (cuGraph): Handles massive graph traversal and PageRank algorithms.
Client-Side Hardware Acceleration¶
The SDK dynamically detects host hardware to accelerate client-side processing:
* GPU Auto-Detection: When the SDK initializes, it checks for local discrete GPUs (Nvidia CUDA or AMD ROCm).
* Graph/Vector Acceleration: If a GPU is present, the SDK automatically forwards graph-based analysis to local GPU cores using cuGraph. This offloads heavy analytical work from the Storage Nodes, allowing them to focus exclusively on high-speed stream filtering and I/O.
* CPU Vectorization (AVX-512): For CPU-only clients, the embedded DuckDB and USearch engines utilize local vectorization (AVX2 / AVX-512) to compile query constraints.
* Virtualization Note: On Windows client machines running under Hyper-V or Docker Desktop, ensure DISABLE_AVX512=1 is exported to avoid virtualized register crashes caused by hypervisor CPUID broadcast bugs.