| With the development of Internet technology,the scale of data has expanded rapidly,and more enterprises chose to deploy their services to distributed clusters.However,the resources of the distributed storage system are limited,so it is important to formulate reasonable service rules for different users according to the storage capacity of the system.Most of the user oriented quality of service(Qo S)technology of distributed storage system directly implements I/O flow restriction at the sender.However,this method can not perceive the resource usage of system storage nodes,so it is difficult to ensure the performance requirements of all users in various application scenarios.In addition,the existing Qo S technology deployed on the server side of the distributed storage system does not take into account the non-uniform distribution of the requesting objects on the cluster nodes,and it is also difficult to meet the user’s personalized performance requirements.Aiming at the phenomenon that the performance of some applications will be more impacted when the cluster storage node resources are difficult to meet the upper limit of the performance requirements of all users,a user-oriented phased adaptive Qo S strategy(R_scheduler)was proposed.R_scheduler realized user-oriented multi-node resource allocation by deploying the token bucket algorithm in the storage queue and designing the client coordinator.To ensure the Qo S lower limit and make full use of storage resources,R_scheduler divided the allocation of resources into three phases by monitoring the guarantees of user performance on storage nodes,namely,fast-balancing,slow-growing and rebalancing phases.At the same time,the resource scheduler at the storage node will adaptively adjust the actual token generation rate of user queues according to the phase of resource allocation.Aiming at the problems of high user performance default and difficulty in ensuring system reliability when the system abnormally triggers the data recovery process,a qos assurance technology based on recovery awareness(QGTRA)was proposed.QGTRA designed a monitoring module to perceive the data recovery I/O and user I/O access frequency on the current storage node,and dynamically adjusted the resources occupied by data recovery requests through the data scheduling module,so as to ensure user performance and improving system reliability.Experimental results show that when the system is running normally,R_scheduler can stabilize the actual operating performance of all users between the lower and upper target values of their Qo S,and the error does not exceed 3%.During data recovery after system failure,after specifying that users need to complete a certain amount of reading tasks,R_Scheduler and QGTRA can not only guarantee the minimum performance requirements of users,but also shorten the data recovery time by 9.5% ~ 35.9%. |