ETL(Extract, Transform, Load)は、生データをフラットファイルシステムから最終目的地(IBM Db2やMicrosoft Azure SQLなどのデータウェアハウスが一般的)に移動させるものです。様々なファイル転送プロトコルがこうしたプロセスを高速化してくれますが、それらの違いをご存知でしょうか? 

このガイドでは、ネットワークを介してサーバーからクライアントにファイルを移動し、ETLによってファイルのデータをビッグデータ分析用の読み取り可能なフォーマットに変換するために、最も使用されている転送プロトコルを調べます。このガイドでは、FTP、FTPS、SFTP、SCP、およびその他の転送プロトコルを比較します。

Table of Contents

  1. FTP
  2. FTPS
  3. SFTP
  4. SCP
  5. その他のファイル転送プロトコル
  6. FTP、FTPS、SFTP、SCP、または他のプロトコルのどれを使用すべきか?
  7. How Integrate.io Can Help

The New Data Warehouse Stack for Tomorrow’s Leaders

Low-code data warehouse tools & hundreds of connectors to unify your data & reporting

Woman Woman

FTP

FTPFile Transfer Protocol)は、クライアントからサーバーにファイルを転送するための伝統的な方法です。70年代に開発されたFTPは、ネットワーク機器をオンラインで接続するフレームワークであるTCP/IPを介して、コンピュータ間でファイルを移動するためのシンプルな方法です。FTPは通常、次のような仕組みになっています。

  1. FTPサーバーにファイルをアップロードします。
  2. TCP/IP経由でFTPホストにファイルを送信します。
  3. 受信者はファイルを受け取り、ダウンロードします。

FTPでは、3つのデータ表現(8進数データ、ASCII 7ビット、EBCDIC 8ビット)を扱い、3つの転送モード(ブロック、ストリーム、圧縮)のいずれかでファイルを移動します。 

FTPのメリット

  • 迅速かつシンプルで、40年も前から使われている。
  • 複数のディレクトリを同時に転送可能。 

FTPのデメリット

ご存知のように、FTPはファイルを送るのに最も安全な方法ではありません。

    • 暗号化されていません。
    • FTPは2つのデータチャネルを使用するため、ハッカーにファイルを盗まれるリスクが高くなります。

    データドリブン型の企業でFTPを使用するところはほとんどなく、特にETL時のデータセキュリティを重視する企業では特に使用されていません。また、FTPはデータガバナンスにも適していません。GDPRやHIPAAに準拠する必要がある場合、FTPは使わないでください。 

    FTPS

    FTPS(File Transfer Protocol SecureFTP/SSLと呼ばれることもある)は、90年代後半に作られたFTPの拡張機能です。その目的は、FTPのセキュリティをさらに強化することです。FTPSは、FTPの下にSSL/TLSレイヤーを使用し、データチャンネルを暗号化します。

    FTPSのメリット

    • 多くのインターネットインフラがSSLに対応しているため、FTPSによるファイル転送が容易。
    • 強力な認証機能。
    • X.509証明書の機能。

    FTPSのデメリット

    • ファイアウォールに妨げられることがあるので、最初は苦労するユーザーもいるかもしれません。 

    Recommended reading: FTPS ETL to Your Warehouse

    SFTP

    SFTPSecure File Transfer Protocol)もまた、FTPに代わるものとして90年代後半に生まれた。SFTPは、クライアント・サーバー型のプロトコルであるSSHを介して、さまざまなファイル形式を転送します。FTPとは異なり、1回の接続で済み、転送中のファイルを暗号化するため、ハッカーが機密情報に侵入することが困難になります。 

    SFTPは、SSLと同様に、ファイルを転送する際のデータ接続をコマンドで実行します。ファイルを受け取る側は、SSHサーバーに接続し、暗号鍵(SSHキー)またはユーザー名とパスワードのコンボでサーバーを認証します。 

    Recommended reading: SFTP ETL to Your Warehouse

    SFTPのメリット

    • データファイルの暗号化。
    • コマンドの実行。
    • IPV6 HTTPのサポート。 
    • TMUXのサポート
    • ユーザー名/パスワード認証
    • 公開鍵認証
    • ファイル転送を1つのチャネルで行うこと可能。
      様々な種類のフラットファイル、区切りファイル、プレーンテキストファイル、CSVファイル、一般的なフラットファイル、カンマ区切りの値を持つファイル、シンプルな構造のファイルなどに最適です。 

    SFTPのデメリット

    • 短所はほとんどありません。SFTPは、特にETLにおいては、FTPよりもはるかに安全な代替手段です。 

    Get deep industry insights in your inbox once a month

    Get exclusive tips and tricks, industry best practices, and insights from thought leaders every month!

    Monthly Newsletter

    Woman Woman

    SCP

    SSHをベースにしたSCP(Secure Copy Protocol)は、暗号化されたIPベースのデータトンネルでファイルを転送します。これは、ローカルホストとリモートホスト(または2つのリモートホスト)の間でファイルを移動するものです。

    SCPのメリット

    • SFTPと同様に、SCPはSSHプロトコルを認証に使用しており、より安全なFTPの代替手段となっています。 
    • ファイル転送において、特に遅延の大きいネットワークでは、SFTPよりも速い場合があります。 

    SCPのデメリット

    • ファイル管理機能がありません。
    • レジュームファイル転送にはほとんど対応していません。
    • ファイル転送のみを目的として作られています。SFTPと異なり、ディレクトリやディレクトリのリスティング、ファイルの削除はできません。特定のデータタイプによっては、はるかに対応範囲が限定されます。

    その他のファイル転送プロトコル

    • TFTP(Trivial File Transfer Protocol)は、UDP(User Datagram Transport Protocol)を利用したファイル転送です。このプロトコルは80年代初頭に開発されたもので、現在ではほとんどの企業で使用されていません。
      MFT(Managed File Transfer)は、SFTPやFTPSなどのプロトコルをサポートする管理制御機能を備えています。銀行業界で使用されているMFTは、金融機関のファイル転送時に追加の暗号化を行います。 

    FTP、FTPS、SFTP、SCP、または他のプロトコルのどれを使用すべきか?

    ETLでフラットファイルシステムからデータを転送する場合、FTPは使えません。FTPは、このリストの他のプロトコルほど安全ではなく、あらゆる種類のデータガバナンスの問題に遭遇する可能性があります。SCPはFTPの良い代替手段であり、高レイテンシーのネットワークではSFTPよりも速い場合もありますが、ファイル転送に限定されます。つまり、ファイルの削除、ディレクトリの作成、その他の機能を実行することはできません。 

    そこで、残りの選択肢であるSFTPとFTPSを比較してみましょう。FTPSは、暗号化の効果があるものの、本質的にはFTPの拡張であり、2つの接続を使用します。SFTPはまったく別のプロトコルで、接続は1つなので、ハッカーにデータを盗まれるリスクを減らすことができます。2021年現在、データウェアハウスプロジェクトにおいて最も安全なファイル転送プロトコルはSFTPであり、FTPSは2位となっています。

    まとめ

    The New Data Warehouse Stack for Tomorrow’s Leaders

    Low-code data warehouse tools & hundreds of connectors to unify your data & reporting

    Woman Woman

    Integrate.ioはSFTPをフルサポートしており、FTPSをいくつかの分析プラットフォームと統合してデータ分析を行うことができ、ETLワークフローの雛形として使用することができます。フラットファイルデータベース、リレーショナルデータベース、データウェアハウス、データベース管理システム、データレイク、ビジネスインテリジェンスツールとの間で、フィールド名、デリミタ、その他のデータマークアップの問題を気にすることなく、ファイルを送受信できます。 

    Integrate.ioは、コードやデータエンジニアリングを必要とせず、ファイル転送やデータフォーマットを簡単に行うことができます。SFTP、FTPS、またはその他の転送プロトコルを使用したい場合は、オンラインデモにお申し込みください。