2009-05-14 3 views
2

私は、SQL Server 2005データベースにインポートする必要のある3つのファイルをAIX上に持っています。ファイルは、私が制御できるAIXスクリプトによって作成されます。私が知っているいくつかのオプションがありますが、私は他の人たちが以前にやったこと、そして何が最もうまくいくのかを知りたいと思います。UnixファイルをSQL Serverに入れる最も効率的で信頼性の高い方法

ここに私が見ているオプションがあります。

  1. AIXスクリプトでWindowsにファイルをsftpしてから、WindowsバッチジョブをSQL Serverにbcpする必要があります。
  2. Windowsのバッチジョブを使用する点を除けば、AIXスクリプトでPUTする代わりにファイルを取得します。代わりにSFTPの使用scpコマンドを除い#1(プロが&短所は何ですか?)
  3. AIX上のSamba共有を設定し、そこ
  4. 同じからSQL Serverにファイルbcpを、Windowsのバッチジョブを持っていると同じ
  5. SSISを使用してsamba共有からフラットファイルとしてインポートすることを除いて#4と同じです(行末でどのように動作するのかわかりません)。

私は見落としている他の良いオプションはありますか?これらのいずれかが何らかの客観的理由により優れていると思われますか?

答えて

4

私の推薦はSSISであり、挿入する前にコントロールの解析と読み取りをより詳細に制御できます。

+0

ポストに感謝します。これはあなたが実際にやったことですか(SSISをサンバの共有に指しています)?私は、そこに潜む可能性のある落とし穴を知ることに興味があります。 –

+0

はいSSISはネットワーク共有から物事を拾うのに非常に適しています。私はまだ問題はありませんでした。カスタム書式のテキストがある場合は、.NET言語でカスタム処理ノードを作成する必要があるかもしれませんが、作成するのは非常に簡単です。他のどの方法よりもSSISを強くお勧めします。 –

4

SSISをお勧めします。これにより、FTP get操作、変換の適用、ファイルへのマッピングを含むデータフロー全体を設計することができます。

必要に応じて、SQL Serverエージェントを使用して、スケジュールに従ってSSISパッケージを実行することもできます。

EDIT:あなたあなたはその後、エージェントジョブ経由で渡すことができますSSISパッケージ、内部define variablesすることができます。これには、FTPパスと資格情報が含まれます。

alt text http://www.webholstad.com/clarity/blogpics/ssissetvar.jpg

+0

これは良い提案です。私はあなたがSSISの中からFTPすることができるのか分からなかった。 SSISに証明書を格納しないようにしようとしています(かなり厳しい期限切れポリシーがあるためです)。パッケージに資格情報を保存しないでSSISをFTPに設定できるかどうか知っていますか? –

+0

私はその情報で自分の投稿を更新しました – ichiban

関連する問題