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:
- Add one or more nodes to a
cluster.
- Remove nodes while
allowing the cluster to continue running.
- Identify a single Oracle
Endeca Server to which you can send data during an initial data load and
subsequent updates. (The administration and configuration updates must also be
sent to this server.) All types of updates are automatically propagated to all
nodes while they continue to process queries.