What underlying programming language is TigerGraph implemented with?

Hi TG team members!

I am now making a comprehensive comparison amongst popular graph databases, and found something interesting. In spite of many competitors, TG still remains dominantly fast when it comes to applications with extremely huge data and long hops between edges. I knew some graph databases strive to achieve a competitive edge by using faster programming languages (such as Golang which introduces special mechanisms like goroutines without thread-local storage) and “twisting” the code. However, these measures seldom come with algorithmic-level improvement (such as from O(N) to O(logN)).

I wonder if I could know with which programming language you implemented TG? Supposedly, it could be C++ or Golang? Thank you.

Hi Muenchen,

Glad you are enjoying the performance of TigerGraph. From https://www.tigergraph.com/tigergraph-db/

Our core system was developed from scratch using C++ and system programming concepts to provide an integrated data technology stack. A native graph storage engine (GSE) was developed to co-locate with the graph processing engine (GPE) for fast and efficient processing of data and algorithms.The GPE is designed to provide built-in parallelism for a MapReduce-based computing model available via APIs. The DB graph is optimally stored both on disk and in-memory, allowing the system to take advantage of the data locality on disk, in-memory and CPU cache.

1 Like

@lennessy Thank you for the reply. It indeed comes with lots of details. Still, I am a little bit curious if we have access to the GSE and GPE directly?

Does someone know something regarding my question in the above? I searched through the official Docs, and found that the underlying graph processing engine (GPE) and the graph storage engine (GSE) seem to be inaccessible to ordinary users. That is, we could not leverage the merits offered by both, and write our know graph library on top of it. Is my understanding right? Correct me if I am taking it wrong. Thank you a lot!