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

DataHub:Java SDK

最終更新日:Aug 25, 2026

SDK のインストール

Maven プロジェクトに次の依存関係を追加します。

<dependency>
  <groupId>com.aliyun.datahub</groupId>
  <artifactId>aliyun-sdk-datahub</artifactId>
  <version>2.29.5</version>
</dependency>
  • JDK: バージョン 1.8 以降を使用してください。

  • API でキー認証が必要な場合は、プロジェクトで AccessKey ID と AccessKey Secret を設定します。詳細については、「認証」をご参照ください。

認証

背景情報

AccessKey (AK) は、Alibaba Cloud が提供するアクセスキーで、OpenAPI の呼び出しを認証するために使用されます。AccessKey は AccessKey ID と AccessKey Secret で構成されます。両方とも機密情報として保持する必要があります。

Alibaba Cloud Credentials は、Alibaba Cloud 開発者向けの認証情報管理ツールです。デフォルトの認証情報プロバイダーチェーンを設定することで、AccessKey をプレーンテキストでハードコーディングすることなく Alibaba Cloud OpenAPI を呼び出すことができます。クラウドリソースの保護に役立ちます。

前提条件

  • RAM ユーザーの AccessKey ID と AccessKey Secret を取得します。手順については、「RAM ユーザーの AccessKey 情報を表示する」をご参照ください。

  • 重要

    メインアカウントの AccessKey が漏洩すると、アカウント内のすべてのリソースが危険にさらされます。アカウントを保護するため、RAM ユーザーの AccessKey を作成し、やむを得ない場合を除き、メインアカウントの AccessKey は作成しないでください。

    RAM ユーザーの AccessKey Secret は、AccessKey の作成時にのみ表示され、後で取得することはできません。すぐに AccessKey Secret を安全に保存してください。

  • Alibaba Cloud Credentials ツールをインストールします。

    Maven でインストールするには (Credentials の 最新バージョン を使用することを推奨します) :

    <dependency>
     <groupId>com.aliyun</groupId>
     <artifactId>credentials-java</artifactId>
     <version>0.2.11</version>
    </dependency>
  • JDK 1.8 以降をインストールします。

設定方法

このトピックでは、環境変数を例として使用します。その他の設定方法については、「環境変数の設定」をご参照ください。

重要

設定ファイルを使用する場合、ALIBABA_CLOUD_ACCESS_KEY_ID および ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数がシステムに設定されていないことを確認してください。これらの環境変数が設定されている場合、設定ファイルよりも優先されます。

ALIBABA_CLOUD_ACCESS_KEY_ID および ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数を設定することで、デフォルトのアクセス認証情報を作成できます。その後、アプリケーションはこれらの変数を自動的に使用して API 呼び出しを認証します。

環境変数の設定

ALIBABA_CLOUD_ACCESS_KEY_ID および ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数を設定します。

  • Linux および macOS システムの場合

    次のコマンドを実行します。

    export ALIBABA_CLOUD_ACCESS_KEY_ID=<access_key_id>
    export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<access_key_secret>

    <access_key_id> をお使いの AccessKey ID に、<access_key_secret> をお使いの AccessKey Secret に置き換えます。

  • Windows システムの場合

    1. ALIBABA_CLOUD_ACCESS_KEY_ID と ALIBABA_CLOUD_ACCESS_KEY_SECRET の 2 つの新しい環境変数を作成します。それぞれの値をお使いの AccessKey ID と AccessKey Secret に設定します。

    2. Windows を再起動します。

コード例

    Client credentialClient = new Client();
    String accessKeyId = credentialClient.getAccessKeyId();
    String accessKeySecret = credentialClient.getAccessKeySecret();

注意事項

  • SDK v2.9 からアップグレードする場合: setTimestampInms メソッドを置き換える場合は、タイムスタンプ値を 1,000 倍してください。

  • 通常の操作では、データの読み書きのために頻繁に呼び出されるのは putRecords / putRecordsByShard API と getRecords API のみです。getTopic、getCursor、listShard などの他の API は、通常、初期化時にのみ呼び出されます。

  • プロジェクトには 1 つ以上の DatahubClient インスタンスを作成できます。DatahubClient インスタンスはスレッドセーフです。

  • 異なるパッケージに同じ名前のクラスがある場合、バージョン 2.12 以降では com.aliyun.datahub.client パッケージのクラスが使用されることにご注意ください。他のパッケージのクラスは、バージョン 2.12 より前の SDK との下位互換性のために維持されています。例:

    // バージョン 2.12
    com.aliyun.datahub.client.model.RecordSchema
    // バージョン 2.12 より前の SDK でコードが記述されており、アップグレード後のコード変更を避けたい場合は、この型を引き続き使用してください。
    com.aliyun.datahub.common.data.RecordSchema
  • Parse body failed, Offset: 0 というエラーが発生した場合、enableBinary パラメーターを false に設定してみてください。