Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
slater — Database a grafi a basso consumo di memoria con supporto Bolt+TLS, crittografia at-rest e vettori, progettato per casi d'uso di repliche locali di grafi. | Kitploit
Strumenti/GitHubGitHub/hikari-systems/slater
Autenticazione e AutorizzazioneStrumenti di Crittografia/DecrittografiaSicurezza di ReteSicurezza CloudUtilità e FrameworkSicurezza dei Database
GitHubhikari-systems/slater

slater

Database a grafi a basso consumo di memoria con supporto Bolt+TLS, crittografia at-rest e vettori, progettato per casi d'uso di repliche locali di grafi.

Vedi Repository
1002181 mese faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Slater

CI Release

Versione attuale: v0.25.2 — tutte le release.

In una riga: Slater serve grafi che non stanno in memoria — centinaia di milioni di nodi e miliardi di relazioni in poche centinaia di MB di RAM — tramite il Bolt standard, quindi qualsiasi driver neo4j funziona senza modifiche, con la ricerca vettoriale nativa su disco accanto al grafo, e accetta scritture live e durevoli senza rinunciare a tutto questo. La memoria residente è determinata da un budget di cache che scegli tu, non dalla dimensione del grafo.


Scorciatoie

Perché Slater esisteLetture e scrittureCosa ottieniCaratteristiche
Esecuzione con DockerCome funzionaIl livello scrivibileBackend di storage
MountConfigurazioneACLHealth check
Esempio praticoSviluppoPrestazioniLicenza
Memory store per Graphiti📖 Manuale completo

Perché Slater esiste

Un database a grafo memorizza i dati come cose (nodi) e relazioni tra loro (archi), con le relazioni trattate come cittadini di prima classe. È ciò che ti serve quando le domande riguardano connessioni piuttosto che righe — "chi è entro tre salti da questo conto?", "qual è l'intera catena di dipendenze dietro questa build?", "quali conti condividono un dispositivo, un indirizzo e una carta?" — le query che in SQL diventano una palude di join ricorsivi ma che in un grafo emergono naturalmente.

La lamentela più comune sui database a grafo è che non scalano oltre ciò che puoi tenere in RAM. Molti di essi (ad es. neo4j, Memgraph, FalkorDB, ecc.) mantengono l'intero grafo residente: un grafo da 40 GB richiede 40 GB di memoria — per istanza. Vuoi una replica per regione, per tenant o per pod? Moltiplica il costo. E oltre una certa dimensione semplicemente non si caricano: ad esempio il grafo Wikidata da 90 milioni di nodi / 1,5 miliardi di archi richiede ~64–128 GiB residenti, quindi i motori in memoria non riescono ad aprirlo affatto.

Slater è la confutazione. Invece di caricare il grafo in memoria, lo compila una volta, offline: slater-build trasforma i tuoi dati in un'immagine su disco immutabile e indirizzata al contenuto, e un numero qualsiasi di server Slater serve poi quell'immagine tramite Bolt (così i tuoi driver neo4j esistenti funzionano e basta), caricando i blocchi on demand e tenendo residente solo un budget di cache fisso. È così che lo stesso grafo da 90 milioni di nodi viene servito da poche centinaia di MB di RAM — dimensione del grafo e costo di memoria sono disaccoppiati. Un grafo da 4 GB e uno da 400 GB costano la stessa RAM da servire, quindi puoi distribuire repliche di lettura economiche e senza stato e lasciare che sia lo storage, non l'heap, a contenere il grafo.

Questo lo rende un candidato naturale per i knowledge graph dietro RAG, grafi di raccomandazione e identità, grafi di dipendenze — qualsiasi cosa grande e interconnessa tu voglia interrogare in modo economico e frequente. La ricerca vettoriale nativa su disco vive proprio accanto al grafo, così lo stesso motore è anche il livello di retrieval per gli embedding.

Compilato una volta, però, non significa congelato. Quell'immagine è una base, non uno stato finale: un livello di scrittura opt-in si trova sopra di essa, quindi un grafo live può essere corretto ed esteso senza ricostruire nulla.

Letture e scritture

Il core è immutabile; il grafo no. Attiva il livello scrivibile (delta.enabled) e scrivi tramite Bolt — correggi una proprietà, aggiungi un nodo, ritira un arco — e la modifica atterra in modo durevole, senza ricostruire l'immagine. Ciò che mantiene bassi i costi sul lato lettura è dove vivono le scritture.

Le scritture si accumulano in un livello log-structured-merge (LSM) sopra il core immutabile: un write-ahead log e una tabella in memoria, che si riversano in segmenti delta immutabili, riassorbiti in un nuovo core da una consolidation periodica. Cosa ottieni:

  • Le letture su un grafo non scritto costano esattamente quanto prima. Un delta vuoto è un unico ramo prevedibile, non un merge — il percorso di lettura è byte-identico a prescindere che il livello scrivibile sia attivo o meno.
  • Il costo di lettura di una scrittura scala con la dimensione del delta, non con quella del grafo. Risposte sull'intero grafo — count(*), le marginali su etichette e tipi di relazione — restano letture di metadati anche con scritture in sospeso: il delta mantiene i propri contatori, quindi un count(*) su un core da 91,6 milioni di nodi con mezzo milione di scritture in attesa risponde comunque in decine di millisecondi senza toccare un singolo blocco.
  • Accusato significa durevole. Un singolo writer drena la coda e restituisce SUCCESS solo dopo l'fsync che copre la scrittura. Raggruppa le tue scritture e diventano economiche — una scrittura-UNWIND committa un fsync per batch, non per riga.
  • Scritture per business key, in entrambi i dialetti. MERGE / MATCH … SET / DELETE (e CREATE / REMOVE, delete con detach, scritture di relazioni) basate sulla proprietà identità di un nodo — oppure le equivalenti istruzioni di modifica ISO GQL (INSERT / SET / REMOVE / DELETE), che si appoggiano allo stesso percorso. Correggi, inserisci, fai upsert e ritrai, su nodi e archi, indirizzati nel modo in cui i tuoi dati sono già strutturati.

Con il livello disattivato — il default — Slater serve il puro core immutabile e rifiuta le scritture. Vedi Il livello scrivibile per il modello completo.

Sul nome. Slater prende il nome dall'agente della CIA in Archer (una grande serie) che insiste sull'uso di un solo nome — "Just… Slater" — e uno dei miei personaggi preferiti della serie. Vedi la pagina wiki del personaggio.

Cosa ottieni

Scarica lo strumento