发明名称 Database management system and method
摘要 A database management system has a query interface for receiving a query and a query executor for executing the received query. The query executor dynamically generates a task, and executes a plurality of tasks in parallel. In execution of each task, each time data is required to be read from a database, the query executor generates a task for acquiring the data, and in execution of the generated task, issues a data read request for reading the data from the database, to thereby shorten a time taken to execute each task.
申请公布号 US9177027(B2) 申请公布日期 2015.11.03
申请号 US201213527951 申请日期 2012.06.20
申请人 发明人 Kitsuregawa Masaru;Goda Kazuo
分类号 G06F17/30 主分类号 G06F17/30
代理机构 Mattingly & Malur, PC 代理人 Mattingly & Malur, PC
主权项 1. A database management system for managing a database, comprising: a query interface for receiving a query to said database; a query plan generator connected with said query interface for generating a query plan from said received query, said generated query plan comprising a plurality of database operations necessary for execution of said received query; and at least one hardware processor connected with said database and said query plan generator for executing said received query in accordance with said generated query plan, wherein said at least one hardware processor: executes the following steps for executing said received query: (A) a step of generating a task for executing a database operation associated to said task and starting to execute said generated task, (B) a step of issuing a data read request to a storage device storing said database to read data necessary for executing said database operation in executing said generated task, (C) when a plurality of tasks can be generated, in accordance with a result of execution of said database operation, for a next database operation which is necessary for executing said received query, a step of generating said plurality of tasks in accordance with said result of execution of said database operation, and (D) a step of recursively executing steps (B) and (C) for each of said plurality of tasks generated in step (C); whereby parallel processing of at least two tasks of said plurality of tasks generated in recursive execution of steps (B) and (C) is performed; and after issuing said data read requests for said generated tasks in step (B), suspends execution of said generated tasks and thereafter, upon completion of data read of said data read requests, resumes execution of said generated tasks for starting to execute said database operations associated to said generated tasks with said read data for said generated tasks in the same order that the at least one hardware processor issues said data read requests.
地址 Tokyo JP