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

MaxCompute:Streaming Data Tunnel の概要

最終更新日:Mar 27, 2026

MaxCompute Streaming Tunnel を使用すると、専用の API とバックエンドサービスを利用して、MaxCompute にデータをストリーミングモードで書き込むことができます。これらの API は、分散サービスの開発コストを大幅に削減し、パーティションロックの競合、小さなファイルの断片化、複雑な同期コードなど、高い同時実行性や高QPS (Queries Per Second) のシナリオにおける MaxCompute Tunnel のパフォーマンスボトルネックを解消します。

MaxCompute Streaming Tunnel は、2021 年 1 月 1 日からパブリックプレビュー中で、プレビュー期間中は無料です。今後の課金変更については、「お知らせ」をご参照ください。

Streaming Tunnel の利用シーン

MaxCompute Streaming Tunnel は、MaxCompute Tunnel を置き換えるものではなく、補完するものです。ワークロードに適したチャネルを決定するには、次の表を使用してください。

ディメンション MaxCompute Streaming Tunnel MaxCompute Tunnel
データ形式 ストリーミング行 バッチ化されたファイル
同時実行性 高い同時実行性をサポート、パーティションロックの競合なし 同時書き込みによりパーティションロックの競合が発生する可能性あり
書き込みスループット 高QPS に最適化、小さなファイルの断片化を防止 高QPS での小さな batch size は多数の小さなファイルを生成
増分データ バックグラウンドで非同期にマージされ、サービス中断なし 組み込みの非同期マージなし、データはそのまま書き込まれる
パーティショニング 同時ジョブ間での自動パーティショニング 手動パーティション管理が必要
最適な用途 リアルタイムログ取り込み、ストリーム処理結果、メッセージキュー同期 大規模バッチETL、定期的な一括ロード

主な機能

  • ストリーミングセマンティックAPI:分散データ同期サービスの開発を容易にし、開発コストを削減します。

  • 自動パーティショニング:複数の同期ジョブが同時に同じテーブルに書き込む際の同時パーティションロックを排除します。

  • 非同期データマージ:アクティブな書き込み操作を中断することなく、バックグラウンドで増分データをマージし、ストレージ効率を向上させ、小さなファイルの蓄積を防止します。

    • データ集約 (マージ):この機能によりストレージ効率が向上します。

    • zorder by ソート:この機能によりストレージとクエリ効率が向上します。

  • 増分データの非同期 zorder by ソート。 zorder by の詳細については、「データの挿入または上書き (INSERT INTO | INSERT OVERWRITE)」をご参照ください。

  • データリンクとメタデータアクセス間の完全な隔離。この機能は、高同時実行書き込みシナリオにおけるメタデータアクセスによって引き起こされるロック競合による遅延とエラーを解決します。

  • ユースケース

    シナリオ 説明
    リアルタイムイベントログ取り込み ログデータを MaxCompute に直接書き込み、ダウンストリームバッチ処理に利用します。中間ストレージサービスが不要になり、パイプラインコストを削減します。
    ストリーム処理結果の保存 Flink またはその他のストリームコンピューティング結果を、同時実行数や batch size の制限なしに MaxCompute に永続化し、高頻度書き込みによる小さなファイルの蓄積を回避します。MaxCompute Streaming Tunnel は、高同時実行ロックを伴うシナリオでのストリーミングサービスの可用性を保証します。
    メッセージキュー同期 DataHub または ApsaraMQ for Kafka から MaxCompute へ、高い同時実行性と大量のバッチでデータを同期し、以前 Simple Message Queue コネクタで必要とされていた回避策を置き換えます。

    アップストリームサービスとの統合

    デフォルトでは、Realtime Compute for Apache Flink、DataWorks、および ApsaraMQ for Kafka は MaxCompute Tunnel を介して MaxCompute に書き込みます。Streaming Tunnel に切り替えるには、次の手順を実行します。

    サービス Streaming Tunnel を有効にする方法
    Realtime Compute for Apache Flink Realtime Compute for Apache Flink が提供する組み込みの Streaming Tunnel プラグインを使用します。
    DataWorks DataWorks の担当エンジニアに連絡して、バックグラウンドで Streaming Tunnel を有効にしてください。
    ApsaraMQ for Kafka Kafka の担当エンジニアに連絡して、バックグラウンドで Streaming Tunnel を有効にしてください。

    制限事項

    書き込み中のテーブルまたはパーティションロック

    MaxCompute Tunnel Service は、ストリーミング書き込みの持続時間中、ターゲットテーブルまたはパーティションをロックします。insert intoinsert overwrite など、データを変更するすべての DML 操作は、書き込みが完了してロックが解除されるまでブロックされます。

    スキーマ変更はサポートされていません

    Streaming Tunnel がアクティブな間にターゲットテーブルのスキーマが変更された場合、ストリーミングデータをテーブルに書き込むことはできません。

    ホットデータの一時ストレージオーバーヘッド

    非同期データマージまたは ZORDER BY が有効になっている場合、Streaming Tunnel は、前の 1 時間以内に書き込まれたデータの 2 つのコピーを保持します。元の取り込みデータと、非同期でマージされたコピーです。この冗長ストレージは、デフォルトの保持期間である 1 時間後に自動的にクリーンアップされます。

    マージウィンドウ中にワークロードの取り込みレートが高い場合は、それに応じてストレージ容量を計画してください。