Database management system, computer, and database management method

US9842136B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9842136-B2
Application numberUS-201214397051-A
CountryUS
Kind codeB2
Filing dateApr 27, 2012
Priority dateApr 27, 2012
Publication dateDec 12, 2017
Grant dateDec 12, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A database management system (DBMS) generates a query execution plan including information indicating one or more database (DB) operations necessary to execute the query. The DBMS dynamically generates a task for executing the DB operation in execution of the query. The DBMS performs a determination processing of simultaneous-task-generation number when newly creating a task. The determination processing of simultaneous-task-generation number is to calculate the number of simultaneous task generation, which is the number of tasks that can be generated simultaneously, based on the number of tasks which can be newly generated, a first memory resource amount which is the amount of memory resources necessary to be allocated per task newly generated, and a second memory resource amount which is the number of memory resources that can be newly allocated. The number of tasks generated dynamically and simultaneously is equal to or smaller than the calculated number of simultaneously generatable tasks.

First claim

Opening claim text (preview).

The invention claimed is: 1. A database management system for managing a database, the database management system comprising: a memory coupled to a processor, the memory storing instructions, that when executed by the processor, cause the processor to: receive a query to the database, generate a query execution plan including information indicating one or more database operations necessary to execute the received query, execute the received query based on the generated query execution plan, wherein the memory further stores instructions that when executed by the processor, cause the processor to: dynamically generate a task for executing a database operation in execution of the received query, calculate a first number of tasks to be generated based on the query execution plan, calculate a memory reservation amount based on a product of a first memory resource amount which is an amount of memory resources necessary to be allocated per a newly generated task and the first number of tasks, allocate memory resources based on the calculated memory reservation amount, calculate a second number of tasks to be executed simultaneously, which is less than the calculated first number of tasks, based on a difference between the first memory resource amount and the allocated memory resources, the second number of tasks to be calculated when newly generating the task during execution of the query, execute the second number of tasks simultaneously, and release the allocated memory resources after the execution of the second number of tasks, wherein the memory further stores instructions that when executed by the processor, cause the processor to: when newly generating the task, generate a context, execute the calculation of the number of tasks based on the generated context, and execute the generated task based on the generated context, and wherein the context includes first information indicating which of one or more database operations, as information included in the query execution plan, corresponds to a database operation that initiates execution in the task newly generated, second information regarding a data access destination necessary in the database operation indicated by the first information, and third information regarding data necessary to generate a result regarding the one or more database operations from the task newly generated. 2. The database management system according to claim 1 , wherein the memory further stores instructions that when executed by the processor, cause the processor to: when executing two or more partial queries in parallel, in executing the one or more queries in parallel, initiating execution in parallel by a separate task, and the two or more partial queries are included in execution of the one or more queries, perform the determination processing of task-generation number when newly generating a task in execution of each of the two or more partial queries. 3. The database management system according to claim 2 , wherein the memory further stores instructions that when executed by the processor, cause the processor to: in the calculation of the second number of tasks, in execution of one of the two or more partial queries, a second memory resource amount, which is an amount of memory resources that can be newly allocated, is the smaller of fourth and fifth memory resource amounts, wherein the fourth memory resource amount is an amount obtained by subtracting a reserved memory resource amount, which is a total sum of the reservation memory resource amount corresponding to the one partial query, from an amount of memory resources which can be allocated to the execution of the one partial query, the amount of memory resources being obtained by distributing a total memory resource amount, which is a total sum of memory resources allocatable to execution of all the partial queries depending on priorities corresponding to each of the two or more partial queries, and wherein the fifth memory resource amount is an unreserved memory resource amount obtained by subtracting a total sum of the two or more reserved memory resource amounts corresponding to execution of the two or more partial queries from the total memory resource amount. 4. The database management system according to claim 3 , wherein the memory further stores instructions that when executed by the processor, cause the processor to: dynamically change the priority of the partial query based on at least one of a target execution time, an execution progress rate, and a query execution time for each of the partial queries. 5. The database management system according to claim 3 , wherein the memory further stores instructions that when executed by the processor, cause the processor to: change the priority of the partial query in accordance with information received using an input interface that receives a change of the priority of the partial query. 6. The database management system according to claim 1 , wherein the memory further stores instructions that when executed by the processor, cause the processor to: when executing the generated task, allocate memory resources whose amount is based on the first memory resource amount, to the generated task, from the memory resources reserved in the reservation processing, and when terminating execution of the generated task, release the memory resources allocated to the generated task and cancel the reservation of the memory resources. 7. The database management system according to claim 1 , wherein the memory further stores instructions that when executed by the processor, cause the processor to: calculate the second number of tasks when the task is newly generated based on a result of execution of a database operation corresponding to the executed task. 8. The database management system according to claim 1 , wherein the memory further stores instructions that when executed by the processor, cause the processor to: calculate the number of second tasks using the generated context when the second memory resource amount increases. 9. The database management system according to claim 8 , wherein the memory further stores instructions that when executed by the processor, cause the processor to: generate the context when a ratio of the number of subsequent database operations up to result generation from the database operation that initiates execution in the task newly generated, to a total number of the database operations up to the result generation out of the one or more database operations is greater than a predetermined value. 10. The database management system according to claim 8 , wherein the memory further stores instructions that when executed by the processor, cause the processor to: execute the subsequent database operations using the task under execution without generating the context and a new task when a ratio of the number of subsequent database operations up to result generation from the database operation that initiates execution in the new generated task, to a total number of the database operations up to the result generation out of the one or more database operations is equal to or smaller than a predetermined value. 11. The database management system according to claim 1 , wherein memory further stores instructions that when executed by the processor, cause the processor to: wherein the first memory resource amount is a memory resource amount necessary to execute subsequent database operations up to result generation from a database operation that initiates execution in the task newly generated out of one or more database operations which is information included in the query execution plan.

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9842136B2 cover?
A database management system (DBMS) generates a query execution plan including information indicating one or more database (DB) operations necessary to execute the query. The DBMS dynamically generates a task for executing the DB operation in execution of the query. The DBMS performs a determination processing of simultaneous-task-generation number when newly creating a task. The determination …
Who is the assignee on this patent?
Tokuda Seisuke, Shimizu Akira, Yoshida Michiko, and 7 more
What technology area does this patent fall under?
Primary CPC classification G06F17/30463. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 12 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).