HarperDB clustering requires two or more installations of HarperDB. Additionally, established network connectivity is required for initial configuration of the node. Once nodes are added to the Cluster, network connectivity can be intermittent and HarperDB will automatically handle queueing of transactions and data flow.
A single instance/installation of HarperDB constitutes a node. A node of HarperDB can operate independently with clustering on or off. Each HarperDB node encapsulates the core HarperDB server as well as a WebSocket server which facilitates distributed communication between HarperDB nodes.
A group of two or more HarperDB nodes that have been connected together via WebSockets become a Cluster. A connection establishes a pipe between two HarperDB nodes, but it does not define data movement.
HarperDB topology refers to the arrangement of Nodes and connections within a Cluster. HarperDB topologies are infinitely flexible and are defined node-to-node through configuration functions.
Channels are a unique namespace used exclusively for publishing to and subscribing from the related HarperDB tables through Clustering. Channels utilize the following naming convention: schema:table. Channels represent a single table within a schema.