
ResLake: Towards Minimum Job Latency and Balanced Resource
Utilization in Geo-distributed Job Scheduling
Xinchun Zhang*, Aqsa Kashaf*, Yihan Zou*, Wei Zhang*, Weibo Liao, Haoxiang Song, Jintao Ye,
Yakun Li, Rui Shi, Yong Tian, Wei Feng, Binbin Chen, Zuzhi Chen, Tieying Zhang, Yongping Tang
ByteDance
reslake-paper@bytedance.com
ABSTRACT
At internet scale companies like ByteDance, data is generated and
consumed at enormously high speed by many dierent applications.
Achieving low latency on such big data jobs is an important problem.
However, the naive approach of aggregating all the data required by
a job to a single location is not always feasible in a geo-distributed
environment. Similarly, existing approaches in ge o-distributed job
scheduling often try to minimize WAN usage, which may come at
the cost of latency. Another crucial element to ensure low latency is
resource load balancing among DCs, which enables exibility in job
scheduling and avoids resource bottlenecks. Therefore, to minimize
latency, optimizing job completion time (JCT) while maintaining
resource utilization balance is important. To this end, we propose
ResLake, a global scheduling platform for data-intensive workloads.
ResLake aims to reduce JCT of geo-distribute d applications while
balancing the compute (CP U/Memory) and storage (Disk) usages
across DCs and eciently using WAN interconnections. We have
deployed ResLake in ByteDance’s production for over 1.5 years.
ResLake has scheduled billions of jobs since its deployment. We
nd that ResLake improves JCT of jobs by at least 20%, and can
improve resource utilization balance across DCs by up to 53%.
PVLDB Reference Format:
Xinchun Zhang, Aqsa Kashaf, Yihan Zou, Wei Zhang, Weibo Liao,
Haoxiang Song, Jintao Ye, Yakun Li, Rui Shi, Yong Tian, Wei Feng,
Binbin Chen, Zuzhi Chen, Tieying Zhang, Yongping Tang. ResLake:
Towards Minimum Job Latency and Balanced Resource Utilization in
Geo-distributed Job Scheduling. PVLDB, 17(12): 3934 - 3946, 2024.
doi:10.14778/3685800.3685817
1 INTRODUCTION
Digital technological advancements have led to the rapid growth
and proliferation of data. As a result, internet-scale companies like
ByteDance are seeing an increasing growth of data-intensive appli-
cations that collect, process, and analyze enormous amounts of data
to help them gain useful insights. These internet-scale companies
deploy tens of data centers (DCs) across multiple regions in the
world to provide low-latency service to their customers. At these
geographically distributed sites, data is generated and consumed at
This work is licensed under the Creative Commons BY-NC-ND 4.0 International
License. Visit https://creativecommons.org/licenses/by-nc-nd/4.0/ to view a copy of
this license. For any use beyond those covered by this license, obtain permission by
emailing info@vldb.org. Copyright is held by the owner/author(s). Publication rights
licensed to the VLDB Endowment.
Proceedings of the VLDB Endowment, Vol. 17, No. 12 ISSN 2150-8097.
doi:10.14778/3685800.3685817
an enormously high speed by many dierent applications. Ensur-
ing low latency for these data-intensive jobs is important to meet
service level agreements (SLAs), and to enhance user experience.
Existing big data processing frameworks such as Hadoop [
3
],
Spark [
36
], Flink [
7
] and Dryad [
17
] have been designed to analyze
large datasets eciently. However, all these frameworks assume
a single-DC deployment, where network resources are typically
uniform and readily accessible, making these solutions infeasible for
geo-distributed data analysis. To extend to multiple DCs, a trivial
solution would be to aggregate all the data in a single lo cation for
processing. However, it is often impractical due to the following
reasons. First, the job may have many inputs, whose total data
size may be very challenging for storage space in any DC. Second,
these data may only be used once, resulting in a waste of resources.
Moreover, for high availability, data needs to be replicated and
stored at multiple remote DCs to prevent data loss during incidents.
Recent eorts have tried to build on these frameworks to en-
able data analytics across multiple DCs [
14
,
28
,
30
,
31
]. However,
these frameworks are not optimized for the wide-area network
(WAN) bandwidth heterogeneity and limitations [
27
]. Other works
assume that dierent DCs have uniform computational resources,
which does not conform to the reality [
16
]. Other approaches that
perform geo-distributed job scheduling for big data jobs seek to op-
timize WAN usage [15, 30] as they are designed for a public cloud
environment where WAN resources can easily become a bottle-
neck. However, in a private cloud environment such as ByteDance,
network resources are often over-provisioned. Since WAN usage
optimization can often come at the cost of latency, these approaches
do not directly account for low latency.
Hence, to optimize job completion time (JCT) for geo-distributed
big data jobs, we propose ResLake. ResLake is a global schedul-
ing platform for data-intensive workloads, which in addition to
reducing JCT, also aims to balance the compute (CPU/memory) and
storage (Disk) utilization across DCs and eciently use the WAN
interconnections. We believe that ensuring a balanced resource
utilization is crucial for optimizing JCT, as it enables more exible
scheduling and prevents resource bottlenecks that may increase la-
tency. To design ResLake, we formulate the job scheduling problem
as a joint optimization problem that minimizes JCT and maximizes
resource utilization balance. In the JCT minimization part, we divide
the entire scheduling task into meta-tasks, which can b e scheduled
individually to avoid unnecessary resource blocking. Also, ResLake
frequently updates each resource’s processing rate to ensure the
accuracy of overall approximate JCT. To formulate the resource
utilization balance as an optimization problem, we aim to ensure
that the resource utilization of each cluster is close to the average
cluster utilization. We design ResLake as a layered system. The core
3934
文档被以下合辑收录
评论