The Oracle Endeca Server is the query engine that provides the foundation for all solutions that utilize it.
The Oracle Endeca Server uses proprietary data structures and algorithms that allow it to provide real-time responses to client requests. The Oracle Endeca Server stores the data files that were created after your source data is ingested. After the data files are stored, the Oracle Endeca Server receives client requests via the application tier, queries the data files, and returns the results.
The Dgraph is the name of the process for the data store created in the Oracle Endeca Server. Because the Dgraph is key to every implementation, its performance is critical. A typical implementation includes the Oracle Endeca Server that is running one or more Dgraphs.
The Oracle Endeca Server is designed to be stateless. This design requires that a complete query be sent to it for each request. The stateless design facilitates the addition of Oracle Endeca Servers for load balancing and redundancy — any replica of an Oracle Endeca Server can reply to queries independently of other replicas.
Consequently, configuring additional Dgraph processes as nodes in a cluster increases availability of request processing. If a node in the cluster goes down, at least one of the Dgraphs running in the cluster continues to reply to queries. In addition, total response time is improved by using load balancers to distribute queries among the nodes in the cluster.