It is no secret that SAP has been pushing its Datasphere solution as not just a Cloud data warehouse, but a data integration platform as well. Partnerships with Databricks, Google and Collibra, among others, have been promoted in order to appeal to (potential) customers whose IT landscapes are increasingly vendor-diverse. However, non-SAP solutions that fall outside of this partner ecosystem are often difficult to integrate with Datasphere, and with SAP taking steps to limit the (practically) legal(!) application of its APIs for the Operational Data Provisioning (ODP) framework, things are not getting easier. Does that mean that you have no options at all to connect to popular non-SAP solutions such as Snowflake? Not at all, but you do have to take some additional steps. In this blog, my colleague Dirk-Jan will show you exactly how, by demonstrating a data connection from SAP S/4HANA to Datasphere and finally, Snowflake.
- S4/HANA system
- Cloud Connector configured to connect Datasphere with S4/HANA
- Necessary configuration and settings in Datasphere
- (A little bit of) modeling in Datasphere
- Setup Snowflake
- Use an external ETL tool to put data into Snowflake
- Check the data in Snowflake
S4/HANA

Datasphere

(Model import is disabled because there is no need for this in this scenario and therefore I did not create a tunnel connection)
In Datasphere we will create a new view where we will select our S4/HANA connection as a source. Next, select the custom table we created in S4/HANA:


Create a database user for your Datasphere space


Azure
Storage Account
Virtual machine with the Integration Runtime

Integration Runtime



Run this on your newly created VM. The easiest way for me was to open the Azure portal on the virtual machine, go to the ADF and choose Option 1: Click here to launch the express setup for this computer.
After a while, the Integration runtime is setup and working.

On the Virtual Machine we need to set up an ODBC connection to Datasphere.



Azure Data Factory
Linked Services to Azure Blob Storage, Datasphere and Snowflake
Next, we must connect ADF to HANA and Snowflake. This will be set up in the Linked Service. For this we need three Linked Services. One to Datasphere, one to Snowflake and one to a Blob Storage for staging purposes
Let’s first create a Linked Service to an Azure Blob Storage.




I had some problems to save this Linked Service, but after some tweaks in the JSON configuration I managed to save it. Your mileage may vary, so if you encounter save issues as well my advice would be to review the JSON configuration settings.
Finally, we establish a Linked Service to Snowflake. We will use the AutoResolveIntegrationRuntime for Snowflake. Fill in your account name, database name, warehouse, username, password. I also had to specify the Role, so please do this as well if the system asks you to. Note that I used ACCOUNTADMIN for this, which is not the best practice for this of course. You need to create a role with appropriate privileges for this.

Once again, test the connection to validate if everything has been set up correctly.
After we created the Linked Services, we can now configure the pipeline in ADF.
Go to Author in ADF, select Pipelines and then New pipeline.










Snowflake

As you can see, the data has been successfully populated. This concludes part I of this blog. In the next entry, I will dive into a direct connection between SAP Datasphere and Snowflake. Should you have any questions in the meantime, please do not hesitate to contact us.
Credits
This blog was written by our experts Dirk-Jan Kloezeman and Lars van der Goes.