First Envision

Ozvěte se.

Stačí pár řádků. Odkazy vítáme. Můžete také napsat e-mail.

nodekin

Grafová databáze, která se vejde do jednoho souboru.

Napsaná v Rustu. Běží uvnitř aplikace, která ji používá, nebo jako jeden malý server, který mluví protokolem, jaký grafové aplikace už znají. Pre-alfa, a říkáme to rovnou.

Co slibuje
Jazyk
Rust
Úložiště
Jeden soubor na databázi
Mluví
Bolt
Stav
Pre-alfa
Jeden souborJeho žurnál6 nodes · 9 relationships
AdaBenCleoDanEvagraphs
nodekin>
MATCH (a:Person {name: "Ada"})-[:KNOWS]->(f)
      -[:LIKES]->(t:Topic)
RETURN f.name, t.name
f.namet.name
"Eva""graphs"
1 řádek
Obr. 01 — Jeden soubor, jeden graf, jeden dotaz. Smyšlená data.

3 867 / 3 897

testovacích scénářů openCypher projde na úložišti odolném proti pádům

0 / 12 022

potvrzených commitů ztracených při 16 tvrdých ukončeních

30 MiB

celý kontejnerový image

0,13 s

od startu po první odpověď

Měřeno 16. října 2026: Docker na Macu se čtyřmi procesory, 300 000 uzlů a 750 000 vztahů.

Pět slibů. Každý spočítaný.

Databáze si důvěru získá čísly, ne přívlastky. Každý slib níže má test, který ho hlídá.

  1. 01Jeden soubor.Každá databáze je jeden soubor a vedle něj žurnál zápisů.
  2. 02Uvnitř i vedle.Knihovna v Rustu přímo v procesu, nebo malý server, který mluví Boltem.
  3. 03Povědomá.Dotazovací jazyk, který grafové aplikace už znají.
  4. 04Odolná.Ukončete ji uprostřed zápisu; žádný potvrzený commit se neztratí.
  5. 05Malá.30 MiB, odpovídá 0,13 s po startu.

Jeden soubor. Vedle něj žurnál.

Každá databáze je jeden soubor a vedle něj žurnál zápisů. Každý commit je na disku dřív, než se vrátí, a souběžné zápisy sdílejí jedno uložení na disk.

Jeden soubor
Jeho žurnál
  1. 1Zapsané do žurnálu
  2. 2Uložené na disk
  3. 3Teprve pak potvrzené
  4. Skupinový commit: souběžné zápisy sdílejí jedno trvalé uložení, takže mnoho malých zápisů stojí zhruba jeden zápis na disk.

V aplikaci, nebo vedle ní.

Stejné jádro, dvě cesty dovnitř. Existující ovladače se k serveru připojí beze změn.

VestavěnáRust
Vaše aplikace
nodekin

Knihovna v Rustu přímo v procesu aplikace. Žádná síť, žádná další služba.

ServerBolt
Vaše aplikace
Bolt
nodekin
server

Jeden malý server, který mluví Boltem, protokolem, který grafové aplikace už používají.

Dnes otestované

Oficiální ovladač pro JavaScript a příkazová řádka.

Zatím nepostavené

Vazby pro Node, Python a C; víc databází na jednom serveru.

Dotazovací jazyk, který grafové aplikace už znají.

Na úložišti odolném proti pádům projde 3 867 z 3 897 testovacích scénářů openCypher. Zbylých 30 se schválně drží chování, na které spoléhají existující aplikace.

3 867/3 897

openCypher

Projde · 3 867Schválně jinak · 30

Každá změna projde celou sadou, takže oprava nemůže potichu rozbít něco jiného.

Ukončit natvrdo. Spočítat commity.

Smyčky, které server ukončí uprostřed zápisu a pak spočítají, co přežilo: s jedním zapisujícím i s osmi najednou.

12 022

potvrzených commitů, 16 tvrdých ukončení

0ztraceno

11 377

potvrzených commitů, osm zapisujících najednou

0ztraceno

Čtení nikdy nečeká.

Každý dotaz čte vlastní snímek bez zámků, zatímco zápisy se commitují společně jedním slotem. Fulltext řazený podle BM25 i přesné vektorové hledání jsou vestavěné.

Čtení 1vlastní snímek · bez zámkuČtení 2vlastní snímek · bez zámkuČtení 3vlastní snímek · bez zámkuZápisyjeden commitovací slot

Malá.

Zhruba 55 000 řádků Rustu v 19 crate, dodané jako jeden malý image.

30 MiB

kontejnerový image

0,13 s

do první odpovědi

Měřeno 16. října 2026: Docker na Macu se čtyřmi procesory, 300 000 uzlů a 750 000 vztahů.

Jak ji stavíme.

Hlavním testovacím případem je párovací jádro, které jsme postavili pro MyMonday: až poběží beze změn, je hotovo.

  1. 01

    Nejdřív rozhodnutí.

    43 záznamů o návrhu, každý jedno rozhodnutí s důvody, psané před stavbou i během ní.

  2. 02

    Sada testů shody.

    Každá změna projde scénáři openCypher, takže oprava nemůže potichu rozbít něco jiného.

  3. 03

    Ukončit natvrdo a spočítat commity.

    Smyčky, které server ukončí uprostřed zápisu a spočítají, co přežilo, s jedním i s osmi zapisujícími.

  4. 04

    Čísla i s podmínkami.

    Rychlost a velikost v absolutních číslech, s datem, strojem i daty, nikdy jako poměr proti jiné databázi.

Pod kapotou.Co bylo těžké a co jsme s tím udělali.

19 crate.

Zhruba 55 000 řádků Rustu v 19 crate, postavených v říjnu 2026.

Skupinový commit.

Souběžné zápisy sdílejí jedno trvalé uložení, takže mnoho malých zápisů stojí zhruba jeden zápis na disk.

Hledání v základu.

Fulltext řazený podle BM25; vektorové hledání zatím přesné.

Zatím nepostavené.

Vazby pro Node, Python a C; přibližné vektorové hledání; řízení přístupu; repliky; zachytávání změn; víc databází na jednom serveru.

Kde je dnes

Pre-alfa. Knihovna v Rustu i server dnes fungují; zbytek je v seznamu výše, poctivě vypsaný.

Další z naší dílny

Z naší dílny
Kontakt

Pořád čtete? Dobré znamení.Napište nám.

Pracujte s lidmi, kteří drží slovo.

  1. 01Stačí pár řádků.
  2. 02Krátký hovor. Otázky, žádná prezentace.
  3. 03Písemná nabídka s jasnou cenou, nebo rovné ne.