すべてのプロダクト
Search
ドキュメントセンター

Dataphin:FTP 入力ウィジェットの設定

最終更新日:Feb 06, 2025

FTP 入力ウィジェットは、FTP サーバーからビッグデータプラットフォームに関連付けられたストレージシステムへのデータ転送を容易にし、データ統合とさらなる処理を可能にします。このトピックでは、FTP 入力ウィジェットを設定する手順について説明します。

前提条件

  • FTP データソースを正常に作成していること。詳細については、「FTP データソースの作成」をご参照ください。

  • FTP 入力ウィジェットのプロパティを設定するには、アカウントにデータソースのリードスルー権限が必要です。必要な権限がない場合は、データソースから取得する必要があります。詳細については、「データソース権限の要求、更新、および返却」をご参照ください。

手順

  1. Dataphin ホームページで、トップメニューバーに移動し、[開発] > [data Integration] を選択します。

  2. 統合ページの上部で、[プロジェクト] を選択します(開発-本番モードでは環境を選択する必要があります)。

  3. 左側のナビゲーションウィンドウで [バッチパイプライン] をクリックし、[バッチパイプライン] リストで、開発する [オフラインパイプライン] をクリックして構成ページにアクセスします。

  4. 右上隅にある [コンポーネントライブラリ] をクリックして、[コンポーネントライブラリ] パネルを開きます。

  5. [コンポーネントライブラリ] パネルの左側のナビゲーションウィンドウで、[入力] を選択します。右側の入力ウィジェットリストで [FTP] コンポーネントを見つけて、キャンバスにドラッグします。

  6. FTP 入力ウィジェットカードの image アイコンをクリックして、[FTP] [入力構成] ダイアログボックスを開きます。

  7. [FTP 入力構成] ダイアログボックスで、必要なパラメーターを設定します。

    FTP 入力ウィジェットは、[ファイルの種類] として [テキスト][CSV][CSV][xls] などをサポートしています。ファイルの種類によって必要な構成が異なり、以下で詳しく説明します。

    テキストおよび CSV パラメーターの構成手順

    パラメーター

    説明

    基本設定

    ステップ名

    現在のウィジェットの利用シナリオに基づいて名前を入力します。命名規則は次のとおりです。

    • 中国語、英字、アンダースコア (_)、数字のみ使用できます。

    • 64 文字を超えることはできません。

    データソース

    データソースを選択します。Dataphin システムで構成されているデータソースを選択します。データソースは、次の 2 つの条件を満たしている必要があります。

    • データソースタイプは、[FTP データソース][SFTP データソース]、または [FTPS データソース] です。

    • [属性構成] を実行するアカウントは、データソースに対するリードスルー権限を持っている必要があります。権限がない場合は、データソース権限をリクエストする必要があります。詳細については、「データソース権限のリクエスト、更新、および返却」をご参照ください。

    [データソース] の後に [新規] をクリックして管理センターモジュールに入り、データソースを追加することもできます。詳細については、「FTP データソースの作成」をご参照ください。

    ファイルパス

    ファイルパスを入力します。セミコロン (;) で区切って複数のファイルパスを指定できます。また、ワイルドカード文字もサポートされています。たとえば、/dataphin/* を指定すると、dataphin ディレクトリの下流にあるすべてのファイルが読み取られます。

    ファイルの種類

    テキスト ファイルまたは CSV ファイルの種類を選択します。

    完了ファイル チェックのマーク

    読み取り前にファイルデータの読み取り準備ができているかどうかを確認するには、完了ファイル チェックのマークを付けます。デフォルトは [オフ] です。

    1. 有効にした後、[構成の確認] をクリックします。

    2. [完了ファイル チェック構成のマーク] ダイアログボックスで、チェックパラメーターを構成します。

      • 完了ファイルパスをマークする: チェック対象の完了ファイルのパスを入力します。システムパラメーター、グローバルパラメーター、およびクロスノードパラメーターがサポートされています。たとえば、/${check}/dataphin です。

      • チェック間隔(秒): 各ファイルチェックの間隔時間を入力します。デフォルトは 60 秒 です。

      • チェック期間(分): 各ファイルチェックの期間を入力します。デフォルトは 60 分 です。

        重要
        • チェック期間とデータ転送期間は、統合タスクの実行時間として一緒に計算されます。チェック期間と実行タイムアウト構成に注意してください。チェック期間中はリソースが占有されるため、適切に構成してください。

        • チェック時間がタスクのタイムアウトを超えた場合、タスクは強制終了されます。

      • チェック失敗時の処理ポリシー: ファイルチェックタスクが失敗した後、データの抽出と書き込みは実際には実行されません。ファイルチェックタスクの失敗の処理ポリシーでは、タスクを失敗として設定することと、タスクを成功として設定することがサポートされています。タスクを成功として設定する。

        • タスクを失敗に設定: チェックが失敗すると、システムはチェックタスクを失敗ステータスに設定し、統合タスクは実行されません。

        • タスクを成功に設定: チェックが失敗すると、システムはチェックタスクを成功ステータスに設定し、後続の統合タスクの実行を続行します。

    3. [確認] をクリックして、完了ファイル チェック構成のマークを完了します。

    ファイルが存在しない場合

    無視 ポリシーと タスクを失敗に設定 ポリシーをサポートしています。マーク完了ファイル チェックが有効になっている場合、ファイルが存在しない場合の構成はサポートされていません。

    • 無視: 読み取られるファイルが存在しない場合、ファイルを無視して他のファイルの読み取りを続けます。

    • タスクを失敗に設定: 読み取られるファイルが存在しない場合、タスクを終了し、失敗に設定します。

    データコンテンツの開始行

    入力ウィジェットがデータを読み取る開始行を設定します。デフォルトは 1 で、最初の行からデータコンテンツとして開始します。最初の N 行を無視する必要がある場合は、データコンテンツの開始行を N+1 に設定します。

    [詳細設定]

    [分割方法]

    テキストは [区切り文字による分割][フィールド長の分割] をサポートし、CSV は [区切り文字による分割] をサポートします。

    • [区切り文字による分割]: 行とフィールドは、[フィールド区切り文字][行区切り文字] に基づいて分割されます。

    • [フィールド長の分割]: ファイルの各行は長い文字列として扱われ、フィールドは開始文字と終了文字の位置に基づいて抽出されます。

    [フィールド区切り文字]

    分割方法が区切り文字分割の場合、ファイルストレージのフィールド区切り文字を入力する必要があります。入力しない場合、システムはデフォルトでカンマ (,) をフィールド区切り文字として使用します。

    行区切り記号

    分割方法が [フィールド長の分割] の場合、[行区切り記号] の構成はサポートされていません。入力しない場合、システムはデフォルトで改行 (\n) を行区切り記号として使用します。ファイルの種類がテキストの場合、行区切り記号と textReaderConfig の追加構成の両方を構成することはサポートされていません。

    ファイル エンコーディング

    ファイル エンコーディングを選択します。システムは、UTF-8GBK などの ファイル エンコーディング をサポートしています。

    [NULL 値の変換]

    ソースデータ内の文字列を NULL で置き換える NULL を表す文字列を構成します。このパラメーターが構成されていない場合、ソースデータは特別に処理されません。

    圧縮形式

    ファイルが圧縮されている場合は、Dataphin で解凍するための対応する圧縮形式を選択します。サポートされている圧縮形式には、zip、gzip、bzip2、lzo、lzo-deflate、hadoop-snappy、および framing-snappy が含まれます。

    [詳細設定]

    データ読み取り用のその他のコントロール設定項目を入力します。たとえば、textReaderConfig を使用してテキストファイルの読み取りを制御します。設定例は次のとおりです。

    {
      "textReaderConfig":{
      "useTextQualifier":false, //修飾子の有無
      "textQualifier":"\"",//修飾子の設定
      "caseSensitive":true, //修飾子の大文字と小文字を区別するかどうか
      "trimWhitespace":false //各列の内容の前後の空白を削除するかどうか
      }
    }

    出力フィールド

    出力フィールドを表示します。出力フィールドは手動で追加できます。

    • 出力フィールドの一括追加。

      • [フォーマット]: [一括追加] をクリックします。[JSON] 形式と [TEXT] 形式での一括構成をサポートしています。

        • JSON 形式:

          // 例:
           [{
             "startPos": 0,
             "endPos": 10,
             "name": "user_id",
             "type": "String"
            },
            {
             "startPos": 11,
             "endPos": 15,
             "name": "user_name",
             "type": "String"
            }]
        • TEXT 形式:

          // 例:
          0,10,user_id,String
          11,15,user_name,String
      • 分割方法: ファイルの種類が [テキスト] で、分割方法が [フィールド長の分割] の場合、一括追加の分割方法を構成できます。[フィールドの開始位置別][フィールドの長さ別] が含まれます。

        • [フィールドの開始位置別]: 最初の数字はフィールドの開始文字位置、2 番目の数字は終了位置、最後の 2 つはフィールド名とフィールドの種類を示します。たとえば、TEXT 形式 0,10,user_id,String は、ファイルの各行の 1 文字目から 11 文字目までがフィールドとして導入され、フィールド名は user_id、フィールドの種類は String であることを示します。

        • [フィールドの長さ別に指定]: 最初の数字はフィールドの長さを示し、最後の 2 つはフィールド名とフィールドの種類を示します。たとえば、TEXT 形式 11,user_id,String は、長さが 11 のフィールドが導入され、フィールド名は user_id、フィールドの種類は String であることを示します。次のフィールドは、前のフィールドの後の最初の文字から長さを計算し始めます。

      • [行区切り記号][列区切り記号]: 一括追加の [フォーマット][TEXT] の場合、行区切り記号と列区切り記号の構成がサポートされます。行区切り記号は各フィールドの情報を区切るために使用され、デフォルトは改行 \n で、\n ; . をサポートしています。列区切り記号はフィールド名とフィールドの種類を区切るために使用され、デフォルトはカンマ (,) です。

    • 分割効果のプレビュー。

      ファイルの種類が [テキスト] で、分割方法が [フィールド長の分割] の場合、分割効果のプレビューがサポートされます。

      1. [分割効果のプレビュー] をクリックします。

      2. 分割効果のプレビュー ダイアログ ボックスで、テスト文字列を入力し、[テスト] をクリックして分割効果を表示します。

    • 新しい出力フィールドの作成。

      [新しい出力フィールドの作成] をクリックし、ページのプロンプトに従って [ソース序数][フィールド] を入力し、[種類] を選択します。テキスト ファイルと CSV ファイルの種類の場合、ソース序数は、フィールドが配置されている列の数値序数 (0 から開始) を 入力する必要があります

    • 出力フィールドの管理。

      追加されたフィールドに対して、次の操作を実行できます。

      • [アクション] 列の agag アイコンをクリックして、既存のフィールドを編集します。

      • [アクション] 列の agfag アイコンをクリックして、既存のフィールドを削除します。

    Xls および Xlsx パラメーター構成手順

    パラメーター

    説明

    [ステップ名]

    現在のウィジェットの利用シナリオに応じて名前を入力します。命名規則は次のとおりです。

    • 使用できるのは、漢字、英字、アンダースコア(_)、および数字のみです。

    • 64 文字を超えることはできません。

    [データソース]

    データソースを選択します。Dataphin システムで構成されているデータソースを選択してください。データソースは、次の 2 つの条件を満たしている必要があります。

    • データソースタイプは、[FTP データソース][SFTP データソース]、または [FTPS データソース] です。

    • [属性構成] を実行するアカウントには、データソースに対するリードスルー権限があります。権限がない場合は、データソース権限をリクエストする必要があります。詳細については、「データソース権限のリクエスト、更新、および返却」をご参照ください。

    [データソース] の後にある [新規] をクリックして計画モジュールに入り、データソースを追加することもできます。詳細については、「FTP データソースの作成」をご参照ください。

    [ファイルパス]

    ファイルパスを入力します。複数のファイルパスがサポートされており、セミコロン(;)で区切ります。ワイルドカード文字がサポートされています。たとえば、/dataphin/* を指定すると、dataphin ディレクトリのすべてのダウンストリームファイルが読み取られます。

    [ファイルタイプ]

    xls または xlsx ファイルタイプを選択します。

    [マーク完了ファイルチェック]

    ファイルデータを読み取る前に読み取り可能かどうかを確認するには、マーク完了ファイルチェックをオンにします。デフォルトは [オフ] です。

    1. 有効にした後、[構成の確認] をクリックします。

    2. [マーク完了ファイルチェック構成] ダイアログボックスで、チェックパラメーターを構成します。

      • マーク完了ファイルパス: チェックするマーク完了ファイルのパスを入力します。システムパラメーター、グローバルパラメーター、およびクロスノードパラメーターがサポートされています。たとえば、/${check}/dataphin です。

      • チェック間隔(秒): 各ファイルチェックの間隔時間を入力します。デフォルトは 60 秒 です。

      • チェック期間(分): 各ファイルチェックの期間を入力します。デフォルトは 60 分 です。

        重要
        • チェック期間とデータ転送期間は、統合タスクの実行時間として一緒に計算されます。チェック期間と実行タイムアウト構成に注意してください。チェック期間中はリソースが占有されるため、適切に構成してください。

        • チェック時間がタスクのタイムアウトを超えた場合、タスクは強制終了されます。

      • チェック失敗時の処理ポリシー: ファイルチェックタスクが失敗した後、データの抽出と書き込みは実際には実行されません。ファイルチェックタスクの失敗の処理ポリシーでは、タスクを失敗として設定 および タスクを成功として設定 がサポートされています。タスクを成功として設定する。

        • タスクを失敗に設定: チェックが失敗した後、システムはチェックタスクを失敗ステータスに設定し、統合タスクは実行されません。

        • タスクを成功に設定: チェックが失敗した後、システムはチェックタスクを成功ステータスに設定し、後続の統合タスクの実行を続行します。

    3. [確認] をクリックして、マーク完了ファイルチェック構成を完了します。

    ファイルが存在しない場合

    無視 および タスクを失敗に設定 ポリシーをサポートしています。マーク完了ファイルチェックが有効になっている場合、ファイルが存在しない場合の構成はサポートされていません。

    • [無視]: 読み取られるファイルが存在しない場合、ファイルを無視して他のファイルの読み取りを続行します。

    • [タスクを失敗に設定]: 読み取られるファイルが存在しない場合、タスクを終了して失敗に設定します。

    シート選択

    名前別 および インデックス別 の方法をサポートしています。複数のシートを読み取る場合、データ形式は一致している必要があります。

    • シート名: 複数のシートを読み取ることができ、コンマ(,)で区切るか、* を入力してすべてのシートを読み取ることができます。* とコンマを混在させることはできません。たとえば、sheet1,sheet2 です。

    • シートインデックス: 複数のシートを読み取ることができ、コンマ(,)で区切るか、* を入力してすべてのシートを読み取ることができます。* とコンマを混在させることはできません。たとえば、0,3,7-9 を使用して、単一または連続したシートを指定できます。

    データコンテンツ開始行

    入力ウィジェットがデータを読み取る開始行を設定します。デフォルトは 1 で、最初の行からデータコンテンツとして開始します。最初の N 行を無視する必要がある場合は、データコンテンツ開始行を N+1 に設定します。

    データコンテンツ終了行

    行数が指定されていない場合は、データの最後の行まで読み取ります。データコンテンツ終了行 は、データコンテンツ開始行 以上である必要があります。

    エクスポートシート名

    エクスポート または エクスポートしない を選択できます。エクスポート を選択すると、エクスポートフィールドが追加され、フィールドコンテンツは行データのソースシート名になります。

    ファイルエンコーディング

    ファイルエンコーディングを選択します。システムは、UTF-8GBK などの ファイルエンコーディング をサポートしています。

    [NULL 値変換]

    NULL を表す文字列を構成して、ソースデータ内の文字列を NULL に置き換えます。このパラメーターが構成されていない場合、ソースデータは特別に処理されません。

    圧縮形式

    ファイルが圧縮されている場合は、Dataphin が解凍するための対応する圧縮形式を選択します。サポートされている圧縮形式には、zip、gzip、bzip2、lzo、lzo-deflate、hadoop-snappy、および framing-snappy が含まれます。

    出力フィールド

    出力フィールドが表示されます。出力フィールドを手動で追加できます。

    • 出力フィールドの一括追加。

      • [一括追加] をクリックすると、[JSON] 形式と [TEXT] 形式での一括構成がサポートされます。

        • [JSON 形式:]

          // 例:
           [{
             "startPos": 0,
             "endPos": 10,
             "name": "user_id",
             "type": "String"
            },
            {
             "startPos": 11,
             "endPos": 15,
             "name": "user_name",
             "type": "String"
            }]
        • TEXT 形式:

          行区切り文字列区切り文字: 一括追加の 形式TEXT の場合、行区切り文字と列区切り文字の構成がサポートされています。行区切り文字は各フィールドの情報を区切るために使用され、デフォルトは改行 \n で、\n ; . がサポートされています。列区切り文字はフィールド名とフィールドタイプを区切るために使用され、デフォルトはコンマ(,)です。

          // 例:
          0,10,user_id,String
          11,15,user_name,String
    • 新しい出力フィールドの作成。

      [新しい出力フィールドの作成] をクリックし、ページのプロンプトに従って ソース序数フィールド を入力し、タイプ を選択します。xls および xlsx ファイルタイプの場合、ソース序数には、フィールドが配置されている列の大文字の序数、または 0 から始まる列の数値序数を 入力する必要があります。小文字の序数を入力すると、システムは自動的に大文字の序数に変換します。同時に、エクスポートシート名が選択されている場合、ソース序数は (-) であり、変更できません。入力必須

    • 出力フィールドの管理。

      追加されたフィールドに対して次の操作を実行することもできます。

      • 操作 列の agag アイコンをクリックして、既存のフィールドを編集します。

      • 操作 列の agfag アイコンをクリックして、既存のフィールドを削除します。

  8. [確認] をクリックして、FTP 入力ウィジェットの構成を完了します。