Dynamically deploying execution nodes using system throughput

US12481644B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12481644-B2
Application numberUS-202017014467-A
CountryUS
Kind codeB2
Filing dateSep 8, 2020
Priority dateSep 8, 2020
Publication dateNov 25, 2025
Grant dateNov 25, 2025

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 method, system, and computer program product for using logical segments to help manage database tasks and performance for SQL parallelism. The method may include identifying a database object within a database resource of a database. The method may further include determining a database access method for the database object. The method may further include dividing data within the database object into a plurality of logical segments based on the database access method. The method may further include receiving a query for the database. The method may further include identifying the database object that corresponds to the query. The method may further include analyzing the logical segments of the database object. The method may further include distributing access to the database resource based on the logical segments of the database object.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computer-implemented method comprising: dividing data within a database object within a database resource of a database into a plurality of logical segments based on an index scan comprising index only access and restrictions to database object access, wherein the dividing the data is based on a key-value from a non-leaf page, wherein a first logical segment of the plurality of logical segments comprises a range of data pages that are managed by a space map page, and wherein the space map page is a page that exists in both a table space and an index; identifying the database object that corresponds to a query for the database; analyzing the plurality of logical segments of the database object; and dynamically allocating access to the database resource based on the plurality of logical segments of the database object by: creating a logical segment task map for the database object, wherein the logical segment task map records respective logical segments for the database object, tasks that are scheduled to process the respective logical segments, and indications when the respective logical segments have been processed; tracking, using the logical segment task map, the tasks for the database object, their corresponding logical segments, and their corresponding processing indications; in response to determining that the first logical segment from the plurality of logical segments is currently being processed: waiting for the first logical segment to finish processing; stopping subsequent second logical segments from being processed; granting the query for the database resource; and updating the logical segment task map; and in response to determining that the first logical segment is not being processed: processing the query; and updating the logical segment task map. 2 . The method of claim 1 , wherein the dividing the data within the database object into the plurality of logical segments is further based on a join method and a join sequence. 3 . The method of claim 2 , wherein the join method is a nest loop join. 4 . The method of claim 2 , wherein the join sequence comprises at least a leading table and a non-leading table. 5 . A system comprising: one or more computer processors; and one or more computer-readable storage media collectively storing program instructions, which, when executed by the one or more computer processors, are configured to cause the one or more computer processors to perform computer operations comprising: divide data within a database object within a database resource of a database into a plurality of logical segments based on an index scan comprising index only access and restrictions to database object access, wherein the dividing the data is based on a key-value from a non-leaf page, wherein a first logical segment of the plurality of logical segments comprises a range of data pages that are managed by a space map page, and wherein the space map page is a page that exists in both a table space and an index; identify the database object that corresponds to a query for the database; analyze the plurality of logical segments of the database object; and dynamically allocate access to the database resource based on the plurality of logical segments of the database object by: creating a logical segment task map for the database object, wherein the logical segment task map records respective logical segments for the database object, tasks that are scheduled to process the respective logical segments, and indications when the respective logical segments have been processed; tracking, using the logical segment task map, the tasks for the database object, their corresponding logical segments, and their corresponding processing indications; in response to determining that the first logical segment from the plurality of logical segments is currently being processed: waiting for the first logical segment to finish processing; stopping subsequent second logical segments from being processed; granting the query for the database resource; and updating the logical segment task map; and in response to determining that the first logical segment is not being processed: processing the query; and updating the logical segment task map. 6 . The system of claim 5 , wherein the dividing the data within the database object into the plurality of logical segments is further based on a join method and a join sequence. 7 . A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a server to cause the server to perform a method, the method comprising: dividing data within a database object within a database resource of a database into a plurality of logical segments based on an index scan comprising index only access and restrictions to database object access, wherein the dividing the data is based on a key-value from a non-leaf page, wherein a first logical segment of the plurality of logical segments comprises a range of data pages that are managed by a space map page, and wherein the space map page is a page that exists in both a table space and an index; identifying the database object that corresponds to a query for the database; analyzing the plurality of logical segments of the database object; and dynamically allocating access to the database resource based on the plurality of logical segments of the database object by: creating a logical segment task map for the database object, wherein the logical segment task map records respective logical segments for the database object, tasks that are scheduled to process the respective logical segments, and indications when the respective logical segments have been processed; tracking, using the logical segment task map, the tasks for the database object, their corresponding logical segments, and their corresponding processing indications; in response to determining that the first logical segment from the plurality of logical segments is currently being processed: waiting for the first logical segment to finish processing; stopping subsequent second logical segments from being processed; granting the query for the database resource; and updating the logical segment task map; and in response to determining that the first logical segment is not being processed: processing the query; and updating the logical segment task map. 8 . The method of claim 2 , wherein the join method is a sort merge join. 9 . The system of claim 6 , wherein the join method is a nest loop join. 10 . The system of claim 6 , wherein the join method is a sort merge join. 11 . The system of claim 6 , wherein the join sequence comprises at least a leading table and a non-leading table. 12 . The computer program product of claim 7 , wherein the dividing the data within the database object into the plurality of logical segments is further based on a join method and a join sequence. 13 . The computer program product of claim 12 , wherein the join method is a nest loop join. 14 . The computer program product of claim 12 , wherein the join sequence comprises at least a leading table and a non-leading table. 15 . The computer program product of claim 12 , wherein the join method is a sort merge join.

Assignees

Inventors

Classifications

  • by program, e.g. task dispatcher, supervisor, operating system · CPC title

  • Join order optimisation · CPC title

  • Join operations · CPC title

  • Updates performed during online database operations; commit processing · CPC title

  • of parallel queries · CPC title

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 US12481644B2 cover?
A method, system, and computer program product for using logical segments to help manage database tasks and performance for SQL parallelism. The method may include identifying a database object within a database resource of a database. The method may further include determining a database access method for the database object. The method may further include dividing data within the database obj…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F16/2379. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 25 2025 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).