Cluster overview

This topic introduces the cluster of Oracle Endeca Server nodes and describes its capabilities.

About the cluster

A cluster is composed of a set of Oracle Endeca Servers, each of which is hosting a cluster node. All servers can serve query requests. The Dgraph process on one of the servers is identified as the leader node; Dgraph processes on all other servers are follower nodes. All of the nodes share and use one copy of the on-disk representation of the data files for the data store.

A cluster node represents one Dgraph process for a specific data store running in the Oracle Endeca Server.

Important: In a clustered environment, to ensure adequate performance and ease of cluster configuration, it is recommended to configure a cluster with each Oracle Endeca Server running a single Dgraph process for the same data store as the Dgraph process hosted on each other Oracle Endeca Server.

The Cluster Coordinator provides communication between the nodes in the cluster. The Cluster Coordinator is also used to notify the follower nodes about data updates and updates to the configuration.

In a cluster, it is important to understand the roles played by the Oracle Endeca Server and the Dgraph process:
  • The Oracle Endeca Server is installed on each physical server that will constitute a cluster node. Each cluster node is represented by a single Dgraph process and its corresponding data store that are started on the Oracle Endeca Server. The data updates, the queries, and the configuration changes are sent to the Oracle Endeca Server that is hosting the leader node.
  • The single Dgraph process on each of the servers is the entity that functions as the cluster node.
  • You configure a cluster at the level of Dgraph processes — indicating to the Cluster Coordinator which Dgraph process is going to be the leader node. The Dgraph processes have access to the same file system on which data files for the data store are shared between all the nodes.

Cluster capabilities

A cluster of nodes provides the following capabilities:
  • Enhanced availability of query processing by the Oracle Endeca Server. In a cluster, if one of the nodes fails, queries continue to be processed by other nodes.
  • Increased throughput by the Oracle Endeca Server. In a cluster, you change throughput capacity by adding or removing physical servers. By adding nodes you can spread the query load across multiple Oracle Endeca Servers without the need to increase storage requirements at the same rate. You can add or remove nodes dynamically, without having to stop the cluster.
In a cluster, you can perform the following administrative tasks: