= Data store architecture [partintro] -- {es} is a distributed document store. Instead of storing information as rows of columnar data, {es} stores complex data structures that have been serialized as JSON documents. When you have multiple {es} nodes in a cluster, stored documents are distributed across the cluster and can be accessed immediately from any node. The topics in this section provides information about the architecture of {es} and how it stores and retrieves data: * <>: Learn about the basic building blocks of an {es} cluster, including nodes, shards, primaries, and replicas. * <>: Learn how {es} replicates read and write operations across shards and shard copies. * <>: Learn how {es} allocates and balances shards across nodes. -- include::nodes-shards.asciidoc[] include::docs/data-replication.asciidoc[leveloffset=-1] include::modules/shard-ops.asciidoc[]