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

Tablestore:トンネルに関する情報の照会

最終更新日:Dec 28, 2024

トンネルを作成した後、DescribeTunnel オペレーションを呼び出して、トンネル内のチャネルに関する情報など、トンネルに関する情報を照会できます。

前提条件

  • TunnelClient インスタンスが初期化されている。

  • データテーブルに対してトンネルが作成されている。 詳細については、トンネルの作成を参照してください。

パラメーター

リクエストパラメーター

パラメーター

説明

TableName

トンネル情報を照会するデータテーブルの名前。

TunnelName

トンネルの名前。

レスポンスパラメーター

パラメーター

説明

TunnelConsumePoint

トンネルを使用して増分データを消費した最新の時点。 この時刻は、トンネル内で最も遅いチャネルがデータの消費に使用された時点です。 デフォルト値:1970年1月1日 (UTC)。

TunnelInfo

トンネルに関する情報。 レスポンスには以下の情報が含まれます。

  • TunnelId: トンネルのID。

  • TunnelType: トンネルのタイプ。 有効な値:BaseData、Stream、BaseAndStream。 BaseData タイプは、トンネルがデータテーブルの全データの消費に使用されることを示します。 Stream タイプは、トンネルがデータテーブルの増分データの消費に使用されることを示します。 BaseAndStream タイプは、トンネルがデータテーブルの差分データの消費に使用されることを示します。

  • TableName: トンネルが作成されたデータテーブルの名前。

  • InstanceName: トンネルが配置されているインスタンスの名前。

  • Stage: トンネルのステージ。 有効な値:InitBaseDataAndStreamShard、ProcessBaseData、ProcessStream。 InitBaseDataAndStreamShard ステージは、トンネルが初期化中であることを示します。 ProcessBaseData ステージは、トンネルが全データの消費に使用されていることを示します。 ProcessStream ステージは、トンネルが増分データの消費に使用されていることを示します。

  • Expired: データが期限切れかどうかを示します。

    true が返された場合は、できるだけ早く DingTalk を使用して Tablestore テクニカルサポートに連絡してください。

List<ChannelInfo>

トンネル内のチャネルに関する情報。 レスポンスには以下の情報が含まれます。

  • ChannelId: チャネルのID。

  • ChannelType: チャネルのタイプ。 有効な値:BaseData および Stream。

  • ChannelStatus: チャネルのステータス。 有効な値:WAIT、OPEN、CLOSING、CLOSE、TERMINATED。

  • ClientId: トンネルクライアントのID。 デフォルトでは、クライアントIDはクライアントのホスト名とランダムな文字列を連結したものです。 クライアントのホスト名は、TunnelWorkerConfig を使用して指定できます。

  • ChannelConsumePoint: チャネルが増分データの消費に使用された最新の時点。 デフォルト値:1970年1月1日 (UTC)。 このパラメーターは、BaseData タイプのチャネルには適用されません。

  • ChannelCount: チャネルが同期するデータエントリの数。

RequestId

リクエストのID。

次のサンプルコードは、トンネルが増分データの消費に使用された最新の時点やトンネル内のチャネルに関する情報など、トンネルに関する情報を照会する方法の例を示しています。

// トンネルが増分データの消費に使用された最新の時点と目標復旧時点 (RPO) は、トンネルのタイプが Stream の場合にのみ有効になります。
// ストリームトンネル: TunnelInfo の Stage パラメーターは ProcessStream です。 ストリームチャネル: ChannelInfo の ChannelType パラメーターは Stream です。
private static void describeTunnel(TunnelClient client, String tableName, String tunnelName) {
    DescribeTunnelRequest request = new DescribeTunnelRequest(tableName, tunnelName);
    DescribeTunnelResponse resp = client.describeTunnel(request);
    System.out.println("RequestId: " + resp.getRequestId());
    // トンネルが増分データの消費に使用された最新の時点。 この時刻は、トンネル内で最も遅いチャネルがデータの消費に使用された時点です。 デフォルト値:1970年1月1日 (UTC)。
    System.out.println("TunnelConsumePoint: " + resp.getTunnelConsumePoint());
    System.out.println("TunnelInfo: " + resp.getTunnelInfo());
    for (ChannelInfo ci : resp.getChannelInfos()) {
        System.out.println("ChannelInfo::::::");
        System.out.println("\tChannelId: " + ci.getChannelId());
        // チャネルのタイプ。 有効な値:BaseData および Stream。
        System.out.println("\tChannelType: " + ci.getChannelType());
        // トンネルクライアントの ID。 デフォルトでは、クライアント ID はクライアントのホスト名とランダムな文字列を連結したものです。
        System.out.println("\tClientId: " + ci.getClientId());
        // チャネルが増分データの消費に使用された最新の時点。
        System.out.println("\tChannelConsumePoint: " + ci.getChannelConsumePoint());
        // チャネルが同期するデータエントリの数。
        System.out.println("\tChannelCount: " + ci.getChannelCount());
    }
}

関連情報

  • トンネルに関する情報を照会するために呼び出すことができる API オペレーションについては、DescribeTunnel を参照してください。

  • Tunnel Service を使用してデータをすばやく消費する方法については、はじめにを参照してください。

  • テーブルのすべてのトンネルに関する情報を照会できます。 詳細については、データテーブルのすべてのトンネルに関する情報の照会を参照してください。

  • 不要になったトンネルを削除できます。 詳細については、トンネルの削除を参照してください。