mirror of
https://github.com/ceph/ceph
synced 2025-03-11 02:39:05 +00:00
Merge pull request #1855 from kazhang/patch-1
doc: Update architecture.rst:Calculating PG IDs
This commit is contained in:
commit
cbd759872b
@ -387,13 +387,13 @@ The only input required by the client is the object ID and the pool.
|
||||
It's simple: Ceph stores data in named pools (e.g., "liverpool"). When a client
|
||||
wants to store a named object (e.g., "john," "paul," "george," "ringo", etc.)
|
||||
it calculates a placement group using the object name, a hash code, the
|
||||
number of OSDs in the cluster and the pool name. Ceph clients use the following
|
||||
number of PGs in the pool and the pool name. Ceph clients use the following
|
||||
steps to compute PG IDs.
|
||||
|
||||
#. The client inputs the pool ID and the object ID. (e.g., pool = "liverpool"
|
||||
and object-id = "john")
|
||||
#. CRUSH takes the object ID and hashes it.
|
||||
#. CRUSH calculates the hash modulo the number of OSDs. (e.g., ``0x58``) to get
|
||||
#. CRUSH calculates the hash modulo the number of PGs. (e.g., ``0x58``) to get
|
||||
a PG ID.
|
||||
#. CRUSH gets the pool ID given the pool name (e.g., "liverpool" = ``4``)
|
||||
#. CRUSH prepends the pool ID to the PG ID (e.g., ``4.0x58``).
|
||||
@ -1450,4 +1450,4 @@ instance for high availability.
|
||||
.. _RESTful: http://en.wikipedia.org/wiki/RESTful
|
||||
.. _Erasure Code Notes: https://github.com/ceph/ceph/blob/40059e12af88267d0da67d8fd8d9cd81244d8f93/doc/dev/osd_internals/erasure_coding/developer_notes.rst
|
||||
.. _Cache Tiering: ../rados/operations/cache-tiering
|
||||
.. _Set Pool Values: ../rados/operations/pools#set-pool-values
|
||||
.. _Set Pool Values: ../rados/operations/pools#set-pool-values
|
||||
|
Loading…
Reference in New Issue
Block a user