2017-07-13 3 views
1

私はSAPデータベースを前提としており、このデータ(Azureにはいくつかのテーブル(SAPデータベース))を毎日プッシュしたいと思います。マージ戦略を使用してデータがアップロードされます(変更が検出された場合は、レコードがない場合は削除、そうでない場合はを挿入します)。これは確かに動作しますSSISを使用するETLを使用してAzureデータウェアハウスにデータをアップロードすることはできますか?

- Install on premise integration Services (SSIS). The client already has license for this. 
- Install SAP connector on premise. 
- Pull data from SAP into text files (on premise, into multiple CSV files) (create ETL's for this). 
- Push those files into a Blob Storage (via AzCopy), so I create a job or process somehow locally that will handle newly created files. 

- Load data into Data Warehouse using PolyBase (https://docs.microsoft.com/en-us/azure/sql-data-warehouse/sql-data-warehouse-get-started-load-with-polybase) using an UP-SERT strategy. 

が、私はそれは、データは基本的にステップをスキップし、(SSISパッケージを使用して)E​​TLを使用していることを直接アップロードすることが可能ですか疑問に思って:私は次のセットアップを使用してこれを行うには考えています:

  1. プレミスファイルを社内ディスクに保存します。
  2. Azure Blob Storageに保存してください。
  3. アップロードされたファイルに対して仮想テーブルを使用してファイルからデータをロードします。

私の懸念は、という点にあります。 - パフォーマンス - コストあなたが最良の方法は何だと思います

ありがとうございました!

あなた Azure Feature Pack for Integration Servicesの一部である Azure SQL DW Upload Task経由AzureのSQLデータウェアハウスにデータをロードするために、SQL Serverの統合サービス(SSIS)を使用することができます

答えて

4

。このタスクでは、ローカルファイル共有からファイルを取り出し、バックグラウンドでPolybaseを使用してウェアハウステーブルにロードします。この方法を使用すると、Blob Storageにファイルを明示的にプッシュする必要はなく、AzCopyを使用することもできます。この設計は、次のようになります。

SAP>フラットファイル> SQL DWアップロードタスク

また、データフロータスクを使用して、ウェアハウステーブルにデータを直接読み込むことができますが、歴史的にパフォーマンスが非常に遅かったです。私はこの設計の利点は、あなたがフラットファイルにファイルを抽出する必要がないということです。私は推奨された方法がPolybaseであるので、最近これを試していません。 (データフロータスクを使用して)

SAP> AzureのSQLデータウェアハウス

検討する別の方法は、今(特定の製品のための)SAP接続を持っているAzureのデータファクトリー:このデザインは次のようになります。オンプレミスからAzureへのコピーを容易にするためには、ゲートウェイが必要です。 ADFのスケーラビリティは向上する可能性がありますが、これまで使用していなかった場合は、少しばかりの学習曲線があります。

+0

私は決断を下したと思います。私は、SAP =>フラットファイル=> SQL DWアップロードタスクを使用します。 –

関連する問題