From afacd3885f680d2d01c9d0f4f5fdf3fe3c7b1464 Mon Sep 17 00:00:00 2001
From: Ali <115415312+xogoodnow@users.noreply.github.com>
Date: Wed, 12 Jun 2024 12:46:52 +0330
Subject: [PATCH] Update README.md on Ceph section (#10220)
1. The "What is the workflow of retrieving data from Ceph?" question was repeated twice.
2. Added the question "What is the workflow of writing data to Ceph?"
3. There was no answer on the workflow on writeing/reading data. They have been added
---
README.md | 23 ++++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 16f3f63..a881cdb 100644
--- a/README.md
+++ b/README.md
@@ -3953,10 +3953,31 @@ True
What is the workflow of retrieving data from Ceph?
+The work flow is as follows:
+
+1. The client sends a request to the ceph cluster to retrieve data:
+> **Client could be any of the following**
+>> * Ceph Block Device
+>> * Ceph Object Gateway
+>> * Any third party ceph client
+
+
+2. The client retrieves the latest cluster map from the Ceph Monitor
+3. The client uses the CRUSH algorithm to map the object to a placement group. The placement group is then assigned to a OSD.
+4. Once the placement group and the OSD Daemon are determined, the client can retrieve the data from the appropriate OSD
+
+
-What is the workflow of retrieving data from Ceph?
+What is the workflow of writing data to Ceph?
+The work flow is as follows:
+
+1. The client sends a request to the ceph cluster to retrieve data
+2. The client retrieves the latest cluster map from the Ceph Monitor
+3. The client uses the CRUSH algorithm to map the object to a placement group. The placement group is then assigned to a Ceph OSD Daemon dynamically.
+4. The client sends the data to the primary OSD of the determined placement group. If the data is stored in an erasure-coded pool, the primary OSD is responsible for encoding the object into data chunks and coding chunks, and distributing them to the other OSDs.
+