Názor k článku evitaDB: spuštění, definice schématu a naplnění daty od cc - Divej, já jsem pracoval na pár projektech, kde...

  • Článek je starý, nové názory již nelze přidávat.
  • 5. 2. 2024 12:56

    cc

    Divej, já jsem pracoval na pár projektech, kde se zpracovávalo celkem velké množství dat, a pokud to bylo v jazyce s GC, tak GC byl od nějaké fáze ten největší problém. A je celkem jedno jaký jazyk to je, i když jsou jazyky, kde si člověk může zavolat mmap a mít svoji vlastní ne-gc paměť (třeba v go to jde).

    Až se takový projekt dostane do fáze, kdy už je celkem použitelný, tak se začne řešit to, aby se alokovalo míň paměti a aby se některé věci znovu používali (object pools, atd...), aby se ulehčilo GC. A toto se děje vždycky...

    V jazyce, kde si člověk může alokovat sám je to v pohodě, protože se dají použít např. inkrementální alokátory a pak zahodit všechno najednou - a toto je asi to nejlepší řešení při zpracovávání požadavků, kdy se po zpracování všechny dočasné data prostě zahodí (nic z těch dat není potřeba, GC je úplmý waste of cycles v tomto případě).

    Navíc, při in-memory DB chci určitě použít SIMD, protože jaký má smysl volat stovky funkcí při zpracování jednoho řádku, když všechno mám k dispozici... Kolik managed jazyků umí SIMD? Snad jen C#...

    A porovnávání čehokoliv s MongoDB si strč někam - MongoDB je sračka :)