2010-08-11 153 views
0

我需要能夠從客戶端計算機上的數據源中提取和轉換數據,並通過Web服務調用將其發送到我們的數據存儲中。我希望能夠利用SSIS,但Sql Server許可協議阻止我在客戶機上安裝Integration Services。我可以只提供Integration Services的程序集的客戶端副本以供我的應用程序引用嗎?除了從頭開始構建自定義解決方案之外,是否有人對如何最好地實現解決此問題的解決方案有任何想法?理想的解決方案將包括利用現有的ETL工具?提取數據客戶端

感謝您的建議。

+0

你可以在目標服務器上運行SSIS嗎? – RQDQ 2010-08-11 17:27:28

+0

是的,我相信我可以在目標服務器上運行SSIS。 – Josh 2010-08-11 17:33:16

+0

從下面的評論中,我相信你的意思是「客戶端機器」而不是「客戶端機器」,這意味着你的網絡上有一臺工作站,而不是屬於你的客戶端的網絡上的一臺機器。 – 2010-08-13 12:01:31

回答

0

如果您提供您的客戶端在他們的數據的服務,您應該制定一個標準,他們需要提供他們的數據,並協商該文件的交付方法以及你有沒有考慮過之前什麼與SSIS有關。從評論看來,您的數據似乎位於客戶端遠程位置的計算機上,我所見過的最常見的方法是讓客戶端SecureFTP將文件放入您的網絡中進行處理,或者在您的端點上有一份工作,文件使用SecureFTP。一旦你的網絡上有文件,編寫SSIS來處理它是微不足道的。

0

如果服務器可以連接到客戶機,那麼您可以在服務器上運行SSIS包。你在移動什麼樣的數據?如果它是一個平面文件,你可以將它FTP到服務器。

另一種解決方法是使用BCP。我不是這種方法的忠實粉絲(SSIS更快,更強大,等等),但它可以在一個捏。

http://msdn.microsoft.com/en-us/library/ms162802.aspx

+0

數據源可以是任何東西......平面文件,數據庫等。我們需要構建幾種不同類型的「提供者」來提取數據。此外,提取不是一次性的事情......每隔X分鐘從源系統中提取新數據。很遺憾,我無法從客戶端複製或移動源數據文件。 – Josh 2010-08-11 18:02:17

+0

你能否通過網絡使文件,數據庫等可用(共享文件,用OLEDB/ODBC /等命中數據庫)從服務器?如果是這樣,您可以安排SSIS包每隔X分鐘在服務器上運行。 爲什麼你不能從客戶端複製或移動數據文件?服務器是否應該只能看到數據的一個子集? – RQDQ 2010-08-11 18:07:22

+0

客戶端的數據受防火牆保護,他們只想共享其中的一部分。 – Josh 2010-08-11 19:05:31