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

MaxCompute:Tunnel の操作

最終更新日:Jun 16, 2026

MaxCompute では、Tunnel コマンドを使用してデータのアップロードおよびダウンロードを行うことができます。

Tunnel の操作の詳細については、「Tunnel コマンド」をご参照ください。以下の表に、一般的なコマンドを示します。

タイプ

説明

ロール

エントリポイント

データのアップロード

ローカルファイルから MaxCompute テーブルに追加モードでデータをアップロードします。

テーブルに対する Alter 権限を持つユーザー。

MaxCompute クライアント

データのダウンロード

MaxCompute テーブルまたは指定したインスタンスの実行結果から、ローカルファイルにデータをダウンロードします。

テーブルに対する Select 権限を持つユーザー。

データのアップロード

ローカルファイルから MaxCompute テーブルに追加モードでデータをアップロードできます。データのアップロードは無料です。

  • 制限事項

    • ファイルまたは第 1 階層のディレクトリをアップロードできます。1 回のアップロード操作では、1 つのテーブルまたはテーブル内の単一のパーティションのみを対象にできます。

    • パーティションテーブルにデータをアップロードする場合は、パーティションを指定する必要があります。複数のパーティションレベルを持つテーブルの場合は、最下位レベルのパーティションを指定する必要があります。

  • 構文

    Tunnel upload <path> [<project_name>.]<table_name>[/<pt_spc>];
  • パラメーター

    • path :必須。ソースデータファイルのパスとファイル名。デフォルトでは、データファイルは TXT 形式です。パスとファイル名には、英字、数字、アンダースコア (_) のみを使用できます。中国語文字とスペースはサポートされていません。LANG=C などの非 UTF-8 ロケールのシステムでパスに中国語文字が含まれている場合、MaxCompute クライアント (odpscmd) は "File not found" エラーを返します。この問題を解決するには、英字のみを含むパスを使用するか、システムロケールを export LANG=en_US.UTF-8 などの UTF-8 エンコーディングに設定してください。

      ファイルパスは 2 つの方法で指定できます。ファイルが MaxCompute クライアントの bin ディレクトリにある場合は、path パラメーターを filename.extension に設定します。ファイルが D:\test などの別のディレクトリにある場合は、path パラメーターを絶対パス (例:D:\test\filename.extension) に設定します。Tunnel コマンドラインツールにはファイルサイズの制限がなく、大きなファイルのアップロードをサポートしています。大きなファイルのアップロードを最適化するには、-bs パラメーターを使用して各データブロックのサイズを調整できます。デフォルトは 100 MiB です。

      説明

      macOS では、path の値は絶対パスである必要があります。たとえば、ファイルが MaxCompute クライアントの bin ディレクトリにある場合は、path パラメーターを /Users/username/MaxCompute/bin/filename.extension などの絶対パスに設定します。

    • project_name :オプション。宛先テーブルが属するプロジェクトの名前。別のプロジェクトのテーブルにアクセスする場合は、このパラメーターが必要です。

    • table_name :必須。宛先テーブルの名前。

    • pt_spc :オプション。宛先パーティション。最下位レベルのパーティションを指定する必要があります。値は partition_col1=col1_value1, partition_col2=col2_value1... の形式にする必要があります。

    • 例 1:log.txt ファイルから現在のプロジェクトの test_table テーブルにデータをアップロードします。log.txt ファイルは MaxCompute クライアントの bin ディレクトリに保存されています。

      Tunnel upload log.txt test_table;
    • 例 2:log.txt ファイルから test_table テーブルの p1="b1",p2="b2" パーティションにデータをアップロードします。このテーブルは test_project プロジェクト内の 2 階層のパーティションテーブルです。log.txt ファイルは D ドライブの test フォルダに保存されています。

      Tunnel upload D:\test\log.txt test_project.test_table/p1="b1",p2="b2";

データのダウンロード

MaxCompute テーブルまたは指定したインスタンスの実行結果から、ローカルファイルにデータをダウンロードします。インターネット経由でデータをダウンロードする場合は、ダウンロードしたデータ量に基づいて料金が発生します。料金は次のように計算されます。ダウンロード料金 = ダウンロードしたデータ (GB) × 料金 (0.1166 USD/GB)。

  • 制限事項

    • 1 回のダウンロードでは、1 つのテーブルまたは 1 つのパーティションから単一のファイルにのみデータをエクスポートできます。

    • パーティションテーブルからデータをダウンロードする場合は、パーティションを指定する必要があります。複数のパーティションレベルを持つテーブルの場合は、最下位レベルのパーティションを指定する必要があります。

  • 構文

    Tunnel download [<project_name>.]<table_name>[/<pt_spc>] <path>;
  • パラメーター

    • project_name :オプション。ソーステーブルが属するプロジェクトの名前。別のプロジェクトのテーブルにアクセスする場合は、このパラメーターが必要です。

    • table_name :必須。ソーステーブルの名前。

    • pt_spc :オプション。ソースパーティション。最下位レベルのパーティションを指定する必要があります。値は partition_col1=col1_value1, partition_col2=col2_value1... の形式にする必要があります。

    • path :必須。ダウンロードしたデータファイルの宛先パスとファイル名。デフォルトでは、ダウンロードしたデータファイルは TXT 形式です。

      データファイルの保存先パスは 2 つの方法で指定できます。ファイルを MaxCompute クライアントの bin ディレクトリに直接ダウンロードすることもできます。この場合は、path パラメーターに filename.extension を指定します。または、D ドライブの test フォルダーなど別のパスにダウンロードすることもできます。この場合は、path パラメーターに D:\test\filename.extension を指定します。

    • 例 1: test_project.test_table テーブル (2 レベルのパーティションテーブル) からデータをダウンロードし、MaxCompute クライアントの bin ディレクトリにある test_table.txt ファイルに保存するコマンドは、次のとおりです。

      Tunnel download test_project.test_table/p1="b1",p2="b2" test_table.txt;
    • 例 2:2 階層のパーティションテーブルである test_project.test_table テーブルの p1="b1",p2="b2" パーティションから、D ドライブの test フォルダにある test_table.txt ファイルにデータをダウンロードします。コマンドは次のとおりです。

      Tunnel download test_project.test_table/p1="b1",p2="b2" D:\test\test_table.txt;