 you know, twinkling the eye kind of projects to be able to be hosted in Sandbox, but do, but, but yeah, I think well, and yes I believe they have all had it except this one, and this is another oversight, but I'm not aware of any others. Just wondering from old, they weren't since the first started like, much just like, uh, okay, and the one thing can we study now? Do we still need to wait some minute? I think we can start now. Yeah, I think you're hosting today, right? What? Sorry, I haven't used the message. Yeah, I think we can start now. Okay, I think I'm a moderator and, uh, Wenhao, Wenting, maybe you can share the screen or just I share the screen. Yeah, I think if you have that document open, you can share the screen. Okay, wait a minute. Okay, can you see my screen now? Yes. Okay, thank everyone during this meeting, and this is the second one for TaiQV, this section meeting for the TaiQV, and now today, today I'm the moderator for this meeting, and also Wenting is the local taker. And before the meeting, please be aware that the meeting is recorded, and will be uploaded to the YouTube soon after the meeting. Okay, let's begin. And as you can see, this is the agenda of this meeting. At first, I will do some introduction, and I see that now maybe there are, okay, just 10 people participated in the meeting, so we can introduce ourselves. So let's begin, and maybe, oh, I will introduce myself. At first, my name is Liu Tang, you can call me student. And also the maintainer of TaiQV, and now the next one, Kevin Wong, Wenhao. Hi everybody, I'm Kevin. I'm from Pincap, and I'm the community manager of the TaiQV project. Okay, next, thank you, Chen Fu. Hello, Chen Fu. Can you introduce yourself? Hello, Chen Fu. Okay, so what a pity. The next one, Luo Di'an. Luo Di'an, can you introduce yourself? Hello. Yes, we can hear you. Is that this? Di'an? I'm going to introduce Kevin Wong in this meeting. Okay, next, Tai Lin, Shen. Hello everyone, I'm from Pincap. Yeah, you can come in there, and yeah, that's all. Okay, and Liq. Hi, I'm Nick, also from Pincap. I work on TaiQV, and I will be introducing the transactions sake of it later. Okay, thank you, Liu Wei. Oh, hello, I'm Liu Wei. I'm focused on the performance of TaiQV. Okay, and the legal performance as such. Yes, that's all. Okay, Liu Wei. Okay, I'm Xiarui from Pincap, and I'm interested in transaction and co-processor, and also I work for the developer group as well. Qipong. I'm Qipong from Pincap. I'm going to introduce the RAFTA SIG later. Okay, Yan Qing. Can you hear me, and that guy, Wen Ting. Hello, my name is Wen Ting. I'm from Pincap, and I'm mainly responsible for assisting Kelvin with TaiQV community operations. It's very nice to have a meeting with all of you. Thank you. Okay, same in the early world, our world attendants introduced themselves, and someone are missing, so maybe we can go on. And the second is you can see a judge's announcement, and you can see that TaiQV-Webilla are in presentation, and they will be coming soon, and any suggestions are welcome. You can tell, maybe you can ask Kelvin or ask Wen Ting to give any suggestion. Okay, that's all for the introduction. And now the second part is we're going to talk about something about SIG update, and I will give this to the XueLian. And maybe XueLian, can you hold it now and introduce something about SIG? Okay, can you stop sharing a screen and let me share a screen? Oh, okay. Thank you. Maybe you can share a screen. Okay, okay. So please, okay, let me introduce you about the TaiQV-Community SIG updates this month. And does anyone know about the meaning of SIG? Okay, SIG means Special Interest Group. Which means if you have any interest in any part of TaiQV, you can join the related SIG and discuss with the engineers, work for this model. And now we have already six SIGs in TaiQV, and the first two co-process SIG and engine SIG is very popular now. And the left of these SIGs are still working hard to make themselves popular. So if you have any interest about any part of these, welcome to join them. And now we have invited the leader of these SIGs here and let them introduce the details to you. Okay, so maybe we can start to introduce, start from the co-process SIG. So wish, wish, are you there? Oh, since he's not here, maybe we can just skip to the next one and I'd like to ask him to come on later. So about the engine SIG, is the leader here? Could you hear me? Jingpeng, oh, Wu Yi, are you here? Oh, Xiao Guang, sorry. Oh, since Xiao Guang, some of them are not here, so let's skip and continue. About the ecosystem, I think Neo is here. So Neo, is your time? Yeah, the ecosystem SIG covers everything about surrounding projects about tech EV. For example, client Go, client Java and client C. Yeah, and of course the client Rust. Also, it covers the Rust primitives, the client library for the primitives. Yeah, yeah, we have a select channel called Ecosystem SIG at Tech EV WD. Yeah, welcome to join us. And this SIG is still in early days, so not all going works, but we'll have soon. Yeah, thank you. So let's continue. And about the performance SIG, I think the leader Neo is here. So it's your time, Neo Wei? Oh, here. Oh, the performance SIG is focused on the improve the performance of Tech EV. And these days, we are focused on improve the TPCC of Tech EV. We have made a plan with some features we may try, but we have not put it on the project. Yes, I will add it to the project next days. Okay, you can see the details about the progress of this SIG in this project, I think. Yes? Since the projects are almost down. Yes, we will add some new planning to the project. Okay, so how can we join your SIG? Oh, the charge in performance SIG, yeah? Yes, yes. So let's continue. Neo, the next SIG is Raft, SIG, and Jen? Jason Simpson is not here, and I will give the introduction. I'm Chih-Pang, hello. Raft SIG is a special integration group for ending related to Raft, IS, and component Raft store in Tech EV. We have a common chart slack in Tech EV work group. And Tech Leader, Jianjun Li and Peng Qu, you can call Jianjun J. And ours ongoing works, we have many three ongoing works. The first is pick upstream or back fixes from each CD Raft. And the second is the implement joint consensus to introduce a small available window when doing configuration change. And the last is the implement a follow-up application. That's all. Okay, thank you. And let's go to the next. And the next is the transaction SIG, and I think Nick can talk about it. Hello. Yes, I will talk about the transaction SIG. So it's very early days for us. We've not really started very much. But I'll talk a little bit about what we want to do and what we're doing at the moment. We do have a channel in Slack and our group on WeChat. So if anyone's interested in transactions, come and chat to us there. My personal ideas, what to do with the group, which I haven't yet discussed with the other leaders, so these may well not happen, is to focus on the special interest part of the special interest group. And so rather than start out trying to get people involved with the transaction code in Thai KV, start by just having a group of people interested in transactions and try and build a community there. So some ideas for that have a reading group where we can like read and discuss academic papers, do some testing and benchmarking and trying to find bugs, experimenting with software models and formal models using TLA Plus or stuff like that, and maybe working on the Thai KV clients because our transaction protocols are collaborative protocols, it means that there's a lot of work in the client as well as in the Thai KV server and so having decent clients is going to be important for building a community around Thai KV itself. And then other stuff like working on documentation and just general discussion about transactions really. So if any of that sounds interesting, come to Slack or WeChat and talk to us. Thanks. Yeah, thank you, Nick. He gives us a lot of information about the transaction SIG. And I think I'd like to introduce one more thing about transaction SIG for it. Okay, we can see the projects in the Thai KV report and for the transaction SIG, there is a lot of information in this project. You can see the first column that how to join us and the second column is the to-do list that needs to be chugged. So if you have any interest of these issues, you can pick one and assign to yourself. And the third column about in-progress, these are the things or major project we are doing now. And if you are interested in any project of them, you can go to see the details in this project. And I think this will be helpful. Okay, so let's do it. Okay, seems you all have questions. No, I found that Xiao Guang is here now. Maybe he can introduce the engine SIG. Yeah, yeah, yeah. And let's go back to the engine SIG. Welcome, Xiao Guang. So what is he up to? Sorry, I'm a little bit late. I'm Xiao Guang. I'm going to introduce our engine SIG today. Engine SIG focuses on basically anything related to storage engines in Thai KV. And we do have a Slack channel. So people can come to Thai KV workgroup Slack and join us and talk about engines in Thai KV. Okay, can you come back to the slides? I'm sorry. Okay. And we have a bi-weekly meeting as well. And we have online meeting Zoom link here. So everybody is welcome to join our meeting. We do have the meeting notes for the past meetings. So if you have missed, you can check out our meeting notes. Right. It's here. We just had a meeting yesterday. That's great. Okay. And our tech leaders, we have three tech leaders. We are Jin Peng Zhang and Yi Wu and me, Xiao Guangsun. So we have something going on right now. There are two major things listed here. One is improved prioritized block catch for Titan. The other one is a brand new KV interface to Thai KV, which introduced multiple version K-value in addition to a raw KV. So that's pretty much all we are doing right now. And we are going to work on more stuff later on. Yeah, that's a lot of information. And I think it is the best SIG which is the most convenient way to enjoy it. Okay. Xiao Guangsun, since you joined this meeting later, so could you tell something about yourself? Introduce yourself. Yes. Okay. Let me think what to start. I worked for Zhi Hu, a question and answering website, knowledge of sharing basically, website in China. I used to work in search engine part last year. And later on, I switched to infra team. So now I'm managing basically Zhi Hu's platform and infrastructure. Okay. Yes, that's pretty much all about myself. Xue Lian, I also noted that Tian Yi is here. Maybe he can help Wen Xuan to introduce the Copset SIG. So Tian Yi, you can see, you can talk about Copset SIG as such across this page. Or you can just tell something about yourself. Tian Yi. Okay. I'm Tian Yi Zhuang and I'm Copset SIG. I'm a KV cometer of Copset SIG. And where is Wen Xuan? I think he's offline. Okay. I can try to introduce the Copset SIG. First, the first page is the Copset SIG community page. And here are three cometers in Copset SIG. They are Wen Xuan, not. They are Nie Dian Hui and me. And we use both Slack and WeChat to communicate about the Thai KV Copset SIG. And now we are doing the two active projects. The first is timeline tracing. It's due by our active contributor Ren Kai. And another is just an RFC. And I'm trying to, it's about use the trunk execution in the Copset SIG framework. And I will finish the RFC in one week. Okay. And we will try to migrate some more new building functions from Thai TV. It's very easy for new contributor to participate in. So this is all. Thank you. Okay. I have seen the most active, most most topic-specific contact with leader to join. Oh, this is amazing, I think. So anyone have questions about these SIGs since all of the leaders are here? No, if no, I think that's all for the Thai KV SIGs. Okay, Xuelian, you can maybe stop the sharing and now I will share. Okay. Thank you, Xuelian. And the next session is community sharing. And Luo Dian will give us maybe a demo of our QV analyzer. Dian, maybe it's your turn now. It's your turn now. And maybe you can, I will stop the share. And then you can go on. It's okay, Dian. All right. You can share your screen and show the QV analyzer. Can you see my screen now? Yes. All right. Wait a second. Okay. Thanks all for coming. I'm going to use this as an opportunity to tell Thai community about something really cool that we've been tingling for a while. Hopefully it will be production ready and coming with Thai KV 4.0. So I'm going to introduce, the thing I'm going to introduce is the visualization tool for Thai KV cluster, NAMM key visualizer. Also known as QVs. Some of you, some of you might be familiar with Thai KV. It's good at scanning up and see me this way. But in some cases, you will find it hard to work with, especially when performance dropping for no reason. Well, there must be some reason, but it's much harder to find it than we expected. Maybe you know distributed system enough and also no Thai KV enough. So you are coming with, there must be some hotspot in the cluster. Yes, most of the time, hotspot is the reason of the performance issue. But the problem is we are still hard to tell where the hotspot is in this case and hard to tell where the hotspot is. But now with QVs, they can be found out in real time and in easy and intuitive way. This is what QV visualizer looks like. It's a simple tool, working browser. So I'm just going to move on to the demo part of the talk and I'll show you what QV visualizer can do and how it helps to find the hotspot in Thai KV cluster. This is the workload of TPCH that I ran for about 12 hours. We can zoom out to see here. Let me introduce the details of these components. On the left-hand side, we can see three axes with some labels. They are actually the database name, some table name and key ranges. For example, some rows or primary or some indexes. We can find out later. This is a hit map showing how the workload distributed in the cluster. From the bottom to the top in the vertical axis is the key ranges. When a pixels goes from the bottom to the top, the key ranges goes up. From the left-hand side to the right-hand side, it's a time axis. It shows how data are changing, not data, the workload changing in time. The color represents the workload or the traffic in this key range and in this time. For example, we can see this is a bright line in this range, and it goes from this point to this point. What it means is there may be some incremental writes or incremental reads, or it's a write, happens in this time. At some point, we can click and zoom in to see, oh, there is 12 bytes are written, 12 million bytes per minute are written at this point, at this time, into test DB, the order line table, the order line, and these real ranges. If we want to copy the TID, we can click on it and it's easily pasted. Well, it's some kind of compass, but we will go through some important patterns later. At this corner, I have used this bench workload, especially OLTP inserts. It stopped very early about, I ran it yesterday, but we want to see it in detail. So we can zoom in, just select and zoom, then click, release. Okay, all right, we're here, quite easy. We can also adjust the brightness in case of some points are too bright or too dark to see. Okay, I will go through some patterns. This is well distributed. From this image, we can tell that the color is mostly the same over the heat map. So that means the workload is distributed even into every key ranges as known, also known as regions. This is a good pattern where the distributed workload allows us to extract the maximum power from every type of nodes. This pattern is what we expected. This is sequential. It can be sequential read or sequential write. This often showed up when we import data into TechEV or incremental ID column is used. This is a signal of potential hotspot because the operation, because TechEV cluster is hard to split the operations into multiple regions. So take care of it, especially when performance drops and this pattern happens to show up. Continuous. This pattern is similar to the sequential. Compared to sequential, it means that some keys of a small range is being updated repeatedly. This is also a signal of hotspot. Distributed continuous. Well, it means some keys are being updated repeatedly, but in larger ranges. In this pattern, this pattern is better than the former because in this case, TechEV is smart enough to distribute the workload to all nodes of the cluster. I may say this is also a good pattern in most cases. And there can be more patterns to be discovered in real production by you. Key visualizer provides a better insight into TechEV and then it's your turn to figure out the funny thing under the hood. So now I'll skim through a little bit of the thing inside of Key Visualizer about how it's structured and how it works. First, Key Visualizer basically involved from the old PD statistics, which has been in production long before. But before Key Visualizer, PD collects the workload data in the time when statistic is requested, while Key Visualizer collects the workload data all the time since startup. So we can see how the workload is changing and see the pattern in time. Statistic data are firstly generated by TechEV. On TechEV nodes send the node status to PD by interval. Then PD collects the statistics report and then the data is used by Key Visualizer. One thing important to know is Key Visualizer is centralized, which means in one cluster there must be one, closely one Key Visualizer in instant in the cluster. And it's not failure protection on it. Okay. And this is how Key Visualizer is structured. First, Key Visualizer is embedded in the PD binary. PD is also the server of the dashboard, which is basically the container of some new grade 2s, for example, Key Visualizer and statements. Key Visualizer has two components, backhand return in Golang and the front-end in browser. The backhand is the statistic data from PD that generates the feedback we've seen. It also does some sort of compressing stuff and does optimization on the cone cases that come up when region speeds or merges. The data are then sent to the front-end in the browser and read as it is. Okay. Conclusion. So I introduce the keys and explain how we can use it to empower our developer workflow by pointing out the hotspot in the most obvious way. Which we hope will bring new experience to the user. We are still working heavily on Kiwis, so it may seem to be slightly different to the final version and some more features may be added in the future. For example, Kiwis could show how CPU and memory usage changes in time. Anyway, I hope you enjoyed. Thanks for watching. Okay. Thanks, Dian. After this presentation, and this is all for today's meeting, and maybe the next is a good question. Any question about this? Do you have any question? Okay. Oh, I also found some new guy joined this meeting. Maybe we can let him to introduce himself. And the first door, 0, 0, 0. Can you introduce yourself? He Tian. Zhu He Tian. Okay. Other is Ratschopi Gaming. Maybe I have pronounced it yet. Oh, sorry. Subway. Okay. Dao Bin. Maybe. Bi Dao Bin. Hello, everyone, and I'm not the new one, but I'm the technical manager, and I'm working for the GT Cloud. And do you have any other information? Okay. Okay. Okay. Thank you, Dao Bin. And maybe, okay. Does anyone have any question? If not, maybe this is all for our today's meeting. Thank you very much. And see you next month. Wen Hao. Maybe we can end this meeting now. Yeah, sure. Okay. Sure. Thank you very much. See you next month. See you. Bye. Bye. Bye. Bye-bye. Bye.