I work for a Traveltech company based in Berlin. I shifted from frontend and backend positions after COVID days towards a more data-oriented position. I work mostly with BigQuery where we sink all the important data from a live-data Couchbase database cluster. I think my data pipelines brought enough attention inside of the company and they serve us well when it comes to measuring service license agreements (SLA) with our partners and tuning our services.
Unfortunately I don't model data as much as I'd like to. I'm mostly a user of what other teams populate to BigQuery and I haven't found Couchbase Analytic Cluster value just yet. So one day I decided to investigate what else is out there in the database world. One particular thing that can solve a lot of problems is a good graph database.
I need to do a short detour here. Between 2017-2018 I worked at Oracle Labs: Parallel Graph Analytics (PGX) team. I wasn't involved in anything related to graph database development, I worked mostly on the notebook frontend part of a multi-tenant, multi-server, scalable and secure arbitrary code execution engine - Oracle Labs Data Studio. We had a whole bunch of notebooks that demonstrated well the powers of graph modelling. And it has grown on me it seems.
So I did a free OrientDB course on Udemy during which I found that OrientDB was a dead project. I was thinking that it was a sad ending to such a nice project. Fortunately enough after short research, I found that the original author of OrientDB, Luca Garulli started a company and a completely new project that extended the original idea with performance and a new business model in mind. His company is called ArcadeData Ltd. and the project name is ArcadeDB.
What is ArcadeDB about? It is a next-generation multi-model database supporting graphs, key-value, and documents, and contains search engine, vectors and time-series datasets. Each particular model can be accessed with a protocol that serves the purpose the best. As an example, you can connect to ArcadeDB with PostgreSQL drivers when you want to use SQL to query your graph or document models, use Mongo to access document models or Redis queries to access key-value pairs etc.
You can imagine I got a bit excited. I decided to join the community on Discord and find out if there was a way to contribute. I successfully submitted a manifest to scoop extras bucket. Users can now easily install ArcadeDB on their Windows development box:
scoop bucket add extras scoop install arcadedb
After this, there are two shim commands, one to use the console tool:
and another one for launching the server:
The current version contains a bug when rendering the ArcadeDB logo to a terminal console, so I submitted a fix to that one and with the next release, it will render correctly. It is only a cosmetic issue that does not affect any important function. Soon, I'd also like to participate in the building of a formula to install easily on MacOS X using homebrew. Let's see if I can manage to do that.
My experience with the community is so far excellent. Questions and issues are addressed openly and in a friendly way. You can exchange ideas with an author and there is also a very interesting crowd of super-smart individuals participating in the development of core database features.
My journey with graph databases is in the early stage. ArcadeDB already helped me to spark interest and joy in this field. I plan to use not only its graph powers but also documents and even key-value capabilities to model and solve complex business problems. I'm looking forward to this adventure. And also I plan to write about it again.