Tuesday, November 8, 2022

New top story on Hacker News: Show HN: Cozo – new Graph DB with Datalog, embedded like SQLite, written in Rust

Show HN: Cozo – new Graph DB with Datalog, embedded like SQLite, written in Rust
38 by zh217 | 7 comments on Hacker News.
Hi HN, I have been making this Cozo database since half a year ago, and now it is ready for public release. My initial motivation is that I want a graph database. Lightweight and easy to use, like SQLite. Powerful and performant, like Postgres. I found none of the existing solutions good enough. Deciding to roll my own, I need to choose a query language. I am familiar with Cypher but consider it not much of an improvement over CTE in SQL (Cypher is sometimes notationally more convenient, but not more expressive). I like Gremlin but would prefer something more declarative. Experimentations with Datomic and its clones convinced me that Datalog is the way to go. Then I need a data model. I find the property graph model (Neo4j, etc.) over-constraining, and the triple store model (Datomic, etc.) suffering from inherent performance problems. They also lack the most important property of the relational model: being an algebra. Non-algebraic models are not very composable: you may store data as property graphs or triples, but when you do a query, you always get back relations. So I decided to have relational algebra as the data model. The end result, I now present to you. Let me know what you think, good or bad, and I'll do my best to address them. This is the first time that I use Rust in a significant project, and I love the experience!

No comments:

Post a Comment

Florida School Restricts Access to Amanda Gorman’s Inauguration Poem

By BY AMANDA HOLPUCH from NYT U.S. https://ift.tt/fIlhCeE