elek commented on pull request #1208: URL: https://github.com/apache/hadoop-ozone/pull/1208#issuecomment-681889309
Thanks the questions @linyiqun > I see most of change focus on the converting replica factor, type to new storage class. As I know Ozone GA version is not released, can we update all places to storage class way? This will not address backward compatible. I am not sure if I understood the question well, but let me try to answer: I think this change is backward compatible as RPC (client!) interface accept both requests: the old one (which contains factor/type and no storageClass) and the new one (which contains storageClass and no factor/type). > Will we have the chance to switch storage class from its OpenStateConfiguration to its ClosedStateConfiguration? Will we support dynamically switch the storage class? I didn't see this switch logic in current patch. Dynamic switch is hard, because storageClass is a property of the containers. When you modify the storageClass of a bucket/key the related data should me moved out from one container to a new one. Amazon doesn't enable the modification of storageClass and I suggested the same. However, we can support to change the "definition" of the storage class. Currently, it's hard coded, but it's easy to be modified to a dynamic model. When you modify the closed container replication number of a storage class (let's say STANDARD close is THREE today but you would like to make it TWO) ReplicationManager can easily pick up the changes. > ClosedStateConfiguration is only applied in closed state container, right? If yes, we should have the automatic behavior (e.g. background thread to do this) to convert container storage to ClosedStateConfiguration setting from its OpenStateConfiguration state. Today the transition between OPEN and CLOSED state is hard coded. Later we can make it more dynamic (for example disable the transition for some specific storageClass) but we are not yet there. On the other hand: the configuration can be changed. Today STANDARD = Ratis/THREE -> Closed/THREE but it can be changed to be configurable (for example support Ratis/THREE -> Ratis/TWO) I am not sure, if this was the question, let me know if not. > It will be an improvement to support storage class on volume, bucket level in the future. Then key object can inherit storage class from them and user doesn't need to pass expected storage class every time. Definitely, this should be one of the next steps. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
