CIDR 2023 Database Conference from Memgraph’s Perspective
I've attended an excellent database conference called CIDR recently. In this post, I would like to give an overview of the conference, highlight some exciting talks and mention the growing graph community within the database space.
In addition to all the details mentioned on the official conference website, I would like to point out a few specific things. CIDR is a top-tier database conference. It's a single-track conference that offers a huge opportunity to have deep conversations with almost everyone attending. Of course, there were a few sponsored talks, but marketing was very technical and offered many exciting tech details. At the end of the first and second day, Gong Show and Startup Panel were both hilarious and informative. I guess you'll have to attend to get the experience 🤭
Motivation to be there
Traditionally Memgraph wasn't attending many database conferences since we were (and still are) very busy delivering great database experience to our graph users. By getting Memgraph out there, we've met many new people from the industry, and we were happy to widen our circle. The exchange of ideas will surely lead to new business opportunities, partnerships, and collaborations. Memgraph didn't give a talk this time, but even talking to people is an excellent opportunity to get exposure.
For example, I've met the KùzuDB team, Semih and Guodong, who wrote fantastic post definitely worth reading because it gives an excellent breakdown of graph database technologies. Lastly, a conference like this keeps everyone informed about what’s happening in the industry and offers enormous inspiration for future work since many talks mention open problems worth solving. 🚀
There were many deep-tech database talks. When it comes to databases, distributed storage and execution is always a hot topic, as well as correctness guarantees. The following two talks gave the most insights into these areas.
The answer to this and similar titles is NO! 😂 Viktor gave an overview of different architectural approaches to distributed OLTP cloud-native systems. Shared-Writer with Coherent Cache seems like the best approach from the scalability perspective. However, the downsides are overall system complexity and still, there is a problem with the skewed writes scalability. A Blueprint for a Shared-Caching DBMS part is very interesting. I guess there will likely be many research papers and exciting work attempting to offer better scalability characteristics on the write side of cloud-native OLTP systems. 📜
Developer’s Responsibility or Database’s Responsibility? Rethinking Concurrency Control in Databases
This talk (and the paper behind it) really hit me hard. The authors analyzed 93 bugs from 46 different open-source software projects. What to say other than this spreadsheet is impressive! The author's conclusion at the end of the talk was a bit blurry, but I couldn't agree more with Thomas when he suggested that a default isolation level should be at least Snapshot Isolation. Furthermore, I have to mention that Memgraph has Snapshot Isolation by default, while systems like Neo4j and Postgres offer Read Committed. OK, Postgres has more levels, but the default is Read Committed, and who knows how many application development hours were "invested" in dealing with problems caused by that? Hopefully, in the near future, I'll find some time to go a few levels deeper and unpack some of these bugs. It might be exciting to explore in more detail the implications of different isolation levels for specific enterprise applications. 🤔
Graphs on CIDR
There were two very graph-oriented talks + A Fix for the Fixation on Fixpoints talking about recursive SQL queries, which is a very related topic.
I already mentioned Kùzu folks. They are doing an outstanding job of explaining what they do. Just follow their web 😀 They presented KùzuDB paper which brings interesting concepts to the graph query executions called factorization, S-Join and ASP-Join.
The second graph paper was DuckPGQ. It’s also a high-quality one. Competent Graph System Design section outlines a proposal for key components a high-performant graph database system should have. The most exciting part was how DuckDB was extended to implement the Multi-Source BFS algorithm seen in many enterprise applications. Last but not least, the paper outlines SQL/PGQ, the syntax for Property Graph Queries within the upcoming SQL standard.
All this development in the graph space is very exciting. More and more research is related to graph databases, which means the quality of the underlying tech and, more importantly, from the user perspective, the quality of graph database products is rising. SQL is getting the PGQ as a part of the standard + I would also like to point out the GQL, which is also an upcoming standard. Who will implement it first? 👀
Conclusions and thanks to the organizers
So these are the topics and talks that piqued my interest at the CIDR conference, I hope the papers I recommend turn out to be an interesting read for you too!
To experience the power of graphs, go to https://memgraph.com/download and give Memgraph a try!