Skip to content

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.