Claims
- 1. A system for executing bulk data transfers between persistent data stores, comprising:
one or more programmatic source interfaces, each being associated with a corresponding source data store, defined according to a common programmatic source interface specification, and exposed during a bulk data transfer to enable extraction from the corresponding source data store of one or more data entities for loading into any one or more selected target data stores during the bulk data transfer; and one or more programmatic target interfaces, each being associated with a corresponding target data store, defined according to a common programmatic target interface specification, and exposed during a bulk data transfer to enable loading into the corresponding target data store of one or more data entities extracted from any one or more selected source data stores during the bulk data transfer; each programmatic interface:
providing to the corresponding data store an abstraction of bulk data transfer operations such that custom code need not be developed in connection with the corresponding data store to enable bulk data transfers between the corresponding data store and any other particular data stores; and isolating specific details associated with the corresponding data store such that custom code need not be developed in connection with the bulk data transfer operations to enable bulk data transfers between the corresponding data store and any other particular data stores.
- 2. The system of claim 1, wherein the programmatic interfaces comprise JAVA interfaces.
- 3. The system of claim 1, wherein:
a programmatic interface may be exposed as an industry standard interface supporting bulk data transfers according to an industry standard protocol; and the system is operable to:
receive a request from a client indicating that the client is extracting data from or loading data into a data store in accordance with the industry standard protocol; create the corresponding programmatic interface to enable extraction of the data from or loading of the data into the data store; and for data extraction, as the programmatic source interface produces the data extracted from the data store, send the outgoing data to the client in accordance with the industry standard protocol; or for data loading, as the data arrives from the client in accordance with the industry standard protocol, send the incoming data to the programmatic target interface for loading into the data store.
- 4. The system of claim 1, wherein a particular data store may be a source data store or a target data store for a particular bulk data transfer depending on whether data entities are extracted from the particular data store or loaded into the particular data store during the particular bulk data transfer.
- 5. The system of claim 1, wherein loading data entities comprises inserting, updating, or deleting data entities.
- 6. The system of claim 1, wherein:
within each programmatic interface, one or more resources representing data entities contained in the corresponding data store are defined; and the system is operable to, in response to a request to execute a bulk data transfer involving one or more resources contained in one or more data stores, create each programmatic interface within which at least one of the resources is defined.
- 7. The system of claim 6, wherein a programmatic interface persists, once created:
if a programmatic source interface, for the entirety of the bulk data transfer before being released; and if a programmatic target interface, for a single step of the bulk data transfer before being released.
- 8. The system of claim 6, further comprising one or more session interfaces and wherein:
one or more programmatic interfaces are defined within each session interface; each session interface isolates from its one or more defined programmatic interfaces details associated with export and import of resources involved in a bulk data transfer; and the system is further operable to, in connection with creating the programmatic interfaces, create each session interface within which at least one of the programmatic interfaces is defined.
- 9. The system of claim 8, wherein a session interface persists, once created, either for the entirety of the bulk data transfer or for the entirety of multiple data transfers according to its definition.
- 10. The system of claim 1, wherein the system is operable to:
allow each programmatic interface to produce or consume data entities in a desired format particular to the programmatic interface; convert data entities produced in a first format particular to a programmatic source interface to a second format particular to a programmatic target interface only if necessary because the first and second formats are different.
- 11. The system of claim 1, further comprising one or more relational interfaces as alternatives to programmatic interfaces, each relational interface being associated with a corresponding relational data store and exposed within the data integration server during a bulk data transfer to enable the data integration server to read data entities directly from and write data entities directly to the corresponding relational data store during the bulk data transfer without using a programmatic interface.
- 12. The system of claim 11, wherein each relational interface comprises:
an interface schema file providing a database-neutral description of a physical database schema of the corresponding relational data store; and an interface mapping file providing a logical-to-physical mapping for all data entities defined for the relational interface to enable the data integration server to execute bulk data transfers between relational data stores having different physical database schema.
- 13. A method for executing a bulk data transfer between persistent data stores, comprising:
providing one or more programmatic source interfaces, each being associated with a corresponding source data store, defined according to a common programmatic source interface specification, and exposed during a bulk data transfer to enable extraction from the corresponding source data store of one or more data entities for loading into any one or more selected target data stores during the bulk data transfer; and providing one or more programmatic target interfaces, each being associated with a corresponding target data store, defined according to a common programmatic target interface specification, and exposed during a bulk data transfer to enable loading into the corresponding target data store of one or more data entities extracted from any one or more selected source data stores during the bulk data transfer; each programmatic interface:
providing to the corresponding data store an abstraction of bulk data transfer operations such that custom code need not be developed in connection with the corresponding data store to enable bulk data transfers between the corresponding data store and any other particular data stores; and isolating specific details associated with the corresponding data store such that custom code need not be developed in connection with the bulk data transfer operations to enable bulk data transfers between the corresponding data store and any other particular data stores.
- 14. The method of claim 13, wherein the programmatic interfaces comprise JAVA interfaces.
- 15. The method of claim 13, wherein:
a programmatic interface is exposed as an industry standard interface supporting bulk data transfers according to an industry standard protocol; and the method comprises:
receiving a request from a client indicating that the client is extracting data from or loading data into a data store in accordance with the industry standard protocol; creating the corresponding programmatic interface to enable extraction of the data from or loading of the data into the data store; and for data extraction, as the programmatic source interface produces the data extracted from the data store, sending the outgoing data to the client in accordance with the industry standard protocol; or for data loading, as the data arrives from the client in accordance with the industry standard protocol, sending the incoming data to the programmatic target interface for loading into the data store.
- 16. The method of claim 13, wherein a particular data store may be a source data store or a target data store for a particular bulk data transfer depending on whether data entities are extracted from the particular data store or loaded into the particular data store during the particular bulk data transfer.
- 17. The method of claim 13, wherein loading data entities comprises inserting, updating, or deleting data entities.
- 18. The method of claim 13, wherein:
within each programmatic interface, one or more resources representing data entities contained in the corresponding data store are defined; and the method comprises, in response to a request to execute a bulk data transfer involving one or more resources contained in one or more data stores, creating each programmatic interface within which at least one of the resources is defined.
- 19. The method of claim 18, wherein a programmatic interface persists, once created:
if a programmatic source interface, for the entirety of the bulk data transfer before being released; and if a programmatic target interface, for a single step of the bulk data transfer before being released.
- 20. The method of claim 18, further comprising providing one or more session interfaces, wherein:
one or more programmatic interfaces are defined within each session interface; each session interface isolates from its one or more defined programmatic interfaces details associated with export and import of resources involved in a bulk data transfer; and in connection with creating the programmatic interfaces, each session interface is created within which at least one of the programmatic interfaces is defined.
- 21. The method of claim 20, wherein a session interface persists, once created, either for the entirety of the bulk data transfer or for the entirety of multiple data transfers according to its definition.
- 22. The method of claim 13, further comprising:
allowing each programmatic interface to produce or consume data entities in a desired format particular to the programmatic interface; converting data entities produced in a first format particular to a programmatic source interface to a second format particular to a programmatic target interface only if necessary because the first and second formats are different.
- 23. The method of claim 13, further comprising providing one or more relational interfaces as alternatives to programmatic interfaces, each relational interface being associated with a corresponding relational data store and exposed within the data integration server during a bulk data transfer to enable the data integration server to read data entities directly from and write data entities directly to the corresponding relational data store during the bulk data transfer without using a programmatic interface.
- 24. The method of claim 23, wherein each relational interface comprises:
an interface schema file providing a database-neutral description of a physical database schema of the corresponding relational data store; and an interface mapping file providing a logical-to-physical mapping for all data entities defined for the relational interface to enable the data integration server to execute bulk data transfers between relational data stores having different physical database schema.
- 25. Software for executing a bulk data transfer between persistent data stores, the software being embodied in computer-readable media and when executed operable to:
provide one or more programmatic source interfaces, each being associated with a corresponding source data store, defined according to a common programmatic source interface specification, and exposed during a bulk data transfer to enable extraction from the corresponding source data store of one or more data entities for loading into any one or more selected target data stores during the bulk data transfer; and provide one or more programmatic target interfaces, each being associated with a corresponding target data store, defined according to a common programmatic target interface specification, and exposed during a bulk data transfer to enable loading into the corresponding target data store of one or more data entities extracted from any one or more selected source data stores during the bulk data transfer; each programmatic interface:
providing to the corresponding data store an abstraction of bulk data transfer operations such that custom code need not be developed in connection with the corresponding data store to enable bulk data transfers between the corresponding data store and any other particular data stores; and isolating specific details associated with the corresponding data store such that custom code need not be developed in connection with the bulk data transfer operations to enable bulk data transfers between the corresponding data store and any other particular data stores.
- 26. The software of claim 25, wherein the programmatic interfaces comprise JAVA interfaces.
- 27. The software of claim 25, wherein:
a programmatic interface is exposed as an industry standard interface supporting bulk data transfers according to an industry standard protocol; and the software is operable to:
receive a request from a client indicating that the client is extracting data from or loading data into a data store in accordance with the industry standard protocol; create the corresponding programmatic interface to enable extraction of the data from or loading of the data into the data store; and for data extraction, as the programmatic source interface produces the data extracted from the data store, send the outgoing data to the client in accordance with the industry standard protocol; or for data loading, as the data arrives from the client in accordance with the industry standard protocol, send the incoming data to the programmatic target interface for loading into the data store.
- 28. The software of claim 25, wherein a particular data store may be a source data store or a target data store for a particular bulk data transfer depending on whether data entities are extracted from the particular data store or loaded into the particular data store during the particular bulk data transfer.
- 29. The software of claim 25, wherein loading data entities comprises inserting, updating, or deleting data entities.
- 30. The software of claim 25, wherein:
within each programmatic interface, one or more resources representing data entities contained in the corresponding data store are defined; and the software is operable to, in response to a request to execute a bulk data transfer involving one or more resources contained in one or more data stores, create each programmatic interface within which at least one of the resources is defined.
- 31. The software of claim 30, wherein a programmatic interface persists, once created:
if a programmatic source interface, for the entirety of the bulk data transfer before being released; and if a programmatic target interface, for a single step of the bulk data transfer before being released.
- 32. The software of claim 30, further operable to provide one or more session interfaces, wherein:
one or more programmatic interfaces are defined within each session interface; each session interface isolates from its one or more defined programmatic interfaces details associated with export and import of resources involved in a bulk data transfer; and in connection with creating the programmatic interfaces, each session interface is created within which at least one of the programmatic interfaces is defined.
- 33. The software of claim 32, wherein a session interface persists, once created, either for the entirety of the bulk data transfer or for the entirety of multiple data transfers according to its definition.
- 34. The software of claim 25, further operable to:
allow each programmatic interface to produce or consume data entities in a desired format particular to the programmatic interface; convert data entities produced in a first format particular to a programmatic source interface to a second format particular to a programmatic target interface only if necessary because the first and second formats are different.
- 35. The software of claim 25, further operable to provide one or more relational interfaces as alternatives to programmatic interfaces, each relational interface being associated with a corresponding relational data store and exposed within the data integration server during a bulk data transfer to enable the data integration server to read data entities directly from and write data entities directly to the corresponding relational data store during the bulk data transfer without using a programmatic interface.
- 36. The software of claim 35, wherein each relational interface comprises:
an interface schema file providing a database-neutral description of a physical database schema of the corresponding relational data store; and an interface mapping file providing a logical-to-physical mapping for all data entities defined for the relational interface to enable the data integration server to execute bulk data transfers between relational data stores having different physical database schema.
- 37. A system for executing bulk data transfers between persistent data stores, comprising:
means for providing one or more programmatic source interfaces, each being associated with a corresponding source data store, defined according to a common programmatic source interface specification, and exposed during a bulk data transfer to enable extraction from the corresponding source data store of one or more data entities for loading into any one or more selected target data stores during the bulk data transfer; and means for providing one or more programmatic target interfaces, each being associated with a corresponding target data store, defined according to a common programmatic target interface specification, and exposed during a bulk data transfer to enable loading into the corresponding target data store of one or more data entities extracted from any one or more selected source data stores during the bulk data transfer; each programmatic interface:
providing to the corresponding data store an abstraction of bulk data transfer operations such that custom code need not be developed in connection with the corresponding data store to enable bulk data transfers between the corresponding data store and any other particular data stores; and isolating specific details associated with the corresponding data store such that custom code need not be developed in connection with the bulk data transfer operations to enable bulk data transfers between the corresponding data store and any other particular data stores.
- 38. A system for executing bulk data transfers between persistent data stores, comprising:
one or more programmatic source interfaces, each being associated with a corresponding source data store, defined according to a common programmatic source interface specification, and exposed during a bulk data transfer to enable extraction from the corresponding source data store of one or more data entities for loading into any one or more selected target data stores during the bulk data transfer; one or more programmatic target interfaces, each being associated with a corresponding target data store, defined according to a common programmatic target interface specification, and exposed during a bulk data transfer to enable loading into the corresponding target data store of one or more data entities extracted from any one or more selected source data stores during the bulk data transfer; each programmatic interface:
providing to the corresponding data store an abstraction of bulk data transfer operations such that custom code need not be developed in connection with the corresponding data store to enable bulk data transfers between the corresponding data store and any other particular data stores; isolating specific details associated with the corresponding data store such that custom code need not be developed in connection with the bulk data transfer operations to enable bulk data transfers between the corresponding data store and any other particular data stores; and comprising a definition of one or more resources representing data entities contained in the corresponding data store such that the system is operable to, in response to a request to execute a bulk data transfer involving one or more resources contained in one or more data stores, create each programmatic interface within which at least one of the resources is defined; and one or more session interfaces, each session interface:
comprising a definition of one or more programmatic interfaces such that the system is further operable to, in connection with creating the programmatic interfaces, create each session interface within which at least one of the programmatic interfaces is defined; and isolating from its one or more defined programmatic interfaces details associated with export and import of resources involved in a bulk data transfer.
RELATED APPLICATION
[0001] This application claims the benefit under 35 U.S.C. § 119(e) of U.S. Provisional Application Ser. No. 60/469,271 filed May 8, 2003.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60469271 |
May 2003 |
US |