Oracle Endeca Server cluster architecture

This topic discusses cluster architecture in the development and production environments.

In the development environment, you can start with a simple single-node cluster configuration and expand it by adding more nodes.

A single-node cluster in the development environment

In a development environment, the simplest version of a cluster may consist of just one server hosting a Dgraph process for a data store, thus representing a single node. This node is by definition the leader node — in a single-node cluster, the only node is considered the leader node by default.

Note: When running a single Oracle Endeca Server, you are not required to have a cluster. Without the cluster services, having a single running Oracle Endeca Server is a valid configuration for starting in the development environment.

This diagram represents a single-node cluster in a development environment:

In this diagram:
  • The Oracle Endeca Server is installed and is hosting a single data store with the Dgraph process running. The Oracle Endeca Server is receiving query requests from Studio (or any other front-end application that is powered by the Oracle Endeca Server).
  • The Oracle Endeca Server's host and port are included in the configuration for connectors from Integrator which can send various kinds of data and updates to the Oracle Endeca Server.
  • The Dgraph process that is designated as the leader node must have write access to a shared file system on which the data for the specific data store is maintained. All other follower nodes that you add later must have read access to this file system.
  • Finally, the cluster is managed by the Cluster Coordinator. In a single-node cluster, the Cluster Coordinator service runs on the same server on which the Dgraph process is running.

A multiple-node cluster in the development environment

In the development environment, many cluster configurations are possible; they depend on the requirements for your application. For example, while a single leader node is always required, the number of additional follower nodes (represented by the Oracle Endeca Server that is hosting the same data store and running the Dgraph process for it) may vary.

This diagram represents a possible multiple-node cluster in a production environment:

In this diagram, starting from the top, the following actions take place:
  • The queries are sent to the load balancer that is configured in front of several servers hosting Studio instances.
  • The instances of Studio point to a second load balancer between Studio and the Oracle Endeca Server cluster.
  • Integrator is configured to communicate with the host and port of the Oracle Endeca Server hosting the leader node to ensure a point of communication for sending data and updates.
  • All nodes in the cluster (Dgraph processes) communicate with each other through the Cluster Coordinator. The Cluster Coordinator service must be running on the leader node.
  • All nodes in the cluster have access to a shared file system on which data files for the data store are stored.

A multiple-node cluster in the production environment

When you move to a production environment, you can duplicate a multi-node development cluster.