 How's it going everybody? I hope everyone's having a good day. I'm Joshua Alfons, developer advocate at ByteDance. I'm here to represent HeyShao today. So you can make it today. So we'll have our video that was prerecorded for you on data workloads and web services on Kubernetes to improve resource utilization. Now HeyShao is one of our senior engineers at ByteDance for one of our open source projects called QBORF. And he'll be speaking a bit about that here. So if you have any questions, I'll upload our QR code as well here that you can come to our Discord and ask some questions for HeyShao as well. And I'll be able to relay them to him. And you can also connect to us on LinkedIn. So thank you. Hello, everyone. My name is Heo Cao. Today I'm going to share a topic titled Co-Nocating Data Workloads and Web Services on Kubernetes to improve resource utilization. I'm a senior software engineer at ByteDance and also a maintainer of the KanaList project. First, I will start by introducing the background of co-location. ByteDance practice of co-location allows from the challenges we encounter during capacity planning. As shown in this image, the resource utilization of online services exhibits a title pattern with very low utilization during the night, which leads to huge waste of resources through analysis of different types of workloads at ByteDance. We found that online services utilize the CPU intensively and are sensitive to RPC latency, while batch jobs have high memory usage and prioritize throughput. That is to say, the resource utilization patterns of online services and batch jobs are inherently complementary. Therefore, it naturally allows us to consider co-locating online services and batch jobs to improve data utilization. Practicing co-location requires fangirling resource management capabilities. So, we have incubated a resource management system called Catalyst. The name Catalyst is derived from the word Catalyst in chemical reactions, and the K symbolizes its ability to provide enhanced automation for resource management for all workloads running within the Kubernetes ecosystem. If online services and the data workloads are deployed on the same node, there may be mutual interference between them. Therefore, the first step we need to take is to classify different types of workloads into various QS classes from this table. You can see that we have defined four extended QS classes. The first one is dedicated course, which means it has exclusive access to some CPU cores and does not share them with other workloads. This QS class is suitable for some extremely intensity sensitive workloads, such as ads, search, and recommendation services. The second one is shared calls, and the workloads with this QS class will run in a shared CPU pool. This QS class is suitable for workloads that can tolerate a certain degree of CPU filtering and interference, such as micro services. The third one is reclaimed cores, and the workloads with this QS class will use overcommitted resources. This QS class is suitable for workloads that are not sensitive to latency and prioritize through pool, such as model training and data jobs. The last one is system cores, suitable for critical system agents to prevent interference between one nodes of different QS classes, where introduced multi-dimensional resource isolation, including CPU, memory, this file, and the network dimensions. In bad dance, with more than 900,000 deployed nodes and tons of millions of cores under management, Katakis has improved data resource utility addition from 23% to 60%. Saving hundreds of millions of dollars in costs. Here is the Katakis community and my contact information. We welcome everyone to participate in community contributions. If you have any questions, please feel free to reach out to me for discussion. Thank you. Thanks, everybody. I'll put back up his QR codes as well, so you can copy it. I don't know why this thing won't move. Here we go. We should have disappeared. But yeah, please connect with Hey-Sau as well. And we also have another QR code if you have any questions, yes. Just quick. So is this Project CubeWARF or is this Project Catalyst? Oh, good question. So Cube... Sorry. The project he's speaking about is Catalyst. CubeWARF is a combination of different projects that we have on our organization. Yeah, absolutely. And we also do have a Discord server as well. So if you'd like to come and connect with us on Discord, you can. And this is where you can learn about all of our open source projects at Bydance. Thank you.