4 ms·
Apache AGE: PostgreSQL-based graph database
- mrslave 6y agoIs there anything PostgreSQL can't do? Incidentally at work I find myself repeatedly having fun with MariaDB fans. They got started with something and never considered the alternative. Some of the responses to "yeah but what can it do that MySQL can't?" * Parser errors instead of undefined behaviour (e.g. MySQL allows you to query non-aggregate functions that are not in the group by clause) * Boolean type * Window functions (MySQL has just caught up here) * Functions/stored procedures/other languages (MySQL has some of this but on PostgreSQL it is nice) * Less gotchas WRT transaction integrity * Extensions! I'm sure you guys can fill in the rest better than I can. I'm really interested in the possibility of using CitusDB in our project but I just can't get enough information suitable for small-medium enterprise.
- setr 6y agoRegarding MySQL -- check constraints were parsed and accepted without error/warning until v8.0.16. An act so offensive to the sensibilities that I personally consider it enough of a reason to write off the database entirely. It's just fucking rude
- Tostino 6y agoFirst time I played with MySQL I was bit by this when I was writing a personal app that was supposed to work with MySQL and Postgres. Thought all my schema was fine, then ended up running into a whole bunch of bugs my check constraints were supposed to prevent when using MySQL. I just dropped support for MySQL after that.
- tyingq 6y agoI wonder if this feature request might get attention soon: https://bugs.mysql.com/bug.php?id=12654 https://bugs.mysql.com/bug.php?id=12654
- redis_mlc 6y agoNote: Most of the comments in the parent are out of date. There's nothing wrong with using Mariadb/MySQL - Google and Facebook have made trillions of dollars using them. In addition, there's an implication that MySQL has to have all the features of Postgres, which isn't true. I still prefer the grant and replication features of MySQL over Postgres.
- ramraj07 6y agoPartitioning/clustering data apparently
- mark_l_watson 6y agoLooks like a great idea. I wish that this project supported a third option: RDF data and SPARQL queries. For my work I almost never touch property graphs and Cyper, but use RDF and SPARQL everyday. Anyway, I am happy to see this project because it fills a great use case.
- tasogare 6y ago> RDF data and SPARQL Please no. There are already a ton a triple stores (which all seems to have bad performances when deployed in real), we don’t need that failed class of technology (the stringly-typed web) to infect sane products.
- jerven 6y agoConsidering this has the same basic structure of an edge (quad) and label (resource) table like the TripleStores of 2009 why would you expect any better performance of this than from those?
- mark_l_watson 6y agoActually, RDF and SPARQL are great technologies. I am on a Knowledge Graph team at a medical AI company, and we made a decision to go with RDF rather than labeled property graphs. Both approaches have pros and cons and a decision is application specific.
- tluyben2 6y agoWondering how it will stack up performance wise against specialized graph dbs like dgraph which has been handling very well in our tests.
- Railsify 6y agoThis is great! Thanks Apache! I'm interested how the mature product will stack up against Neo4j. Neo recently changed their licensing model. They used to be open source, then they switched to open core, which means you can use the feature light 'Community' version under an opensource license, but the 'Enterprise' fork is now closed source. Until recently the community version did not have the ability to kill a long running query without rebooting the entire database, this was thankfully fixed but the spirit of that long lived defect was clear. As soon as Apache AGE supports all of the Cypher syntax we use, I'll be switching over from the 3.x version of Neo4j Enterprise to AGE. Hopefully AGE works nicely with the available HA PostgreSQL features.