"Good" hardware is integral for a data warehouse and its software to function efficiently, and the architect of the warehouse must be "hardware aware". As each hardware and software technology advances, so do data warehouses with the advent of, for example, new nonvolatile memory (NVM) and high-speed networks for base support. This article focuses on the need to develop and adopt new management and analysis methods.
Research Challenges and Future Research Directions
Challenges
Software's chances of being any more successful depend on whether they can accurately insight into holistic impacts on the system design; define performance bounds of the hardware; put forward new assumptions on new environment; and seek for the good trade-off. These are all the challenges that data management and analytics systems must cope with.
- Firstly, at the system level, new hardware and environment have a systemic impact on existing technologies. This may introduce new performance bottlenecks after eliminating existing ones. Therefore, it is necessary to examine their impact in a higher-level context. In the heterogeneous computing environment composed by new processors and accelerators, although the insufficiency of large-scale parallel capabilities can be offset, the problems of the memory wall, von-Neumann bottleneck, and energy wall may become even worse in the new heterogeneous computing environment. The communication delay between heterogeneous processing units, limited cache capacity, and the non-uniform storage access cost may become a new performance problem. In the environment of new nonvolatile storage, the restrictions in disk I/O stack can be eliminated, but the new NVM I/O stack will significantly magnify the software overhead that is typically ignored in traditional I/O stack. Therefore, redesigning the software stack to reduce its overhead ratio has become a more important design principle. In high-performance network architectures, while network I/O latency is no longer a major constriction in system design, the efficiency of processor caches and local memory becomes more important.
- Secondly, the design philosophy of the algorithm and data structure in the new hardware environment needs to be changed. Directly migrating or partially tuning algorithms and data structures cannot fully exploit the characteristics of the new hardware. At the processor level, data structures and cache-centric algorithms designed for x86-based processors are not designed to match the hardware features of the compute-centric many-core processor. Many mature query processing techniques may fail in platforms with many-core processors. Database has long been designed based on the ideas of serial and small-scale parallel processing-based programming. This makes the traditional query algorithms difficult to convert to a large-scale parallel processing mode. At the storage level, although the NVM has both the advantages of internal and external memory, NVM also has some negative features such as asymmetric read/write costs and low write endurance. These features are significantly different with traditional storage environment, so previous studies on memory, disk, and flash cannot achieve ideal performance within a new storage hierarchy containing NVM. At the network level, the RDMA-enabled cluster is a new hybrid architecture, which is distinct from message-passing architecture or shared-memory architecture. Therefore, the technologies in the non-uniform memory access architecture cannot be directly applied to the RDMA cluster environment.
- Thirdly, the impact of new hardware and environments on data management and analytics technologies is comprehensive, deep, and crosscutting. Due to the new features of the new hardware environment, the functionalities of data management systems cannot be tailored to adapt to the new hardware environment. In heterogeneous computing environments with new processors and accelerators, the parallel processing capacity is greatly improved. However, the richer hardware contexts also pose stringent challenges on achieving high throughput and maintaining data consistency. The impact of NVM on the logging will fundamentally change the length of the critical path of transactions. The reduction in the transaction submission time will result in lock competition, affecting the overall system concurrency capacity and the throughput. With low-latency and high-bandwidth, high-performance networks will change the system's basic assumptions that distributed transactions are difficult to extend. This is also true with the optimization objective of minimizing network latency when designing distributed algorithms. Cache utilization in multi-core architectures will become the new optimization direction. In addition, some of the existing data management components have composite functions. For example, the existing buffer not only relieves the I/O bottleneck of the entire system, but also reduces the overhead of the recovery mechanism. A more complicated scenario is the crosscutting effect between the new hardware and the environment. For example, the out-of-order instruction execution techniques in processors can cause the cached data to be not accessed and executed in the application's logical order. If a single NVM is used to simplify traditional storage tiers, the data serializing on the NVM must be addressed.
- Finally, under the new hardware environment, hardware/software co-design is the inevitable way for the data management and analysis system. The new hardware technology has its inherent advantages and disadvantages, which cannot completely replace the original hardware. For a long time, it is inevitable that the traditional hardware and new hardware coexist. While providing diversified hardware choices, this also leads to more complicated design strategies, more difficult optimization techniques and more difficult performance tuning space. In a heterogeneous computing environment, using coprocessor or co-placement to achieve customized data processing acceleration has created significant differences in system architecture. Moreover, the threshold of parallel programming has become increasingly high, and the gap between software and hardware is becoming larger than ever before. In some cases, the development of software lags behind hardware. In many applications, the actual utilization rate of hardware is well below the upper limit of the performance. However, the new memory devices have significant differentiation and diversification. There is great flexibility and uncertainty in making use of the new nonvolatile memory to construct a NVM environment. Whether the components constitute a simple or a mixed form, and whether the status is equivalent or undetermined, the upper data management and analysis technology has also brought great challenges to research. In high-performance network system, although InfiniBand has considered RDMA from the beginning, the traditional Ethernet has also proposed the solution to support RDMA. There is no exact answer at present on which kind of plan can form the intact industry ecology at the end. Therefore, it is even more necessary to conduct cutting-edge research as soon as possible to explore a new data management architecture suitable for high-performance network environments.
Future Research
New hardware environments such as heterogeneous computing architectures, hybrid storage environments, and high-performance network will surely change the base support of traditional data management and analysis systems. It will bring significant opportunities for the development of key technologies. The future of research can start from the following aspects.
- Lightly coupled system architecture and collaborative design scheme The computing, storage, and networking environments have heterogeneity, diversity, and hybridism. The different environmental components have a significant impact on the design of the upper data management system architecture. To effectively leverage the power of new hardware, the seamless integration of new hardware into the data management stack is an important fundamental research topic. To be compatible with diverse hardware environments and to reduce the risk of failure in highly coupled optimization techniques with specific hardware, the different heterogeneous, hybrid hardware environments must be effectively abstracted and virtualized. Abstraction technology can extract common features for hardware, reduce the low-level over coupling while ensuring hardware awareness, and provide flexible customization and service support for upper-layer technologies. In the meantime, the execution cost and the proportions of different operations will change under the new hardware environment, and the bottleneck of the system is also shifting. As a result, the negligible overhead in traditional software stacks would be significantly magnified. Therefore, based on this, new performance bottlenecks need to be found, a reasonable software stack needs to be redesigned, and the software overhead in the new hardware environment needs to be reduced. In addition, the new hardware environment has advantages including low latency, high capacity, high bandwidth, and high speed read and write. This has brought new opportunities for development of the integration of OLTP and OLAP system and achieving convergent OLTAP system.
- Storage and index management with mixed heterogeneous hardware environments Because of both internal and external memory capabilities, the new nonvolatile memory obscures the clear boundaries between existing storages. This also offers a considerable degree of freedom for the construction of the new nonvolatile storage environment and storage methods. The method can provide a powerful guarantee for accelerating the processing of data in the upper layer. Although the high-speed I/O capabilities of NVM offer opportunities for enhancing data access performance, NVM only ensures nonvolatility only at the device level. At the system lever, however, the caching mechanisms may introduce the inconsistency issue. Therefore, in the future, collaborative technology needs to be studied at different levels such as architecture, strategy, and implementation. In addition, as a dedicated acceleration hardware, FPGA has its own unique advantages in accelerating data processing. In particular, the combination of NVM features can further enhance the data processing efficiency. Therefore, with the data storage engine optimization and reconstruction techniques as well as the data access accelerating and data filtering technology in the FPGA, the preprocessing on the original data can be effectively completed. This will reduce the amount of data to be transferred, thereby alleviating bottlenecks of data access in large-scale data processing. Moreover, the NVM environment has a richer storage hierarchy, while new processor technology also provides additional data processing capabilities for indexing. Therefore, multi-level and processor-conscious indexing technology is also a future research direction.
- Hardware-aware query processing and performance optimization Query processing is the core operation in data analysis, involving a series of complex activities in the data extraction process. The high degree of parallelism and customizable capabilities provided by heterogeneous computing architectures, as well as the new I/O features of NVM environments, make previous query processing and optimization mechanisms difficult to apply. Future research may focus on two aspects. One is query optimization technology in NVM environment: high-speed NVM read and write, byte addressable, asymmetric read and write, and other features. It will exert a significant impact on traditional query operations such as join, sort, and aggregation. At the same time, NVM has changed the composition of traditional storage hierarchy and also affected the traditional measurement hypothesis of estimating query cost, which is based on the cost of disk I/O. Therefore, it is necessary to study the cost model in NVM environment and the design and optimization of write-limited algorithms and data structures, so that the negative impact of NVM write operations is alleviated. On the other hand, query optimization technology under heterogeneous processor platforms: the introduction of a new processor increases the dimension of heterogeneous computing platforms, resulting in the increased complexity of the query optimization techniques. This poses a huge challenge to the design of query optimizers. Collaborative query processing technology, query optimization technology, and hybrid query execution plan generation technology are all ways to improve the query efficiency in the heterogeneous computing platform.
- New hardware-enabled transaction processing technologies Concurrency control and recovery are core functions in data management which ensure transaction isolation and persistence. Their design and implementation are tightly related to the underlying computing and storage environment. At the same time, high-performance network environments also provide new opportunities for distributed transaction processing which were difficult to scale out. First of all, the storage hierarchy and the new access characteristics have the most significant impact on transaction recovery technology. Database recovery technology needs to be optimized according to the features of NVM. Recovery technology for NVM, partitioning technology, and concurrent control protocol based on NVM are all urgent research topics. Second, transactions typically involve multiple types of operations as well as synchronization among them. However, general-purpose processors and specialized accelerators have different data processing modes. Separating the transactional processing performed by the general-purpose CPU, and offloading part of the workload to specialized processor, is capable of enhancing the performance of transaction processing. Therefore, studying the load balancing and I/O optimization technologies that accelerate the transaction processing is an effective way to solve the performance bottlenecks in transaction processing. Furthermore, in RDMA-enabled network, the assumption about distributed transactions cannot scale will cease to exist. RDMA-enabled distributed commit protocols and pessimistic and optimistic concurrency control approaches for RDMA may all be potential research directions.