Claims
- 1. A method of combining data within a database system, the method comprising:
performing a scan of a source data structure to obtain source data; performing a first merge operation to merge the source data into a first destination data structure; storing one or more changes to the first destination data structure in an intermediate data structure; using the intermediate data structure to determine whether the source data should be augmented with the one or more changes; and performing one or more subsequent merge operations using the source data without performing another scan of the source data structure.
- 2. The method of claim 1, further comprising the step of augmenting the source data with the changes from the first merge operation for use in performing the one or more subsequent merge operations.
- 3. The method of claim 2, wherein augmenting the source data includes adding one or more columns of data to the source data.
- 4. The method of claim 2, wherein augmenting the source data includes adding one or more dimensions to the source data without modifying the source data obtained from the scan.
- 5. The method of claim 3, further comprising the step of performing a second merge operation using the augmented source data.
- 6. The method of claim 1, further comprising implementing a pipeline for passing the source data from the first merge operation to the one or more subsequent merge operations; and wherein the step of performing one or more subsequent merge operations includes performing a plurality of subsequent merge operations using the pipeline.
- 7. The method of claim 6, further comprising the step of augmenting the source data as a result of one or more merge operations with the series of destination data structures, and implementing the pipeline to carry the augmented source data from one merge operation to another merge operation in the series.
- 8. The method of claim 1, wherein the step of performing a first merge operation includes specifying the selection of the changes that are to be made in the step of modifying the source data with at least a selection of the changes.
- 9. The method of claim 1, wherein the source data structure and the destination data structure are each tables.
- 10. The method of claim 1, further comprising the step of performing the scan of the source data structure prior to the step of performing the first merge operation.
- 11. A method of combining data within a database system, the method comprising:
maintaining a data structure to store changes to data in a destination data structure as a result of a first merge operation being performed between a source data and the destination data structure; augmenting the source data with at least some of the changes in the intermediate data structure; and performing a subsequent merge operation using the augmented source data.
- 12. The method of claim 11, wherein augmenting the source data includes adding one or more columns of data to the source data.
- 13. The method of claim 11, further comprising the step of implementing a pipeline to pass the source data from the first merge operation to the subsequent merge operation.
- 14. The method of claim 11, further comprising passing the source data from the first merge operation to the subsequent merge operation without storing the source data anywhere except in the data structure.
- 15. The method of claim 11, wherein maintaining a data structure includes maintaining a hash table.
- 16. The method of claim 14, comprising passing the source data from the first merge operation to the subsequent merge operation includes passing the source data without modification.
- 17. 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 scan of a source data structure to obtain source data; performing a first merge operation to merge the source data into a first destination data structure; storing one or more changes to the first destination data structure in an intermediate data structure; using the intermediate data structure to determine whether the source data should be augmented with the one or more changes; and performing one or more subsequent merge operations using the source data without performing another scan of the source data structure.
- 18. The computer-readable medium of claim 17, further comprising instructions for performing the step of augmenting the source data with the changes from the first merge operation for use in performing the one or more subsequent merge operations.
- 19. The computer-readable medium of claim 18, wherein the step of augmenting the source data includes adding one or more columns of data to the source data.
- 20. The computer-readable medium of claim 18, wherein the step of augmenting the source data includes adding one or more dimensions to the source data without modifying the source data obtained from the scan.
- 21. The computer-readable medium of claim 19, further comprising the step of performing a second merge operation using the augmented source data.
- 22. The computer-readable medium of claim 17, further comprising the step of implementing a pipeline for passing the source data from the first merge operation to the one or more subsequent merge operations; and wherein the step of performing one or more subsequent merge operations includes performing a plurality of subsequent merge operations using the pipeline.
- 23. The computer-readable medium of claim 22, further comprising the step of augmenting the source data as a result of one or more merge operations with the series of destination data structures, and implementing the pipeline to carry the augmented source data from one merge operation to another merge operation in the series.
- 24. The computer-readable medium of claim 17, wherein the step of performing a first merge operation includes specifying the selection of the changes that are to be made in the step of modifying the source data with at least a selection of the changes.
- 25. The computer-readable medium of claim 17, wherein the source data structure and the destination data structure are each tables.
- 26. The computer-readable medium of claim 17, further comprising the step of performing the scan of the source data structure prior to the step of performing the first merge operation.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is related to U.S. patent application Ser. No. 10/______ (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. 10/______ (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. 10/______ (Attorney Docket No, 50277-2100), entitled PIPLELINE MERGE OPERATIONS USING SOURCE DATA AND MULTIPLE DESTINATION DATA STRUCTURES, 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.