IP Library Granted Patent US 8,180,728
Granted Patent B2
US 8,180,728 · App. 12/563,657 · Granted May 15, 2012

Area-specific reload of database

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,180,728
App. No.
12/563,657
Granted
May 15, 2012
Kind
B2
Abstract

A hierarchical database stores data for the database in a plurality of areas. A disclosed technique allows reorganization of one or more areas of the database without stopping the entire database. The areas to be reorganized are first stopped, then the areas are unloaded, reorganized, and reloaded, before restarting the reorganized areas. In-memory control blocks for the areas are updated to indicate to the database software that the areas have been reorganized, without stopping the entire database.

Claims (78)

1. A method, comprising:

maintaining a first set of control blocks in a memory, representing information about a hierarchical database, wherein a first subset of the first set of control blocks corresponds to a first database storage area of a plurality of database storage areas and a second subset of the first set of control blocks corresponds to a second database storage area of the hierarchical database;

stopping the first database storage area;

unloading data from the first database storage area;

reorganizing the first database storage area;

generating a second set of control blocks in memory corresponding to the reorganized first database storage area;

creating a new data structure in memory;

copying into the new data structure pointers to the second subset of the first set of control blocks and pointers to the second set of control blocks;

replacing a pre-existing data structure with the new data structure;

reloading the unloaded data to the reorganized first database storage area; and

starting the reorganized first database storage area,

wherein the second database storage area of the hierarchical database remains started while performing the acts of unloading, reorganizing, reloading, and starting.

2. The method of claim 1 , wherein starting the first database storage area occurs after the unloading, reorganizing, and reloading.

3. The method of claim 1 , further comprising:

suspending transactions that affect data stored in the first storage area during the unloading, reorganizing, reloading, and starting; and

processing the suspended transactions after starting the reorganized first storage area.

4. The method of claim 1 , wherein the act of copying pointers into the new data structure comprises:

copying the pointers from the pre-existing data structure to the new data structure;

determining that the first subset of the first set of control blocks corresponds with the reorganized first database storage area; and

replacing pointers to the first subset of the first set of control blocks with pointers to the second set of control blocks.

5. The method of claim 1 , further comprising:

determining whether the first database storage area can be reorganized without stopping all of the plurality of database storage areas; and

refusing to allow reorganization of the first database area when it is determined that the first database storage area cannot be reorganized without stopping all of the plurality of database storage areas.

6. The method of claim 5 , wherein the act of determining whether the first database storage area can be reorganized without stopping all of the plurality of database storage areas comprises:

determining whether the entire hierarchical database is stopped;

determining whether the hierarchical database has been initialized;

determining whether the hierarchical database is of a predetermined type;

determining whether the first database storage area is defined in the hierarchical database; and

determining whether an attempt is being made to modify a feature shared by all of the plurality of database storage areas.

7. The method of claim 5 , wherein the predetermined type is an IMS fast path data entry database.

8. A system, comprising:

a processor;

a memory, coupled to the processor; and

a storage subsystem, coupled to the processor, comprising:

storage for a hierarchical database comprising a plurality of database storage areas; and

storage for a hierarchical database software, comprising instructions that when executed by the processor cause the processor to perform actions in accordance with claim 1 .

9. The system of claim 8 , wherein the hierarchical database is an Information Management System (IMS) fast path data entry database.

10. The system of claim 8 , wherein the hierarchical database software further comprises instructions for causing the processor to:

suspend transactions that affect data stored in the first storage area during the unloading, reorganizing, reloading, and starting; and

process the suspended transactions after starting the reorganized first storage area.

11. The system of claim 8 , wherein the instructions for causing the processor to copying pointers into the new data structure comprise instructions that cause the processor to:

copy the pointers from the pre-existing data structure to the new data structure;

determine that the first subset of the first set of control blocks corresponds with the reorganized first database storage area; and

replace pointers to the first subset of the first set of control blocks with pointers to the second set of control blocks.

12. The system of claim 8 , wherein the hierarchical database software further comprises instructions that when executed by the processor cause the processor to:

determine whether the first database storage area can be reorganized without stopping all of the plurality of database storage areas; and

refuse to allow reorganization of the first database area when it is determined that the first database storage area cannot be reorganized without stopping all of the plurality of database storage areas.

13. The system of claim 12 , wherein the instructions that cause the processor to determine whether the first database storage area can be reorganized without stopping all of the plurality of database storage areas comprise instructions that when executed cause the processor to:

determine whether the entire hierarchical database is stopped; determine whether the hierarchical database has been initialized; determine whether the hierarchical database is of a predetermined type;

determine whether the first database storage area is defined in the hierarchical database; and

determine whether an attempt is being made to modify a feature shared by all of the plurality of database storage areas.

14. The system of claim 13 , wherein the predetermined type is an IMS fast path data entry database.

15. A non-transitory computer readable medium with instructions for a computer stored thereon wherein the instructions cause the computer to perform actions in accordance with claim 1 .

16. The computer readable medium of claim 15 , wherein the hierarchical database is an Information Management System (IMS) fast path data entry database.

17. The computer readable medium of claim 15 , wherein the hierarchical database software further comprises instructions for causing the processor to:

suspend transactions that affect data stored in the first storage area during the unloading, reorganizing, reloading, and starting; and

process the suspended transactions after starting the reorganized first storage area.

18. The computer readable medium of claim 15 , wherein the instructions that when executed cause the processor to copying pointers into the new data structure comprises instructions that cause the processor to:

copy the pointers from the pre-existing data structure to the new data structure;

determine that the first subset of the first set of control blocks corresponds with the reorganized first database storage area; and

replace pointers to the first subset of the first set of control blocks with pointers to the second set of control blocks.

19. The computer readable medium of claim 15 , wherein the hierarchical database software further comprises instructions for causing the processor to:

determine whether the first database storage area can be reorganized without stopping all of the plurality of database storage areas; and

refuse to allow reorganization of the first database area when it is determined that the first database storage area cannot be reorganized without stopping all of the plurality of database storage areas.

20. The computer readable medium of claim 19 , wherein instructions that cause the processor to determine whether the first database storage area can be reorganized without stopping all of the plurality of database storage areas comprise instructions that cause the processor to:

determine whether the entire hierarchical database is stopped; determine whether the hierarchical database has been initialized; determine whether the hierarchical database is of a predetermined type;

determine whether the first database storage area is defined in the hierarchical database; and

determine whether an attempt is being made to modify a feature shared by all of the plurality of database storage areas.

21. A networked computer system, comprising:

a plurality of database systems, each comprising:

a processor;

a memory, coupled to the processor; and

a storage subsystem, coupled to the processor, comprising:

storage for a hierarchical database software, comprising instructions that when executed by the processor cause the processor to perform actions in accordance with claim 1 ,

wherein the storage subsystem of a first database system of the plurality of database systems further comprises:

storage for a hierarchical database comprising a plurality of database storage areas, and

wherein the hierarchical database is shared by all of the plurality of database systems.

22. The networked computer system of claim 21 , wherein hierarchical database software of the first database system notifies the hierarchical database software of the other database systems of the plurality of database systems to perform actions in accordance with claim 1 .

Assignments (12)
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY AGREEMENT Recorded Sep 11, 2013
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 031204/0225 →