Sous le capot

Architecture multithread

HotKV™ exécute à la fois les E/S réseau et les commandes sur chaque cœur, sur un seul magasin partagé. Chaque thread worker lit, analyse et exécute les commandes de ses propres connexions, si bien qu’une seule instance utilise toute la machine et que le débit augmente avec les cœurs que vous lui attribuez.

  • 300 commandes de base
  • 170+ commandes d’IA et d’entreprise
  • RESP2 / RESP3
  • C++20
  • Linux x86_64 · ARM64
Tous les cœurs

Vrai parallélisme

Chaque worker exécute en parallèle les commandes de ses propres connexions. Il n’y a pas de thread de commandes unique à saturer : le débit croît avec le nombre de cœurs.

Par clé

Concurrence fine

L’espace de clés est découpé de sorte que les commandes sur des clés différentes s’exécutent en même temps et s’attendent rarement entre elles.

Sans GC

Latence prévisible

Un moteur C++ natif, sans ramasse-miettes ni pause stop-the-world. Les snapshots sont écrits sur un thread d’arrière-plan plutôt que par un processus forké : sauvegarder ne double donc pas la mémoire.

Le chemin critique

La vie d’une commande

Chaque requête traverse les mêmes quatre étapes, sur le cœur qui l’a reçue.

01

Analyse

Lit la requête, y compris les lectures partielles. HotKV parle RESP2, RESP3 et les commandes inline, avec bascule de protocole via HELLO.

02

Aiguillage

Trouve la commande et vérifie son arité, ses drapeaux et la position de ses clés avant le début de l’exécution.

03

Exécution

Exécute la commande sur ses clés. Les clés expirées sont supprimées lorsqu’on y accède, ainsi que par un balayage en arrière-plan.

04

Réponse

Envoie la réponse dans la version du protocole négociée par le client.

Intégré au moteur

Bien plus qu’un cache

Le même moteur parallèle fournit 300 commandes de base, huit politiques d’éviction et les sous-systèmes ci-dessous, ainsi que plus de 170 commandes d’IA et d’entreprise sur les offres sous licence. Aucun module à ajouter.

Persistance

Snapshots + AOF

Des snapshots binaires écrits de façon atomique, plus un fichier en ajout seul avec fsync configurable (always, everysec, no) et compactage BGREWRITEAOF.

Scripts

Lua 5.4, en bac à sable

EVAL et EVALSHA exécutent des scripts de façon atomique dans un runtime Lua 5.4 en bac à sable via hotkv.call(), redis.call() étant conservé comme alias de compatibilité. Des bibliothèques de fonctions nommées sont fournies via FUNCTION et FCALL.

Recherche vectorielle

Index HNSW

Les commandes VSIM fournissent une recherche approximative des plus proches voisins sur des index HNSW, avec les distances cosinus, L2 et produit scalaire, y compris des requêtes filtrées par tags.

Probabiliste

Sketches et limitation de débit

HyperLogLog, filtres de Bloom, Count-Min Sketch et suivi des éléments les plus fréquents Top-K, plus une limitation de débit GCRA côté serveur avec contrôle des rafales. Aucun calcul côté client n’est nécessaire.

Observabilité

Natif Prometheus

Un endpoint HTTP de métriques intégré (désactivé tant que vous n’avez pas défini metrics-port) expose le nombre d’appels et la latence par commande. LATENCY HISTOGRAM et INFO latencystats rapportent p50, p99 et p99.9, et HOTKEYS classe vos clés les plus consultées.

Sécurité

ACL + TLS

Un contrôle d’accès par utilisateur délimite les commandes, les clés et les canaux, avec des mots de passe hachés. TLS est terminé dans le processus, pour les connexions client comme pour les liens de cluster et de réplication. L’offre On-Premise ajoute des rôles avec authentification unique LDAP et OpenID Connect.

Mettez chaque cœur au travail

Lancez une instance gérée sur HotKV Cloud, ou exécutez HotKV dans votre propre centre de données avec une licence on-premise. Même moteur, même architecture, chaque cœur.

300 commandes de base170+ commandes d’IA et d’entrepriseRESP2 / RESP3C++20Linux x86_64 · ARM64