This is an automated email from the ASF dual-hosted git repository.

weichiu pushed a commit to branch HDDS-9225-website-v2
in repository https://gitbox.apache.org/repos/asf/ozone-site.git


The following commit(s) were added to refs/heads/HDDS-9225-website-v2 by this 
push:
     new b1a7e2a8 HDDS-11933. [Website v2] [Docs] [Core Concepts] Architecture 
(#114)
b1a7e2a8 is described below

commit b1a7e2a8a918bb700b39925f7e0670a35e72764a
Author: Wei-Chiu Chuang <[email protected]>
AuthorDate: Tue Dec 16 10:14:15 2025 -0800

    HDDS-11933. [Website v2] [Docs] [Core Concepts] Architecture (#114)
---
 docs/03-core-concepts/01-architecture.md    |  60 +++++++++++++++++++++++++++-
 docs/03-core-concepts/FunctionalOzone.png   | Bin 0 -> 55334 bytes
 docs/03-core-concepts/ozoneBlockDiagram.png | Bin 0 -> 45218 bytes
 3 files changed, 58 insertions(+), 2 deletions(-)

diff --git a/docs/03-core-concepts/01-architecture.md 
b/docs/03-core-concepts/01-architecture.md
index 8d88c62c..4b338084 100644
--- a/docs/03-core-concepts/01-architecture.md
+++ b/docs/03-core-concepts/01-architecture.md
@@ -1,5 +1,61 @@
 # Architecture
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
 
-**TODO:** File a subtask under 
[HDDS-9857](https://issues.apache.org/jira/browse/HDDS-9857) and complete this 
page or section.
+      http://www.apache.org/licenses/LICENSE-2.0
 
-A high level overview of Ozone's components and what they do.
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+
+## Overview
+
+Ozone is a fault-tolerant, distributed object store optimized for Big Data 
workloads. Its primary design goal is scalability, aiming to support billions 
of objects.
+
+Ozone achieves better scalability by separating namespace management from 
block space management.
+
+- The **Ozone Manager (OM)** daemon handles namespace-related tasks, like 
managing volumes, buckets, and keys.
+- The **Storage Container Manager (SCM)** manages the physical storage layer, 
including the data nodes and the blocks that form the data.
+
+## Core Components
+
+The block diagram below illustrates Ozone's main components and their 
interactions.
+
+![Architecture diagram](ozoneBlockDiagram.png)
+
+- **Clients** interact with Ozone to read and write data.
+- The **Ozone Manager (OM)** acts as the namespace manager. It handles client 
requests for creating, deleting, or looking up keys.
+- The **Storage Container Manager (SCM)** is the manager of the physical data 
layer. It manages the **Datanodes** and the replication of data.
+- **Datanodes** are responsible for storing the actual data, which is 
organized into logical units called **blocks**.
+- **Recon** is a management server for Ozone. It provides a user interface and 
API to monitor and manage the Ozone cluster.
+
+## Namespace and Storage
+
+Ozone's namespace is organized into a hierarchy of volumes, buckets, and keys.
+
+- **Volumes** are similar to home directories and can only be created by an 
administrator. They are the basis for storage accounting.
+- **Buckets** are contained within volumes. Users can create many buckets 
within a volume.
+- **Keys** hold the actual data and reside within buckets.
+
+This separation of the logical namespace from the physical storage layer is a 
key aspect of Ozone's scalability.
+
+## Functional Layers
+
+Another way to understand Ozone is by looking at its functional layers.
+
+![FunctionalOzone](FunctionalOzone.png)
+
+- The **Metadata Management Layer** is composed of the Ozone Manager and 
Storage Container Manager.
+- The **Data Storage Layer** consists of the Datanodes, which are managed by 
SCM. Data is stored in logical blocks, which are grouped into containers for 
replication.
+- The **Replication Layer** is powered by [Ratis](replication/ratis), a 
Java-based implementation of the Raft consensus protocol. Ratis ensures that 
metadata is reliably replicated across OM and SCM instances and maintains data 
consistency during write operations on the Datanodes.
+- The **Protocol Bus** allows Ozone to be extended with different protocols. 
Currently, it supports an S3-compatible protocol. This bus allows new object 
store or file system protocols to be implemented on top of Ozone's native 
protocol.
+
+This layered architecture, combined with a clear separation of metadata and 
data management, allows Ozone to scale to handle billions of objects while 
maintaining high performance and fault tolerance.
diff --git a/docs/03-core-concepts/FunctionalOzone.png 
b/docs/03-core-concepts/FunctionalOzone.png
new file mode 100644
index 00000000..0bc75b5e
Binary files /dev/null and b/docs/03-core-concepts/FunctionalOzone.png differ
diff --git a/docs/03-core-concepts/ozoneBlockDiagram.png 
b/docs/03-core-concepts/ozoneBlockDiagram.png
new file mode 100644
index 00000000..7fb738f6
Binary files /dev/null and b/docs/03-core-concepts/ozoneBlockDiagram.png differ


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to