With the rapid development of process industry, traditional stand-alone real-time database has been unable to meet the scalability and fault tolerance requirements of large-scale process industry. Distributed real-time database with high capacity, high scalability and high fault tolerance ability has become a new research branch in the field of real-time database. The traditional real-time database is lack of specific research targeted on requirements of process industry and distributed transaction processing issues such as transaction decomposition, transaction amalgamation and data consistency. Through in-depth analysis on the business features of process industrial real-time database, this thesis presents a transaction management module for real-time database using key technologies including query transaction optimization, real-time transaction scheduling and distributed transaction commit.In this thesis, a real-time transaction model is presented through in-depth analysis on indicators of internal and external requests in real-time database such as data type of operation, atomic requirement and real-time requirement. Based on this model, the transaction management module uses priority scheduling algorithm with access control to schedule real time transactions, assigning higher priority to transactions with close deadline and internal transactions. For the priority inversion problem in traditional two-phase locking algorithm and cycle seize problem in preemptive locking algorithm, this thesis presents a priority two-phase locking algorithm based on transaction execution time estimation. The algorithm decides whether high-priority transactions seize the resources according to dead time and execution time estimation to reduce high-priority transactions missing ratio and unnecessary seize. In order to ensure real-time requirement of transactions, this thesis proposes a non-blocking two-phase commit protocol. A candidate coordinator is introduced in the protocol to avoid blocking problem caused by coordinator failure. Meanwhile, this thesis presents an intelligent query mechanisms base on multiple copies mechanisms to speed up historical data query.In the end of this thesis, a test platform was introduced to verify function, performance and reliability of transaction management module. Test results show that:the transaction management module is able to deal with requests such as historical data queries, real-time data feeds and real-time data push. The module works when the number of live nodes is no less than half of total number. Performance indicators including concurrent number of queries, query responding time and data consistency meet design requirements. The results show that the transaction management module can meet the design requirements on function, performance and reliability. |