Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
Clustering, in the context of databases, refers to the ability of several servers or instances to connect to a single database. An instance is the collection of memory and processes that interacts with a database, which is the set of physical files that actually store data.
Clustering offers two major advantages, especially in high-volume database environments:
Clustering takes different forms, depending on how the data is stored and allocated resources. The first type is known as the shared-nothing architecture. In this clustering mode, each node/server is fully independent, so there is no single point of contention. An example of this would be when a company has multiple data centers for a single website. With many servers across the globe, no single server is a “master.” Shared-nothing is also known as “database sharding.”
Contrast this with shared-disk architecture, in which all data is stored centrally and then accessed via instances stored on different servers or nodes.
The distinction between the two types has become blurred recently with the introduction of grid computing or distributed caching. In this setup, data is still centrally managed but controlled by a powerful “virtual server” that is comprised of many servers that work together as one.