RATIS/THREE Data
The following write path, read path, and container replication applies only to Ozone RATIS/THREE data.
Write path
- You can configure the placement of open containers using the ozone.scm.pipeline.placement.impl configuration key.
- The pipeline placement policy is available in the
org.apache.hdds.scm.pipeline package.
- By default, the PipelinePlacementPolicy is used for topology awareness. Currently, this is the only pipeline placement policy implemented in Ozone.
- To change to a user-customized implementation, use the following
property
<property> <name>ozone.scm.pipeline.placement.impl</name> <value>full_class_name_of_the_customized_implementation</value> </property>
This placement policy complies with the algorithm used in HDFS. With the default three
replicas, two replicas will be on the same rack and the third replica will be on a different
rack.
Read path
Configure the read path to read the data from the closest pipeline using the following
property:
<property>
<name>ozone.network.topology.aware.read</name>
<value>true</value>
</property>
Container replication
- You can configure the placement of closed three replica containers using the ozone.scm.container.placement.impl configuration key.
- The container placement policies are available in the
org.apache.hdds.scm.container.placement.algorithms package.
- By default, the SCMContainerPlacementRackAware is used for topology awareness. This placement policy complies with the algorithm used in HDFS. With the default three replicas, two replicas will be on the same rack and the third replica will be on a different rack.
- To change the placement of closed three replica containers, using the property ozone.scm.container.placement.impl, following is an example
<property> <name>ozone.scm.container.placement.impl</name> <value>org.apache.hadoop.hdds.scm.container.placement.algorithms.SCMContainerPlacementCapacity </value> </property>