Claims
- 1. A method for combining data within a database system, the method comprising:
performing a first merge operation to merge source data from a source data structure with a first destination data structure, wherein the source data structure and the destination data structure are relational data structures; and initiating a second merge operation to merge a set of data that is returned by the first merge operation as a portion of the source data with a second destination data structure, wherein the second merge operation is initiated independent of any other portion of the source data undergoing the first merge operation.
- 2. The method of claim 1, wherein initiating a second merge operation includes performing the second merge operation on the portion of the source data while the first merge portion is ongoing with a remainder of the source data.
- 3. The method of claim 1, further comprising the step of performing a scan of the source data structure in order to obtain the source data, and wherein the steps of performing a first merge operation and initiating a second merge operation are performed using only the scan of the source data structure without performing any other scan of the source data structure.
- 4. The method of claim 1, wherein the step of initiating a second merge operation is performed prior to completion of the first merge operation to merge all of the source data from the source data structure with the first destination data structure.
- 5. The method of claim 1, wherein the source data structure is a table.
- 6. The method of claim 1, wherein initiating a second merge operation to merge a set of data that is returned by the first merge operation as a portion of the source data includes initiating the second merge operation using the portion of the source data, wherein the portion of the source data structure is unmodified by the first merge operation.
- 7. The method of claim 1, wherein initiating a second merge operation to merge the set of data includes initiating the second merge operation by streaming the source data from the first merge operation to the second merge operation without ever storing the source data.
- 8. The method of claim 2, wherein performing a first merge operation includes identifying whether any differences exist between the portion of the source data and the first destination data structure, and modifying the first destination data structure based on any identified differences.
- 9. The method of claim 8, wherein modifying the first destination data structure includes updating the first destination data structure using the portion of the source data.
- 10. The method of claim 8, wherein modifying the first destination data structure includes inserting the portion of the source data into the first destination data structure.
- 11. The method of claim 10, wherein modifying the first destination data structure includes deleting at least part of the data in the destination data structure based on data from the portion of the source data being merged with the first destination data structure.
- 12. The method of claim 7, wherein streaming the source data from the first merge operation to the second merge operation is performed at a constant rate.
- 13. The method of claim 1, further comprising augmenting the source data as a result of the first merge operation and then performing the second merge operation using the augmented source data.
- 14. A method for combining data within a database system, the method comprising:
implementing a pipeline for merging source data with a series of destination data structures; and using the pipeline to perform a merge operation with each of the destination data structures in the series.
- 15. The method of claim 14, further comprising augmenting the source data as a result of performing the merge operation with one or more of the destination data structures.
- 16. The method of claim 14, wherein performing the merge operation with each of the destination data structures includes identifying whether any differences exist between the portion of the source data and each of the destination data structure, and modifying that destination data structure based on any identified differences
- 17. The method of claim 14, wherein performing the merge operation with each of the destination data structures includes performing one of a MERGE, UPDATE, or INSERT operation.
- 18. A computer-readable medium carrying one or more sequences of instructions for combining data within a database system, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of:
performing a first merge operation to merge source data from a source data structure with a first destination data structure, wherein the source data structure and the destination data structure are relational data structures; and initiating a second merge operation to merge a set of data that is returned by the first merge operation as a portion of the source data with a second destination data structure, wherein the second merge operation is initiated independent of any other portion of the source data undergoing the first merge operation.
- 19. The computer-readable medium of claim 18, wherein the step of initiating a second merge operation includes the step of performing the second merge operation on the portion of the source data while the first merge portion is ongoing with a remainder of the source data.
- 20. The computer-readable medium of claim 18, further comprising the step of performing a scan of the source data structure in order to obtain the source data, and wherein the steps of performing a first merge operation and initiating a second merge operation are performed using only the scan of the source data structure without performing any other scan of the source data structure.
- 21. The computer-readable medium of claim 18, wherein the step of initiating a second merge operation is performed prior to completion of the first merge operation to merge all of the source data from the source data structure with the first destination data structure.
- 22. The computer-readable medium of claim 18, wherein the source data structure is a table.
- 23. The computer-readable medium of claim 18, wherein the step of initiating a second merge operation to merge a set of data that is returned by the first merge operation as a portion of the source data includes initiating the second merge operation using the portion of the source data, wherein the portion of the source data structure is unmodified by the first merge operation.
- 24. The computer-readable medium of claim 18, wherein the step of initiating a second merge operation to merge the set of data includes initiating the second merge operation by streaming the source data from the first merge operation to the second merge operation without ever storing the source data.
- 25. The computer-readable medium of claim 19, wherein the step of performing a first merge operation includes identifying whether any differences exist between the portion of the source data and the first destination data structure, and modifying the first destination data structure based on any identified differences.
- 26. The computer-readable medium of claim 25, wherein the step of modifying the first destination data structure includes updating the first destination data structure using the portion of the source data.
- 27. The computer-readable medium of claim 25, wherein the step of modifying the first destination data structure includes inserting the portion of the source data into the first destination data structure.
- 28. The computer-readable medium of claim 27, wherein the step of modifying the first destination data structure includes deleting at least part of the data in the destination data structure based on data from the portion of the source data being merged with the first destination data structure.
- 29. The computer-readable medium of claim 24, wherein the step of streaming the source data from the first merge operation to the second merge operation is performed at a constant rate.
- 30. The computer-readable medium of claim 18, further comprising the step of augmenting the source data as a result of the first merge operation and then performing the second merge operation using the augmented source data.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is related to U.S. patent application Ser. No. ______ (Attorney Docket No, 50277-2098), entitled METHOD AND APPARATUS FOR PERFORMING MULTI-TABLE MERGE OPERATIONS IN A DATABASE ENVIRONMENT, by RICHARD YU GU, HARMEEK SINGH BEDI and ASHISH THUSOO, filed on the same date as this application, the content of which is hereby incorporated by reference in its entirety.
[0002] This application is related to U.S. patent application Ser. No. ______ (Attorney Docket No, 50277-2099), entitled METHOD AND APPARATUS FOR PERFORMING MULTIPLE MERGE OPERATIONS USING SOURCE DATA THAT IS MODIFIED IN BETWEEN THE MERGE OPERATIONS, by RICHARD YU GU, HARMEEK SINGH BEDI and ASHISH THUSOO, filed on the same date as this application, the content of which is hereby incorporated by reference in its entirety.
[0003] This application is related to U.S. patent application Ser. No. ______ (Attorney Docket No, 50277-2101), entitled TECHNIQUE FOR USING A CURRENT LOOKUP FOR PERFORMING MULTIPLE MERGE OPERATIONS USING SOURCE DATA THAT IS MODIFIED IN BETWEEN THE MERGE OPERATIONS, by RICHARD YU GU, HARMEEK SINGH BEDI and ASHISH THUSOO, filed on the same date as this application, the content of which is hereby incorporated by reference in its entirety.