Live data from Hacker News

YouTrackDB is a general-use object-oriented graph database

github.com

61–70 of 73 posts

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

#61
post #57
post #54

Earlier quoted context omitted.

Apache AGE seems like a good way to have the battle testedness of Postgres with a more fluent query language. I have only used AGE in smaller projects so far however.

Postgres 19, which is about to be released is adding support for SQL/PGQ.

But only just. It doesn't really replace graph databases. It's mostly a slightly more convenient ways to write certain kinds of queries, but it doesn't come with anything else you might expect from a graph database.

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

#64
post #46
post #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, yo…

That's funny, one of my buddies from college was one of the OG Versant employees (I assume there's not another OODBMS named Versant). That was in the late 80s.

Cool! I used Versant at work between 2016 and 2019!

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

#65
post #52

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?

Most graph databases only offer an advantage in query language, as it allows for more ergonomic graph traversal compared to e.g. recursive CTEs in SQL. However with SQL/PGQ, the same query ergonomics are coming to traditional databases. If you look under the hood there is usually nothing special about graph databases that will make them more performant. If you lay out a query plan side-by side between e.g. Postgres a…

> However with SQL/PGQ, the same query ergonomics are coming to traditional databases.

I like how PG19 with PGQ will kill lots of companies and startups.

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

#66
post #5

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.

Neo4j is a great DB but their license price is egregious for enterprise customers. A few years ago I was involved in negotiating a contract for a small/medium size kubernetes deployment (think around 25 cores) and the annual price was more than the salary of a senior SWE full-time equivalent. See this page for an idea of their prices in 2018: https://blog.igovsol.com/2018/01/10/Neo4j-Commercial-Prices....

There are several MIT/Apache licensed embedded graph databases available, including the one linked from my profile.

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

#67
post #52

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?

Most graph databases only offer an advantage in query language, as it allows for more ergonomic graph traversal compared to e.g. recursive CTEs in SQL. However with SQL/PGQ, the same query ergonomics are coming to traditional databases. If you look under the hood there is usually nothing special about graph databases that will make them more performant. If you lay out a query plan side-by side between e.g. Postgres a…

Recent benchmarking: https://theconsensus.dev/p/2026/05/29/ladybug-duckdb-and-pos...

Response: https://blog.ladybugdb.com/post/better-graph-database-ball/

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

#68
post #55

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?

Graph query languages like Cypher are great, but I am wholly unconvinced by the concept of a dedicated, general-purpose "graph database". IMO, you're better off just using Postgres/etc, modeling your graph data there, and pulling in subsets of your graph for in-memory analysis. This is for the 99% of enterprises that aren't doing online streaming graph analysis on TB-scale graphs, and the other 1% should probably fig…

Just use postgres (or another SQL db) ignores the following innovations:

* Columnar storage * Compressed Sparse Row on disk * Factorized joins * ASP joins, WCO Joins

Details: https://vldb.org/cidrdb/2023/kuzu-graph-database-management-...

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

#69

Earlier quoted context omitted.

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

You mean a JRE, because the whole JDK contains a bunch of things you're never going to need. Mind you, a default JRE redistribution makes your app at least 100+MB. Using jdeps to strip out unneeded things is a good idea if you want it to get down to 25 ish MBs.

JREs haven't been a thing in like a decade I thought.

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

#70
post #58
post #55

Earlier quoted context omitted.

Graph query languages like Cypher are great, but I am wholly unconvinced by the concept of a dedicated, general-purpose "graph database". IMO, you're better off just using Postgres/etc, modeling your graph data there, and pulling in subsets of your graph for in-memory analysis. This is for the 99% of enterprises that aren't doing online streaming graph analysis on TB-scale graphs, and the other 1% should probably fig…

We had general-purpose graph databases before graph databases became a thing. I'm talking about relational databases. Values are the vertices, tuples are the edges, FK constraints are inclusion dependencies. In fact, n-ary relations means a hypergraph database, not just a binary graph db.

Many recent graph databases are built like this. If you compare ladybugdb vs duckdb, the internals are very similar.

The main innovation is the "REL table". You can think of it as a many-to-many relationship table on steroids with optimizations at the storage layer and join algorithms.

Definition of what makes something a graph database (apart from the query language) is contested. But we seem to be moving towards: build a reasonable relational database and then add a "REL table" to it with join optimizations.

Post reply on HN