 So, let's start this meeting in about five minutes, when it becomes nine o' five. Just to give more time for more people to join us. Can you start sharing your desktop? Can you see my screen? Yes. Good. Let's give it four more minutes and see whether we have more people join us. Now we have nine people. I assume everyone is working from home now. I will go to work, go to my office after this meeting. Okay. Hey, y'all, it's Amy just dropping on in to be able to come see. If you want to be able to send me a link to the agenda, I will add it on to the CNCF like public calendar so we've got run through. Great. Next time we would make sure to do that. Thank you, Amy. Oh, yeah, totally fine. I mean, just drop it to me anytime that's fine. And thanks for joining us today. Happy to. Is it a good time for you? You know, at this time of the day. Oh yeah, it's fine. It's only 6pm for me. I'm based on the West Coast. I'm out of Pacific time. Okay, sure. Yeah, that's good. Yeah, I might not always be able to make it, but I'd like to be able to know when stuff is and we will work on being able to put this up on our YouTube channel as well so that other people know this is happening. That's great. Thank you. Yeah, happy to. So let's give it two more minutes and then let's get started. Okay, so today let's begin. Hello, everyone, and thanks for coming to today's meeting. And this is Queenie from pink up and I'm also a same CFM buster. It's my great honor to be the monitor of this first ever type TV community meeting. So, on the, basically up for this meeting on the fourth Wednesday of every month, unless otherwise specified, the take me community host this monthly meeting by video conference to discuss the status of taking the new features will discuss will be discussed and everyone on the list of the location and familiarity of the product is welcome to join us and the the meeting is recorded and will be shared on the same set of YouTube channel and thanks for supporting us on this. Thank you. Yeah. For today, I'm will be the monitor and one team will will be the note taker. And this meeting will be kicked off by sitting tongue. And then we will move on to the agenda to the items on the agenda today so sit down. Could you please kick off this meeting. Thank you. And hi everyone. It's my honor to do the kick off. And my name is sitting and now you can see under the leader of tech we project. Since tech we open the source on April fully for state 2016. It had been widely used in production and in the world. And now as far as I know, might be a hundred or business companies use take me in production and the biggest cluster maybe have already serve more than four take up by the data one cluster. And also, thanks the same there for having tech we under support is growth as it's incubating project. Hope we can graduate soon. This is our first community meeting, but I think this is still a game leap for the tech TV. We hope more and more people can join us in building a striving community together. And thank you very much. Thank you. So, the next item on the agenda is an introduction. I will start with the introduction about TV first and then I would invite people in the, as the attendee to introduce themselves and gets connected with each other. And we now have 11 attendees in this meeting. Okay, so I think everyone in this meeting are very familiar is an open source distributed and transactional key value database. So, basically, and it's now incubating project of the cloud native computing foundation. So this is very important to everyone of us. And so, with that, let's start the introduction of the attendees today. So, well, would you like to start me. Sure, I'm Amy, I am the program manager from CNCF. I'm delighted to see you all doing this. Thank you. So the next up, Calvin, would you like to introduce yourself to the, to the meeting. Yeah, sure. Hello, everybody and Calvin Calvin when I'm also working in pink cap at currently currently as the content strategist and sort of in the community manager for the tech project. Happy to know you all. Thanks. Thank you, Calvin. Next up, would you like to introduce yourself to the, I saw you, your microphone is up. The Yan, can you hear me. Okay. So maybe not ready and James. Jim phone, could you be the next up. I'm Jim phone, the engineer of takeaway. And I'm happy here to have this meeting. Yeah. Yes, that's all. Thank you. Okay, thanks for joining us. And when team would you like to start your brief introduction. Hi, this is one thing they all from pink cap. I'm the notes taker today and I work for the internet internationalization department. And it's very nice to have this meeting with all of you. Thank you. Thanks when team and you can you hear me and would you like to start your introduction. So this is from pink. I'm engineer on the. Thanks. So next up pink. Hi, I'm eating. I'm now a senior in South China University of technology. And I'm also an intern in pink cap. And he will do a fantastic demo today. So the next two attendees, I think they are distinguished guests in our meeting. And they are. Tany King, each one and dobbin Lee. So let's start with the dobbin. Thank you, dobbin. Can you hear me. Hello, everyone. I'm a needle been currently working for JD cloud and AI and cloud provider in China. I'm the director of the past platform. The platform is a service department. Okay. Thank you. Thank you, dobbin. Welcome to this meeting. So the next one. Which is also could be called Kenny. I guess. Could you please introduce yourself to the to the other people. Hello, everyone. My name is Tony and I work for make me previously and AI technology in China. And I'm also tired KV cometer in co-possessor sick. Thank you. Thank you. So we also have other distinguished guests with us to and they are the contributors I guess. So, Tony Liu. You didn't have your microphone. Can you hear us. Or talk to us. Oh, one more people joined and I see wink is with us now. So, let's start with the please so the could you please introduce yourself to the meeting to the members at this meeting. Thank you. Yeah, hi everyone. I'm the end and I'm from Shenzhen. I'm a kind of a new contributor to take a V and I'm from the new usability. Program and I become the new contributor. And I'm very glad to join this community and I'm very willing to learn more about distributed system and storage system. And I'm a software engineer from DJI, the drone company. And that's all. Thanks. Thank you. Welcome to the community. And the next up is Tony. Tony, could you please introduce yourself. We see now you're geared up with your micro Tony. Liu, can you hear me. Okay, let's move on to Wink. Wink would you like to say hi to the meeting. Hi, everyone. Could you hear me. Yes. Hi, I'm Wink. I'm focused on the tech community. And the maintainer of tech TV. And I work for pink cap. About three years. Okay, thank you for joining us. Wink. So now, Tony, if you're ready to say hi, we could have you on for if you're not, we can just move on to the next item on the agenda. Okay. Yeah. Let's move on to the next item on the agenda. So, the next one is from Calvin and he will spend 10 to 15 minutes to update the community governance and there was some important announcement in his slide as well. So, could you please share your screen, Calvin. Thank you. Okay. So, sharing my desktop. Yeah, I've stopped my sharing and you're up. Okay. So, can you see my desktop now. Yes. Okay. Okay. Okay, how everybody so it's my honor to be here today to bring you update to some of the changes in the tech community. And I will share with you some of the news exciting news as well. So firstly, I want to start with some major updates on the government governance model and the governance of tech project. To start, let's get something get some justification for this updates. So why do we update this governance. Firstly, of course, because everything is changing and like other open source projects that take the project is involving very fast towards maturity and the community grows along the way. So, originally we have we had a version of governance but it's kind of to simplify it in terms of the setting of community roles. For example, the previous version, they only defined the maintainer role. And the expectations and requirements of maintainer but there's nothing said about contributors. And so the group's path or the promotion path is not clear. Especially for new contributors, they're not clear as to what they expected. What are the expectations for them. How far away from the maintainer role because maintainer is a very high bar to reach. Also, to add to the fact that tech is a very hardcore projects. And that's kind of not clear enough and not welcoming enough to contributors. Yeah, these are some of the background of the updates. So first updates is the guiding principles. Yeah, we finally have them. Actually, yeah, it's just a simple document but it's really important because although we know clearly what we are doing and what we are going to do. But we also want it properly documented and make other people in the community know about our visions and our beliefs. And yeah, there's some common values in the open source projects in which I highlighted some of the points that I really hope to be reflected in the refactored governance. Yeah, this is the guiding principles. And for the governance itself, a major updates is the community structure and roles. As I mentioned the original version, there's only maintenance. We don't know what about other roles. And so, currently, we for the tech project and the tech community, and we have three major groups, which are maintainers, special interest groups and users. Mainteners, of course, are the are the first and foremost contributors of the project. And they're, they have a very deeper understanding of the project, and they set the directions and oversee the health development of the project. Mainteners, they come from committees, and all they they can also come from user groups of ecosystems, which is this cannot be possible in previous version of governance because previously maintenance can only be achieved through, you know, contributions to the code base. Yeah, and the four in the middle we have this special interest groups. So tech project are are primary, primarily operated in special interest groups. It is divided into multiple, especially of six, it's divided in multiple six. Each of them will correspond to a tech heavy module or major feature or components. The SIG is organized or managed by the two to three tech leads. They're initially designed by maintainers upon the establishment of the SIG. And within each SIG, they're for, by the way, the tech lead are just the management role within SIG. They are not community roles. So, within each SIG, there are four community roles, starting from contributor and going all the way up to contributor, reviewer and committer. And so each corresponding to are clearly a set of clearly defined requirements and expectations and the privileges, of course. So this is defined as such so that contributors, they enter the community and they know clearly what are they expected for each level. And also it's easier and clearer to achieve the next level. So at the bottom, we have users, which we didn't have in the previous in the previous previous version. So the users are very important group and without users, we do not have a goals or motivations and users, the user group, they immediately, they evangelize the other projects, they share their best practices and they continuously engage with the tech project during the adoption, which would be very helpful to other potential users in the ecosystem. Yeah. And so users can also when they get more and more involved in the project, they may find themselves in the path of, you know, contributor, or they contribute significantly in the project. They could directly be promoted to maintenance as well. So the merits in this structure is that we can build a community that's more welcoming, more belonging, and more rewarding. And also this structure, as I mentioned, it allows diversity in the governance, especially in the diversity in the maintainer structure. Okay. That's the structure. And another things we made some updates is the decision making process. And it's the decision making and it's primarily done through issues and peers and it's based on consensus, specifically the lazy consensus model. And also, we have the guiding principles and CNCF could conduct to direct the decision making process. And of course, in very rare cases, some consensus cannot be reached. Then we will result to the voting by the maintainers. This is the decision making process. And also another important aspect of the governance is the proposal process. We have this process. Actually, it's called a request for comment process. We have had this, actually, I think since the beginning of the TechView project, and it's well done aspect of the community to increase the visibility. And to encourage more contributions from the contributors. Anyone can compose and they can do this by opening a PR and it will be discussed and approved by Stanford sensors. Of course, for future proposals, we recommend that you first bring it to the secret discussion before the actual proposing, because that may, that will help save the time and improve the efficiency. Also, another major proposal is to create, create new six projects. That's the similar process. Yeah. Yeah, that's major highlights in the governance updates. Of course, it's still in iteration, we'll keep on updating it as they practice it. And so if you find anything that you think is not right, or something you think could be better, let us know. Yeah. Next up we have some very great news and announcement to share with you. Yeah, firstly, I want to start with the security auditing, we passed the security auditing that is conducted, that was conducted by a third party company and sponsored by CMC. Yeah, although we have been tested by by many of hundreds of companies who adopted the tech TV that we it's very important to have this auditing. And we have some major release releases to be expected, the 3.1 and 4.0 GA versions are to be expected in the following one or two months. Yeah, with a lot of cool features. And following the governance, the refacted governance, we have continuous continuously create new six to cover all the major components, modules, modules of tech TV. Currently, we have six, six. Actually, the names are pretty self evidence, you can, you can tell what the six about just by looking at the names. Yeah, and the mosics to be created. Yeah, and also, I'd like to welcome. The new contributors in the community in the last month. Thank you. We have a Zihua and in the meeting ready, and congratulations again, and also we have simple sloppies and the garden GD and I'm not sure whether I pronounced this right, but yeah, welcome. Next is our new committers. They're very important. Promotion, because they, they are promoted to based on our new governance model. They are all in the co-processing. So, you didn't wait, it's not here, but we have, we have tiny John here. Congratulations again, and we look forward to more contributions from you and hopefully you will enjoy in this role and continuously challenge yourself. Do you want to, do you want to say something, honey? John. Yeah. Hi, Kenny. Say something about today's, this new role. Okay. Why not nearly a way. It's not here. I joined co-processing and submit multiple PRs for co-processing and then I joined the performance challenge program and the usability challenge program and the mentor is very helpful and then I become the commentator and it's very interesting. Yeah, thank you. Okay. Last but not least update is our new maintainer nomination. Yeah, and we just created this PR for nominating. It's the PR created by our maintainer VINC and to nominate Dobbing Lee from JD Cloud as a takeover maintainer. So actually, this also something that is made possible by our new governance model. Dobbing has been a very significant significant member of JD Cloud when I in the process of adopting and taking it in there in their project. And he has been keep keeping engaged with the tech project by sharing their success for adoption. And also he contributed to her by proposing important feature to the tech project. Hi, Dobbing. Of course, this PR has not been met, has not been merged by, but I think that currently the maintenance have already reached the consensus. Dobbing, do you like to say something about this nomination? How do you feel? Thanks. I'm very glad to hear that TechWe have the nominate me as a maintainer. Thanks, very, very thanks for this. And currently we adopted the TechWe as our core meta database of our object storage in JD Cloud and AI. Currently, my company then changing from the JD Cloud to JD Cloud and AI after merge the AI and IoT department into the cloud department. And currently we also adopted the TechWe as many other, many other middleware in the JD Cloud and AI, especially in the some storage engine, storage engine of the some middleware and still working on this. Okay. That's all. Thank you. Thank you. That's, that's really fantastic. And we're really looking forward to, you know, working with you as the TechWe maintainer. Yeah. Okay, with that, I will end my updates on the community. So, anyone has any questions? Okay. Back to you, Kuni. Thank you, Calvin, for the community updates and a lot of warm welcome to the community and big congratulations to all to the new committers and new maintainer. I see that there are quite a few people joining us after the introduction and Ed has spoken up. Are you still there, Ed? Would you like to see hi to the meeting? Okay, we missed him right there. And Xiao Guang joined us as well. Would you like to say hi, Xiao Guang? Okay, I didn't expect that I would speak something here. I'm very glad to see new maintainers here and I see a great improvements to TechWe and we are really looking forward for the new release. And we hope we can do it better and make TechWe really great. Thank you. We're truly working on that. Let's make that happen. Thank you. Other people who are joining us later. I think Xiao is there. Xiao, would you like to say hi? Okay. If not, let's move on to Ginger Kittney. Okay. Anyone who wants to speak up, please raise your hand and let the people in the team know you. I will not just call people's names now. Thanks. Okay, so let's move on to the next item on the agenda and that would be the community sharing, which will last for 15 or 20 minutes. And it's a feature demo from Yiling Chen. Yiling, could you please share your screen? Sure. Thank you. So Yiling's presentation is about the unified rate pool effect. Let's see what's exciting there. Thank you. We can see your screen now. Hi, everyone. I'm Yiling and I'm now an intern in Pincap. And today I'm going to introduce to you the new threading model in TechEV, the unified rate pool. In TechEV, previously we have lots of thread pools for reading. As shown in the slide, we have two main models of reading, the co-processor part, which mainly handles the request from TechEV and the storage module, which handles some other requests. For example, the single point gets requests. Each request has its own priority. So previously we make a threshold for each priority. So we had thread pools for reading previously, but that's a problem. There were too many thread pools. And the problem is we want to fully utilize the resource of the computer. So the total sum of thread numbers of all these thread pools are far greater than the whole CPU course, logical course of the computer. Then if all these thread pools are busy, they will interfere with each other. If we have some big queries executing in the co-processor thread pools, then some small but important queries executing in the storage read pool will be affected. And to solve the problem, we introduce the unified read pool to unify all these thread pools into one and handle the priorities of the request by ourselves. It's the internal structure of the thread pool. It is like the typical worksheet stealing executors. Maybe some people who knows the scheduling go well can also see it like the schedule model in Go. But the difference is the global queue is not just a single queue. It contains several queues with different priorities. We set three queues in our thread pool and the L0 queue has the highest priority while the L2 queue has the lowest priority. It is just like the multi-level feedback queue algorithm, which is widely used in operating systems. But here we don't do exactly the same. The priority is implemented by the chance or the possibility that a task in the queue is stolen by each thread. So we can see in the left the queue with highest priority has the highest chance to be stolen. And actually our goal is to guarantee most of the CPU time is used for the shots, the small tasks, which is typically more important. So we said the goal is 80% of the CPU time should be used by the tasks in the L0 queue. And it not specified the tasks which run slower, which is shorter than 5 milliseconds in the L0 queue. And if the task runs longer than expected, it will move to the queues which has lower priorities. And we also implement self-adaptive of the possibility of each queue. Because we don't exactly know the situation of the tasks, the running situation of each task from the queues. And sometimes we found the queues, the tasks running from the L0 queue are taking more time than we expected, like this. We found the tasks from the L0 queue are taking more time than we expected. We will lower the priority of the L0 queue a bit, maybe decrease it to 50% and increase the chance of the lower queues a bit. Increase the chance of the L1 queue to maybe 40%. But if we found maybe the tasks from the L2 queue are taking very long time, we will also lower the chance of the L2 queue. Then we can make our go. The 80% of CPU time is used for the L0 tasks. And there is also a problem. If a task itself takes very long time, we cannot schedule it as a whole. For example, if a task, usually a co-processor task, can take maybe one second. But if we schedule a task of one second as a whole, it will have very bad effect. So we must cut the task into very small pieces, like the time slices in operating systems. In TIKI-V, we are using the single-way feature to create co-routines conveniently. Then it means we can cut a big task into very small pieces and schedule them by small time slices. At the end of the time slice, we can yield the task and schedule another task. Now we can achieve our go. That's the brief introduction of the design of the thread pool. Next, I will do a simple demo about the effect of it. Thank you, Yiling. Okay. Can you see my screen? Yes. Finally, I will show you the typical situation some of our users will meet if we are using the old threading model. Let me run the TIKI-V with the old threading model. We are meeting some OLTP requests by SysBench. Here we run a SysBench to run some small requests. We can see we have about more than 3,000 TPS. Let's see a bit about the CPU usage. You can see the normal threads are the co-processor repos executing the requests. Now I will simulate running a BigQuery. Maybe it's like an OLTP request. It is executed sometimes by a user manually. Now we can see from the below the co-processor repos are fully utilized. They have about 100% of CPU usage. Now we can see our normal OLTP requests and the TPS are affected. Let me stop it. Though I stop it, but the effect will not disappear immediately. It will still run depending on commands. Now it's restored. Now I will demonstrate what will happen if we use the new unified thread pool. Let me run TIKI-V with the new thread pool. As usual, let me use SysBench to simulate small requests and normal OLTP requests. Now it looks just like before. When I run a BigQuery now, we can also see the unified thread pool is fully utilized. We don't waste any CPU usage, but we can see the normal OLTP requests are nearly not affected. Because we set our goal when the pool is fully utilized, about 80% of CPU time will still be spent on the small and important OLTP requests. That's all from my demo. Thanks. Thank you, Yilin. Thank you for sharing the designing and the demo. It's very cool. Okay, so now can you see my screen? So the next up on the agenda is introduction to the usability challenge program and the GSOC project. So as for the usability challenge program, we now have our contributors join us from there. We launched the usability challenge program together with TIKI-V, and in the following less than three months, you are officially challenged and you're welcome to join us in this challenge program and help improve the usability of TIKI-V and its related projects. So tasks are ready, mentors are set, and the prizes are up for the grad. It's time to have some fun hacking. And the next one is the GSOC, the Google Summer Code project. So we have the students who want to participate in the GSOC with the TIKI-V project. I expected to provide their resumes and join us in the select channel and have their introductions. So the important dates are the March 31st, 1800 UTC. So that's the deadline for the student application. And that's all we have on the agenda. Anyone has any questions or have a self introduction if you didn't have a chance to do so? Yes, please raise your hand using the tool on the Zoom application. I don't think people want to speak up. So if not, let's call this, let's call it a day for today's meeting and we will send out a questionnaire and so we need to get your feedback regarding this meeting, how can we move this forward and make this better. So thank you everyone for joining us today and have a great one for each and every one of you. And please help me and help the team to make this meeting more effective and more useful for everyone in this meeting. Thank you for joining us today. Thank you. Good to see you all.