On Premise File Transfer

Copy a file from a source to a target (where both the source and target can be Cloud-based or on-premises) using an on-premises Data Integration Platform.

Pattern Definition

Problem How do I transfer a data file from source to a target where source and target could be Cloud-based or on premises with minimal Cloud footprint?
Context This pattern is applicable when there is a desire to transfer files from Cloud to Cloud, Cloud to on premises, on premises to Cloud, or on premises to on premises. The Cloud-based source or target may be SaaS, PaaS, or IaaS.
Forces
  • Need to handle file transfer on premises to on premises as well as on premises to Cloud.
  • Want to extend an established on-premises Data Integration Platform to Cloud-based sources and targets.
  • Quickly attach to existing on-premises sources and targets.
Solution This pattern employs a Data Integration Platform only on premises. This is likely the current situation in most IT environments. File transfers are currently done between on-premises sources and targets on-premises Data Integration Platform and there is a desire to add Cloud-based sources and targets to this existing file transfer approach.
ConsequencesPros:
  • Leverages existing investment in on-premises Data Integration Platform.
  • Easiest way to add Cloud-based sources and targets.
  • Best support for on-premises to on-premises file transfers.
Cons:
  • Sub-optimal approach for intra-Cloud and inter-Cloud file transfers.
  • Does not take advantage of what public Cloud has to offer with respect to file transfer.

Interaction View


Upload On Premises to Cloud

Transfer data (via file) from an on-premises application to a Cloud-based application. 

Interactions

  1. The on-premises Data Integration Platform notifies the on-premises application to export a file. This notification could be time based or business event driven. The notification could also be replaced by a timed export from the on-premises application.
  2. The on-premises application exports data to a file.
  3. The on-premises Data Integration Platform retrieves the file.
  4. The on-premises Data Integration Platform processes the file and writes the file to Cloud-based storage.
  5. The on-premises Data Integration Platform notifies the Cloud-based application that the file is ready for processing. The Cloud-based application could be SaaS, or an application running on PaaS or IaaS. The notification could also be replaced by a timed import or polling from the Cloud-based application.
  6. The Cloud-based application reads the file and processes the contents.

Notes

  1. The notifications to the applications are shown as a single call, but there could be multiple API calls to export or import the files.

Download Cloud to On Premises

Transfer data (via file) from a Cloud-based application to an on-premises application. 

Interactions

  1. The on-premises Data Integration Platform notifies the Cloud-based application to export a file. The Cloud-based application could be SaaS,  or an application running on PaaS or IaaS. This notification could be time based or business event driven. The notification could also be replaced by a timed export from the on-premises application.
  2. The Cloud-based application exports data to a file
  3. The on-premises Data Integration Platform retrieves the file from Cloud-based storage.
  4. The on-premises Data Integration Platform processes the file and writes the file to on-premises storage.
  5. The on-premises Data Integration Platform notifies the on-premises application that the file is ready for processing. The notification could also be replaced by a timed import or polling from the on-premises application.
  6. The on-premises application reads the file and processes the contents

Notes

  1. The notifications to the applications are shown as a single call, but there could be multiple API calls to export or import the files.

Transfer Cloud to Cloud

Transfer data (via file) from a Cloud-based application another Cloud-based application.

Interactions

  1. The on-premises Data Integration Platform notifies the Cloud-based application to export a file. The Cloud-based application could be SaaS, or an application running on PaaS or IaaS. This notification could be time based or business event driven. The notification could also be replaced by a timed export from the on-premises application.
  2. The Cloud-based application exports data to a file.
  3. The on-premises Data Integration Platform retrieves the file.
  4. The on-premises Data Integration Platform processes the file and writes the file to Cloud-based storage.
  5. The on-premises Data Integration Platform notifies the Cloud-based application that the file is ready for processing. The Cloud-based application could be SaaS, or an application running on PaaS or IaaS. The notification could also be replaced by a timed import or polling from the Cloud-based application.
  6. The Cloud-based application reads the file and processes the contents.

Notes

  1. The notifications to the applications are shown as a single call, but there could be multiple API calls to export or import the files.