Live data from Hacker News

YouTrackDB is a general-use object-oriented graph database

github.com

21–30 of 73 posts

Re: YouTrackDB is a general-use object-oriented graph database

#22
post #4
post #3

Earlier quoted context omitted.

That's a good question indeed. Also I wonder why they picked java as the implementation language.

Likely because they are a Java shop. All the IDEs they develop use Java, so they have quite an expertise in low level optimization for this language.

That's true, although, if you look at them, you wouldn't notice. The only mention of JVM you can see in the IDEs is in the About dialog, and the IDEs install and run their own OpenJDK, so no JVM has to be installed globally. Almost as if they were a bit self-conscious about using such an "unsexy" architecture...

Re: YouTrackDB is a general-use object-oriented graph database

#24
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.

Re: YouTrackDB is a general-use object-oriented graph database

#25
post #23
post #21

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...

Youtrack was made long before Kotlin so I suspect the rewrite just wasn't worth it

TIL - YouTrack was first released in 2009, Kotlin in 2011, so I wouldn't call it long before, but definitely before. Guess I'm more interested in programming languages than in task management tools, that's probably why I have been aware of Kotlin longer than of YouTrack...

Re: YouTrackDB is a general-use object-oriented graph database

#26

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 played around with Neo4j and only ever found two domains where it excelled.

- custom app security

- social media

I also think cypher is a brilliant way to query a graph.

Re: YouTrackDB is a general-use object-oriented graph database

#28
post #23
post #21

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...

Youtrack was made long before Kotlin so I suspect the rewrite just wasn't worth it

Thing is, iirc Kotlin is mostly compatiable / interchangeable with Java so they could write any new code in Kotlin.

Re: YouTrackDB is a general-use object-oriented graph database

#29
post #21

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...

You can port files from Java to Kotlin by pressing a button, but Jetbrains has generally not done bulk ports. They leave it up to individual devs to convert a file when it's being worked on, if the diff and VCS history pollution is worth it.

Re: YouTrackDB is a general-use object-oriented graph database

#30
post #22
post #4

Earlier quoted context omitted.

Likely because they are a Java shop. All the IDEs they develop use Java, so they have quite an expertise in low level optimization for this language.

That's true, although, if you look at them, you wouldn't notice. The only mention of JVM you can see in the IDEs is in the About dialog, and the IDEs install and run their own OpenJDK, so no JVM has to be installed globally. Almost as if they were a bit self-conscious about using such an "unsexy" architecture...

Bundling a JDK with the app is the officially sanctioned way to ship Java apps since Java 9, so for over a decade now.
Post reply on HN