Industrial System Research in the Industry - Successful Online Event of the First ACM ChinaSys Colloquium Series Academic Lecture
(This article is reprinted from CNSys Official Account, welcome to follow the official public account CNSys of ACM ChinaSys)
The ACM ChinaSys Colloquium held its first online academic lecture on April 29, 2022, with the theme of “System Research in the Industry” for academic discussion and exchange. Dr. Li Feifei, Vice President of Alibaba and Head of Alibaba Cloud Intelligent Database Product Division, and Dr. Tan Kun, Director of the Distributed and Parallel Software Laboratory of Huawei Central Software Institute, were invited as special guests to give academic reports and participate in online interviews. The academic lecture was hosted by Dr. Li Cheng, a special researcher at the University of Science and Technology of China, Dr. Li Bojie and Dr. Yao Ting from Huawei. The conference was conducted through Tencent online meeting room and Bilibili live broadcast, attracting more than 600 viewers.
Firstly, Dr. Li Feifei from Alibaba gave an academic report titled “Cloud Native Database 2.0: Intelligent One-Stop Data Management and Service”. He pointed out that information technology and its applications have entered the era of cloud computing, and the database is the most important basic software in the field of data management. Distributed and cloud-native databases are important future development directions. Compared with traditional database architectures, cloud-native databases fully utilize cloud computing technologies such as resource decoupling, pooling, and compute-storage separation, and have advantages such as elastic expansion, ease of use, rapid iteration, and cost savings. Dr. Li Feifei introduced key technologies such as the cloud-native relational database PolarDB, the cloud-native distributed HTAP database PolarDB-X based on the Shared-Nothing architecture and X-Paxos protocol, and the cloud-native data warehouse AnalyticDB that integrates online and offline, based on Alibaba Cloud’s self-developed database ecosystem that covers the entire process of data production, processing, and consumption. This helped the participants understand the latest developments and challenges faced in the evolution of cloud-native database architectures.
Subsequently, Dr. Tan Kun from Huawei gave a special report titled “Rethinking Distributed Heterogeneous Programming from Internet Structure to Programming Abstraction”. He pointed out that with the growth of computing power demand represented by AI, the heterogeneity and large-scale distribution of computing are inevitable evolutionary paths. He further summarized the three major challenges that need to be solved in building efficient distributed heterogeneous systems and applications: (1) the gap from efficient chip computing power to efficient large-scale computing systems; (2) the gap from the complexity of diverse computing power clusters to the simplicity of developer use and management; (3) the gap from rapidly changing hardware forms to relatively stable application ecosystems. In the face of these challenges, Dr. Tan Kun introduced Huawei’s exploration and thinking, mainly involving the theoretical abstraction of “Datacenter as a Computer”, and three technical projects: UB Interconnection, MindSpore, and MetaRong. Among them, the UB Interconnection project focuses on the next generation of communication interconnection technology, realizing the unified integration of bus technology and network technology. The MindSpore project and MetaRong project are aimed at AI and scientific computing, general Serverless computing scenarios, respectively, building a new type of cloud-native intelligent system kernel, providing a unified user-friendly programming framework, which can automatically perform heterogeneous optimization and distributed scheduling, providing a convenient and arbitrarily expandable distributed heterogeneous platform computing platform for applications.
After the reports, the two guests had an in-depth discussion with the online audience on technical topics such as cloud-native and “Datacenter as a Computer”. In addition, the Q&A session also discussed the specific forms and communication channels of school-enterprise cooperation.
In the future, the ACM ChinaSys Colloquium will continue to hold regular academic lectures, adhering to the original intention of disseminating new technologies, new products, and new ideas, providing career planning guidance opportunities for young teachers and students, building a bridge for academic and industrial exchanges, and serving the majority of Chinese computer system researchers.
Interview Record
Question 1
Whether it’s cloud-native or datacenter as a computer, the goal is to provide better service support for users and hide system details. Could the two teachers talk about the differences and connections between these two technical routes?
Li Feifei: After listening to Dr. Tan’s report, I think the two are very similar in principle, which is to pool resources, decouple and abstract the resource layer, and shift from the traditional von Neumann architecture to the data center architecture. The datacenter as a computer mentioned by Dr. Tan, from the perspective of a cloud-native database system, is actually building a disaggregated storage pool and disaggregated memory pool at the datacenter level. If it can be abstracted to the extreme and reach the level of datacenter as a computer, it will also facilitate the construction of database systems. But today we still need to control and schedule the underlying layer in a fine-grained manner, so we adopt a layered abstraction logic - persistent storage, shared storage, shared memory pool on the storage side, and containerization of CPU cores for scheduling and control on the computing side, which is the direction of cloud-native data development. At the same time, hardware acceleration is needed, such as high-speed storage and RDMA for building persistent storage, hardware acceleration based on FPGA or new hardware for complex calculations, and NVM for memory pooling. This is similar to the original intention of the datacenter as a computer design mentioned by Dr. Tan.
Tan Kun: I agree with Feifei’s point of view, both are essentially the same - how to build a larger computing pool, how to write distributed applications more conveniently, and thus apply the resources in the resource pool. If we regard the cloud as a pool, cloud-native means that the applications written can be built according to the characteristics of the distributed pool, which is consistent with the goal of datacenter as a computer. We emphasize and promote datacenter as a computer, hoping that programming for distributed applications can be more abstract and standardized, forming a narrow waist of application programming, that is, the “new POSIX” mentioned earlier. If this goal is achieved, cloud-native is also achieved.
Question 2
How to ensure cache coherency when UB supports many devices? Cloud-native databases support one-write-many-reads, especially when supporting many read instances, how to achieve cache coherency?
Tan Kun: In UB, the protocol stack is layered. What we implement is an efficient communication protocol, whose core goal is to efficiently complete memory access that can be seen by all communications in the system; and cache coherency is an ability superimposed on it, in fact, in many scenarios we do not need cache coherency, this is an optional ability rather than a necessary ability. We also tried to design a hardware-based cache coherency in UB, but this technology still has certain limitations in scale and use. In addition, we hope that cache management can be more programmable, giving application developers stronger control capabilities, making cache coherency a capability that can be used when necessary rather than a default capability like the current CPU, we believe that the design of default coherency does not scale in large-scale situations. We hope to provide the ability of cache coherency for specific high-performance applications through software-controllable methods, while also ensuring that the implementation of applications is not affected by scalability.
Li Feifei: In fact, there is a certain gap between cache coherency at the operating system level and cache coherency at the database level. The concept of remote memory for cache coherency at the operating system level has been studied for many years, and it is not a new problem for both academia and industry - the key is how to satisfy TSO (Total Store Order) or PSO (Partial Store Order). If a remote memory pool with cache coherency at the TSO level can be built at the operating system level, the remote memory sharing problem of the database system on it can be directly solved. But at present, from the perspective of the operating system, this problem has not been solved, and a mature, efficient memory pool technology that can satisfy TSO/PSO has not been realized. Since the operating system does not provide such capabilities, we consider doing it at the database level, and the problem is the cache consistency of the buffer pool. What we are concerned about is, in persistent shared storage, in order to achieve one-write-many-reads or many-writes-many-reads cross-node data access, the implementation method of its consistency - this can be discussed in two cases depending on whether there is shared memory architecture. For databases without shared memory architecture, such as polarDB 1.0, the data consistency between the master node and the READ RO node is achieved through the underlying shared storage. When reading data written into storage, there is a log visibility mechanism to maintain consistency - each transaction has a transaction number, which is compared with the log sequence number of the last commit log of persistent access data to judge visibility. Under the condition of shared memory, the consistency of data is ensured by shared memory - read-write consistency updates are done on shared memory, such as lock control and concurrency control, to solve the problem of consistency through shared memory.
Question 3
In the two directions shared by the two teachers, are there plans to carry out school-enterprise cooperation? If so, can you tell us some possible ways? Many teachers of ChinaSys are doing very well in school-enterprise cooperation, if there is a chance we are willing to build a bridge of communication.
Li Feifei: Alibaba and Alibaba Cloud are very welcome to cooperate with universities. I am currently mainly responsible for Alibaba Cloud’s database team and the database and storage laboratory under Damo Academy, and both teams are very welcome to cooperate with schools. The main way of cooperation is through an Alibaba Innovation Research (AIR) university cooperation project of Alibaba. The support amount of the AIR project is 500,000 RMB per year, interested teachers can apply through official channels, a more effective way is to contact me directly. After two to three years of cooperation in the AIR project, A-class projects and joint laboratories will be deployed in some key directions, and the support amount will be increased to 1 million to 1.5 million per year. There is also a visiting scholar program, recommending teachers to be visiting scholars during holidays or free time, can get support in salary and can go deep into Alibaba’s industrial projects. In addition, there are internships for students, ranging from three to six months.
Tan Kun: Huawei also strongly supports cooperation with various schools, and my personal laboratory is also very willing to cooperate with everyone. The main way of cooperation is roughly the same as what Feifei said, there will be long-term cooperation and joint projects. You can contact the project leader of the laboratory at school, our joint laboratory is open to everyone. You can also contact me or Li Bojie, and after discussing with experts, you can set up some single-point cooperation projects. Secondly, Huawei Software Institute currently has an organization called openlab, which is led by Professor Chen Haibo from Shanghai Jiaotong University. Teachers can apply for openlab positions, take advantage of academic vacations or other opportunities, and participate in a consulting or part-time manner. The third is the internship position, which is currently open. The internship starts at three months, and we welcome longer internships (for example, one year or longer). In addition, my laboratory is widely distributed, with offices in Beijing, Shanghai, Hangzhou, Shenzhen, Wuhan, and Xi’an. The directions are different, and teachers who are inclined to cooperate can choose different regions as access points.
Question 4
What is good system research? Are the evaluation standards different between academia and industry? How does the industry choose the direction of future investment?
Tan Kun: Research in the industry and research in academia are two different issues. Academic research encourages everyone to boldly try more new ideas and hopes to explore without any restrictions. I think from the perspective of system research, any idea is allowed on various projects and systems, and then very solid verification can be done. You can prove that it is feasible, or you can prove that it is not feasible, but you can try. As long as the method is reasonable and the result is clear, I think it is very good research, which can provide excellent design sources and ideas for architects and engineers in the industry. However, the system design in the industry cannot be so unrestricted. Taking our laboratory as an example, we are not only a pure research department, but also a platform and product pre-research department. There are mainly the following restrictions: one is to comply with the company’s business facts and choices, and the problems we need to solve are related to the company; the second is to respect the company’s status quo, especially the position in the industry and the status quo of the product. The value of our research must be productizable, and the product must have a feasible path to land. Therefore, industrial research often starts small, but the goal is long-term. However, the system investment in industrial research is very large, which is one of our advantages.
Question 5
At present, many graduate students in the system field choose to work in the industry after graduation, and a few excellent students have also received high honors such as Huawei Genius Youth and Ali Star. What abilities do they value in the industry?
Tan Kun: For the requirements of newcomers, first of all, he must be very open, have a passion for research, and have a team spirit. These are some of the more important qualities in our long-term career. Secondly, we will look at his research experience, including his basic knowledge, research experience, and current skills. But I think compared to the above, if a person is smart enough and he is also very open, very diligent, and has a passion for research, then he can actually learn in work, constantly improve himself, and finally he will definitely become a very excellent researcher and engineer, or even a project leader.