I wasn't surprised that it's written in a JVM language, but I was surprised that that language is Java, not JetBrains' very own Kotlin...
I've always been curious about graph DBs and dabbled a bit in them, but for those who have more extensive experience in them-- are they really worth it? Is it that for small scale SQL is better and graph DBs really only matter at scale, or for specific use cases with highly connected data?
I wonder if there's a design decision documented somewhere that makes the existing graph databases like Neo4j, etc. not good enough for Youtrack's use case.
There's also falkorDb (based on redis) to consider
This is the successor of https://github.com/JetBrains/xodus, but with quite some differences.
I played around with something similar before called typedb. It also does object oriented graph model which was a bit weird at first after using sql for a long time, but once it clicks there's a lot of thing that you could express surprisingly nicely
Do they have a doc that says what scale this can operate at?
is it distributed? It would be awesome to use it with graph neural network due to the O(1) graph traversal
summary
* AFAICT, this is not (yet) in active use in production YouTrack, which is still using https://github.com/JetBrains/xodus
* the technical leader of the YouTrackDB project, Andrii Lomakin, was one of the main contributors to OrientDB -- see https://medium.com/@youtrackdb
* YouTrackDB is a fork of OrientDB
* this project makes heavy use of Claude Code
* YouTrackDB does not use Kotlin
* this can be used as a network service (rather than just embedded in a single runtime process like in current production YouTrack), but I've not yet got the docker images working to try.
from the blurb
YouTrackDB is a general-purpose object-oriented graph database developed by JetBrains, used internally in production. It implements the Apache TinkerPop API with Gremlin query language support and features O(1) link traversal, schema-less/mixed/full modes, and encryption at rest. The project is a fork of OrientDB, re-architected under the com.jetbrains.youtrackdb package namespace.
Object databases routinely go away and routinely come back.
Ten years ago I worked with a database called Versant OODBMS (from Actian). I was a junior sysadmin so i was essentially administering it at a very surface level but skimming the documentation (and trying some of the samples) it was very cool that you could pick essentially any random class, implement an interface (and hence a few method) and that was it, you had a database-serializable object.
The main issue was really scaling out (as in, multiple machines) but otherwise was a really great database.
see also https://youtrackdb.zulipchat.com/
[flagged]
Isnt youtrackdb a odd name, if its intended as a general use db? Why link it that much to a specific known product?
Worth clicking into .claude/agents/ in this repo. There are 25 agent definitions, 10 of them code-review dimensions.