There are different ways for querying, storing, managing and retrieving data in the ONgDB graph database. For a majority of users querying ONgDB with Geequel is a great experience when it comes down to performing efficient and effective graph database traversals and interactions within the graph data model. For specific applications that entail further control on how graphs can be stored and queried in high performance, multi-threaded manner, a native Java API offers low-level access to graph database for granular control over the traversal and retrieval from the Open Native Graph Database (ONgDB). When making use of the Java API, you’ll realize that you’re given great freedom and flexibility to communicate to the ONgDB graph database on how to best query your data for optimal results.
The Open Native Graph query language is an innovative SQL-like syntax designed for graphs that takes a more declarative approach. That means, you can tell ONgDB what you desire — not based on how to acquire it. When running a Geequel query, you’re expressing to the graph database what you need from it. In return, ONgDB has a compiler that translates the query into an executable plan describing data operation sets. The plan is conveniently arranged in a way that the obtained data from the graph is processed in a manner for each operation until a result is returned from the Geequel query.
The usual way for communicating with ONgDB consists of sending a Geequel query and parameters via an initiated POST request to the ONgDB database server. Frameworks or libraries managing wrappers around the REST API ONgDB methods from a programming language are called “drivers.” These drivers function by moving numerous queries and results over the network. ONgDB then operates by making further translation of the declarative syntax of Geequel into an executable plan.
ONgDB currently offers driver support for major programming languages. These include Python, Ruby and many others. These language drivers make use of the same APIs and are conveniently made available. There are ONgDB drivers present in almost all major programming language with a majority following current database driver methods and idioms.
Queries are considered to be important especially when it involves the traversal of many nodes and relationships within ONgDB. Completely understanding how data is being generated, filtered, and processed is useful in knowing how to optimize queries to ensure the best performance possible. This will also help you determine when you can use Geequel effectively and when you need to go to an unmanaged extension where you can utilize the low-level Java APIs for querying the ONgDB graph database. The Geequel compiler will do what it can to come up with a feasible plan that functions and works smoothly. It’s consistently being made smarter with each and every release. Yet it’s relevant for developers to understand what the end result is and consider how ONgDB query adjustments can be done to achieve an optimal result.
GraphGrid Connected Data Platform uses Geequel extensively as a way of describing actions and configurations from configuring search indexing policies to secure dynamic APIs.