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=1is exported to avoid virtualized register crashes caused by hypervisor CPUID broadcast bugs.
- Virtualization Note: On Windows client machines running under Hyper-V or Docker Desktop, ensure