← Back to Patent Explorer
US6105030A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for copying data that resides in a database

Assignee: Oracle International Corp
•
Filing: 1998-02-27
•
Granted: 2000-08-15
•
Expires: 2018-02-27
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A consistent set of data is supplied to a software application from databases. When a particular set of data is identified, a first process is requested to obtain a snapshot time from a database server associated with the first database. The snapshot time causes all subsequent reads of the first database by the first process to return data that reflects a database state associated with the snapshot time. A first set of data in the first database is locked in order to produce a copy of data from a first database. After locking the first set of data, a plurality of processes are requested to obtain snapshot times from a database server associated with the first database. The snapshot times cause all subsequent reads of the first database by the plurality of processes to return data from the first database as of the snapshot times.

Inventors

  • 👤 Nadeem Syed
  • 👤 Kurt Robson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 20:36
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/23; G06F16/2308; G06F16/2336; G06F16/2343; G06F16/27; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99932

Claims Analysis

Total Claims: 47
Claim 1
Independent Claim 124 words
A method for supplying a consistent set of data to a software application, the method comprising the steps of: launching said software application; identifying a particular set of data that is required by the software application; requesting a first process to obtain a snapshot time from a database server associated with a first database, wherein the snapshot time causes all subsequent reads of said first database by the first process to return data that reflects a database state associated with the snapshot time; after the first process obtains the snapshot time, causing the first process to extract the particular set of data from the first database; and supplying said software application with the particular set of data that was extracted from the first database.
Claim 2
Independent Claim 124 words
A method for supplying a consistent set of data to a software application, the method comprising the steps of: launching said software application; identifying a particular set of data that is required by the software application; requesting a first process to obtain a snapshot time from a database server associated with a first database, wherein the snapshot time causes all subsequent reads of said first database by the first process to return data that reflects a database state associated with the snapshot time; after the first process obtains the snapshot time, causing the first process to extract the particular set of data from the first database; and supplying said software application with the particular set of data that was extracted from the first database.
Claim 3
Dependent Claim 25 words
The method of claim 1, further comprising the step of causing a second process to store the particular set of data in a second database.
Claim 4
Dependent Claim 66 words
The method of claim 2, wherein the step of causing the second process to store the particular set of data in the second database includes the steps of: writing the particular set of data to one or more flat files; and executing a loader process, wherein the loader process loads the particular set of data from the one or more flat files to the second database.
Claim 5
Dependent Claim 66 words
The method of claim 3, wherein the step of writing the particular set of data to one or more flat files includes the steps of: the first process informing a coordinator process when it has finished writing data to a particular flat file; and the coordinator using the information to tell the loader process when it can begin loading the flat file into the second database.
Claim 6
Dependent Claim 72 words
The method of claim 3, wherein the step of: writing the particular set of data to the flat file includes the step of writing the particular set of data to a plurality of flat files; and executing the loader process includes the step of executing a plurality of loader processes, wherein the plurality of loader processes load the particular set of data from the plurality of flat files to the second database.
Claim 7
Dependent Claim 54 words
The method of claim 2, wherein the step of supplying said software application with data from said particular set of data includes the steps of: said software application reading the particular set of data stored in the second database; and said software application generating a planning schedule based on the particular set of data.
Claim 8
Dependent Claim 42 words
The method of claim 1, wherein the step of identifying the particular set of data includes the step of creating a copy table list, wherein the copy table list contains entries that identify the particular set of data in the first database.
Claim 9
Dependent Claim 44 words
The method of claim 7, further comprising the steps of: executing a delete process, wherein the delete process uses the copy table list to identify data that needs to be deleted in a second database; and deleting the identified data from the second database.
Claim 10
Dependent Claim 55 words
The method of claim 7, where the step of creating the copy table list includes the steps of: communicating with the software application to identifying a set of planning data, where the planning data is required for generating a planning schedule; and creating the copy table list based on the identified set of planning data.
Claim 11
Dependent Claim 68 words
The method of claim 1, wherein the step of supplying said software application with data from said particular set of data includes the steps of: writing the particular set of data to one or more flat files; and supplying the one or more flat files to said software application, wherein said software application generates a planning schedule based on information contained in the one or more flat files.
Claim 12
Independent Claim 175 words
A method for producing a copy of data from a first database, the method comprising the steps of: locking a first set of data in the first database; after locking the first set of data, requesting a plurality of processes to obtain snapshot times from a database server associated with said first database, wherein the snapshot times cause all subsequent reads of the first database by the plurality of processes to return data from the first database as of said snapshot times; waiting a particular period of time for the plurality of processes to be assigned snapshot times; releasing the locks on the first set of data in the first database; using a successful set of said plurality of processes to extract a copy of the first set of data from the first database, wherein said successful set includes only those processes of the plurality of processes that were assigned a snapshot time within the particular period of time; and storing the copy of the first set of data separate from said first of data.
Claim 13
Independent Claim 175 words
A method for producing a copy of data from a first database, the method comprising the steps of: locking a first set of data in the first database; after locking the first set of data, requesting a plurality of processes to obtain snapshot times from a database server associated with said first database, wherein the snapshot times cause all subsequent reads of the first database by the plurality of processes to return data from the first database as of said snapshot times; waiting a particular period of time for the plurality of processes to be assigned snapshot times; releasing the locks on the first set of data in the first database; using a successful set of said plurality of processes to extract a copy of the first set of data from the first database, wherein said successful set includes only those processes of the plurality of processes that were assigned a snapshot time within the particular period of time; and storing the copy of the first set of data separate from said first of data.
Claim 14
Dependent Claim 42 words
The method of claim 11, wherein the step of identifying the first set of data includes the step of creating a copy table list, wherein the copy table list contains entries that identify the first set of data in the first database.
Claim 15
Dependent Claim 52 words
The method of claim 12, where the step of creating the copy table list includes the steps of: identifying a set of planning data, where the planning data is required to generate a planning schedule; and creating the copy table list based on the planning data required to generate the planning schedule.
Claim 16
Dependent Claim 48 words
The method of claim 12, further comprising the steps of: executing a plurality of delete processes, wherein the plurality of delete processes use the copy table list to identify data that needs to be deleted in a second database; and deleting the identified data from the second database.
Claim 17
Dependent Claim 69 words
The method of claim 11, wherein the step of storing the copy of the first set of data includes the steps of: writing the copy of the first set of data to a plurality of flat files; and executing a plurality of loader processes, wherein the plurality of loader processes load the copy of the first set of data from the plurality of flat files to a second database.
Claim 18
Dependent Claim 102 words
The method of claim 15, wherein: the steps of writing the copy of the first set of data to a plurality of flat files further includes the step of notifying a coordinator process that data has been written to one of the plurality of flat files; and the steps of executing the plurality of loader processes further includes the step of the coordinator, upon being notified that data has been written to one of the plurality of flat files, launching a loader process to load the first set of data from one of the plurality of flat files to the second database.
Claim 19
Dependent Claim 75 words
The method of claim 15, wherein the step of writing the copy of the first set of data to the plurality of flat files includes the steps of: the plurality of process informing a coordinator process when it has finished writing data to a particular flat file; and the coordinator using the information to tell one of the plurality of loader processes when it can begin loading the particular flat file into the second database.
Claim 20
Dependent Claim 51 words
The method of claim 11, wherein the step of requesting the plurality of processes to obtain a snapshot time includes the step of requesting the plurality of processes based on a user input parameter, wherein the user input parameter identifies how many processes should be requested to obtain a snapshot time.
Claim 21
Dependent Claim 60 words
The method of claim 11, wherein the step of extracting the copy of the first set of data from the database includes the steps of: assigning a set of copy data to the plurality of snapshot processes; and retrieving data from the first database based on the set of copy data that was assigned to the plurality of snapshot processes.
Claim 22
Dependent Claim 42 words
The method of claim 11, wherein the step of storing the copy of the first set of data includes the steps of storing the copy of the first set of data as blob files that are separate from said first of data.
Claim 23
Dependent Claim 36 words
The method of claim 11, wherein the step of storing the copy of the first set of data includes the steps of storing the copy of the first set of data in said first of data.
Claim 24
Dependent Claim 160 words
A computer-readable medium carrying one or more sequences of one or more instructions for supplying a consistent set of data to a software application, the one or more sequences of one or more instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: launching said software application; identifying a particular set of data that is required by the software application; requesting a first process to obtain a snapshot time from a database server associated with a first database, wherein the snapshot time causes all subsequent reads of said first database by the first process to return data that reflects a database state associated with the snapshot time; after the first process obtains the snapshot time, causing the first process to extract the particular set of data from the first database; and supplying said software application with the particular set of data that was extracted from the first database.
Claim 25
Dependent Claim 160 words
A computer-readable medium carrying one or more sequences of one or more instructions for supplying a consistent set of data to a software application, the one or more sequences of one or more instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: launching said software application; identifying a particular set of data that is required by the software application; requesting a first process to obtain a snapshot time from a database server associated with a first database, wherein the snapshot time causes all subsequent reads of said first database by the first process to return data that reflects a database state associated with the snapshot time; after the first process obtains the snapshot time, causing the first process to extract the particular set of data from the first database; and supplying said software application with the particular set of data that was extracted from the first database.
Claim 26
Dependent Claim 33 words
The computer-readable medium of claim 22, wherein the computer-readable medium further comprises instructions for performing the step of causing a second process to store the particular set of data in a second database.
Claim 27
Dependent Claim 67 words
The computer-readable medium of claim 23, wherein the step of causing the second process to store the particular set of data in the second database includes the steps of: writing the particular set of data to one or more flat files; and executing a loader process, wherein the loader process loads the particular set of data from the one or more flat files to the second database.
Claim 28
Dependent Claim 67 words
The computer-readable medium of claim 24, wherein the step of writing the particular set of data to one or more flat files includes the steps of: the first process informing a coordinator process when it has finished writing data to a particular flat file; and the coordinator using the information to tell the loader process when it can begin loading the flat file into the second database.
Claim 29
Dependent Claim 43 words
The computer-readable medium of claim 22, wherein the step of identifying the particular set of data includes the step of creating a copy table list, wherein the copy table list contains entries that identify the particular set of data in the first database.
Claim 30
Dependent Claim 211 words
A computer-readable medium carrying one or more sequences of one or more instructions for producing a copy of data from a first database, the one or more sequences of one or more instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: locking a first set of data in the first database; after locking the first set of data, requesting a plurality of processes to obtain snapshot times from a database server associated with said first database, wherein the snapshot times cause all subsequent reads of the first database by the plurality of processes to return data from the first database as of said snapshot times; waiting a particular period of time for the plurality of processes to be assigned snapshot times; releasing the locks on the first set of data in the first database; using a successful set of said plurality of processes to extract a copy of the first set of data from the first database, wherein said successful set includes only those processes of the plurality of processes that were assigned a snapshot time within the particular period of time; and storing the copy of the first set of data separate from said first of data.
Claim 31
Dependent Claim 211 words
A computer-readable medium carrying one or more sequences of one or more instructions for producing a copy of data from a first database, the one or more sequences of one or more instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: locking a first set of data in the first database; after locking the first set of data, requesting a plurality of processes to obtain snapshot times from a database server associated with said first database, wherein the snapshot times cause all subsequent reads of the first database by the plurality of processes to return data from the first database as of said snapshot times; waiting a particular period of time for the plurality of processes to be assigned snapshot times; releasing the locks on the first set of data in the first database; using a successful set of said plurality of processes to extract a copy of the first set of data from the first database, wherein said successful set includes only those processes of the plurality of processes that were assigned a snapshot time within the particular period of time; and storing the copy of the first set of data separate from said first of data.
Claim 32
Dependent Claim 43 words
The computer-readable medium of claim 27, wherein the step of identifying the first set of data includes the step of creating a copy table list, wherein the copy table list contains entries that identify the first set of data in the first database.
Claim 33
Dependent Claim 70 words
The computer-readable medium of claim 27, wherein the step of storing the copy of the first set of data includes the steps of: writing the copy of the first set of data to a plurality of flat files; and executing a plurality of loader processes, wherein the plurality of loader processes load the copy of the first set of data from the plurality of flat files to a second database.
Claim 34
Dependent Claim 76 words
The computer-readable medium of claim 29, wherein the step of writing the copy of the first set of data to the plurality of flat files includes the steps of: the plurality of process informing a coordinator process when it has finished writing data to a particular flat file; and the coordinator using the information to tell one of the plurality of loader processes when it can begin loading the particular flat file into the second database.
Claim 35
Dependent Claim 61 words
The computer-readable medium of claim 27, wherein the step of extracting the copy of the first set of data from the database includes the steps of: assigning a set of copy data to the plurality of snapshot processes; and retrieving data from the first database based on the set of copy data that was assigned to the plurality of snapshot processes.
Claim 36
Dependent Claim 171 words
A computer system for supplying a consistent set of data to a software application, the computer system comprising: a memory; one or more processors coupled to the memory; and a set of computer instructions contained in the memory, the set of computer instructions including computer instructions which when executed by the one or more processors, cause the one or more processors to perform the steps of: launching said software application; identifying a particular set of data that is required by the software application; requesting a first process to obtain a snapshot time from a database server associated with a first database, wherein the snapshot time causes all subsequent reads of said first database by the first process to return data that reflects a database state associated with the snapshot time; after the first process obtains the snapshot time, causing the first process to extract the particular set of data from the first database; and supplying said software application with the particular set of data that was extracted from the first database.
Claim 37
Dependent Claim 171 words
A computer system for supplying a consistent set of data to a software application, the computer system comprising: a memory; one or more processors coupled to the memory; and a set of computer instructions contained in the memory, the set of computer instructions including computer instructions which when executed by the one or more processors, cause the one or more processors to perform the steps of: launching said software application; identifying a particular set of data that is required by the software application; requesting a first process to obtain a snapshot time from a database server associated with a first database, wherein the snapshot time causes all subsequent reads of said first database by the first process to return data that reflects a database state associated with the snapshot time; after the first process obtains the snapshot time, causing the first process to extract the particular set of data from the first database; and supplying said software application with the particular set of data that was extracted from the first database.
Claim 38
Dependent Claim 29 words
The computer system of claim 32, further including instructions for performing the step of causing a second process to store the particular set of data in a second database.
Claim 39
Dependent Claim 67 words
The computer system of claim 33, wherein the step of causing the second process to store the particular set of data in the second database includes the steps of: writing the particular set of data to one or more flat files; and executing a loader process, wherein the loader process loads the particular set of data from the one or more flat files to the second database.
Claim 40
Dependent Claim 67 words
The computer system of claim 34, wherein the step of writing the particular set of data to one or more flat files includes the steps of: the first process informing a coordinator process when it has finished writing data to a particular flat file; and the coordinator using the information to tell the loader process when it can begin loading the flat file into the second database.
Claim 41
Dependent Claim 43 words
The computer system of claim 32, wherein the step of identifying the particular set of data includes the step of creating a copy table list, wherein the copy table list contains entries that identify the particular set of data in the first database.
Claim 42
Dependent Claim 222 words
A computer system for producing a copy of data from a first database, the computer system comprising: a memory; one or more processors coupled to the memory; and a set of computer instructions contained in the memory, the set of computer instructions including computer instructions which when executed by the one or more processors, cause the one or more processors to perform the steps of: locking a first set of data in the first database; after locking the first set of data, requesting a plurality of processes to obtain snapshot times from a database server associated with said first database, wherein the snapshot times cause all subsequent reads of the first database by the plurality of processes to return data from the first database as of said snapshot times; waiting a particular period of time for the plurality of processes to be assigned snapshot times; releasing the locks on the first set of data in the first database; using a successful set of said plurality of processes to extract a copy of the first set of data from the first database, wherein said successful set includes only those processes of the plurality of processes that were assigned a snapshot time within the particular period of time; and storing the copy of the first set of data separate from said first of data.
Claim 43
Dependent Claim 222 words
A computer system for producing a copy of data from a first database, the computer system comprising: a memory; one or more processors coupled to the memory; and a set of computer instructions contained in the memory, the set of computer instructions including computer instructions which when executed by the one or more processors, cause the one or more processors to perform the steps of: locking a first set of data in the first database; after locking the first set of data, requesting a plurality of processes to obtain snapshot times from a database server associated with said first database, wherein the snapshot times cause all subsequent reads of the first database by the plurality of processes to return data from the first database as of said snapshot times; waiting a particular period of time for the plurality of processes to be assigned snapshot times; releasing the locks on the first set of data in the first database; using a successful set of said plurality of processes to extract a copy of the first set of data from the first database, wherein said successful set includes only those processes of the plurality of processes that were assigned a snapshot time within the particular period of time; and storing the copy of the first set of data separate from said first of data.
Claim 44
Dependent Claim 43 words
The computer system of claim 37, wherein the step of identifying the first set of data includes the step of creating a copy table list, wherein the copy table list contains entries that identify the first set of data in the first database.
Claim 45
Dependent Claim 70 words
The computer system of claim 37, wherein the step of storing the copy of the first set of data includes the steps of: writing the copy of the first set of data to a plurality of flat files; and executing a plurality of loader processes, wherein the plurality of loader processes load the copy of the first set of data from the plurality of flat files to a second database.
Claim 46
Dependent Claim 76 words
The computer system of claim 39, wherein the step of writing the copy of the first set of data to the plurality of flat files includes the steps of: the plurality of process informing a coordinator process when it has finished writing data to a particular flat file; and the coordinator using the information to tell one of the plurality of loader processes when it can begin loading the particular flat file into the second database.
Claim 47
Dependent Claim 61 words
The computer system of claim 37, wherein the step of extracting the copy of the first set of data from the database includes the steps of: assigning a set of copy data to the plurality of snapshot processes; and retrieving data from the first database based on the set of copy data that was assigned to the plurality of snapshot processes.

References Cited (Backward Citations)

US5168444A Cited
US5560005A Cited
US5724575A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-08-15 2004-02-14 2004-08-15 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-08-15 2008-02-14 2008-08-15 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-08-15 2012-02-14 2012-08-15 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag