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

Tablestore:OTSClient インスタンスの初期化

最終更新日:Dec 28, 2024

TableStoreClient は Tablestore のクライアントです。TableStoreClient は、テーブルを管理し、単一行または複数行に対する読み取りおよび書き込み操作を実行するためのさまざまなメソッドを提供します。ワイドカラムモデルでテーブルを管理し、単一行または複数行に対する読み取りおよび書き込み操作を実行する場合は、TableStoreClient インスタンスを初期化する必要があります。時系列テーブルの管理、時系列のクエリ、および時系列モデルでの時系列データの読み取りと書き込みを行う場合は、TimeseriesClient インスタンスを初期化する必要があります。

準備

OTSClient インスタンスを初期化する前に、Tablestore インスタンスのエンドポイントを取得し、Tablestore Go SDK をインストールし、アクセス認証情報を設定する必要があります。

Tablestore インスタンスのエンドポイントの取得

Tablestore インスタンスを作成した後、インスタンスのエンドポイントを取得する必要があります。その後、エンドポイントを使用してインスタンスにアクセスできます。

エンドポイントは、リージョン内の Tablestore インスタンスにアクセスするために使用されるドメイン名です。たとえば、https://sun.cn-hangzhou.ots.aliyuncs.com は、HTTPS 経由で中国 (杭州) リージョンにある sun という名前のインスタンスにアクセスするために使用されるパブリックエンドポイントです。詳細については、エンドポイント を参照してください。

  1. Tablestore サービスがアクティブ化されていない場合は、アクティブ化します。詳細については、Tablestore のアクティブ化 を参照してください。

  2. Tablestore インスタンスを作成します。詳細については、インスタンスの作成 を参照してください。

  3. 作成したインスタンスのエンドポイントを取得します。

    1. Tablestore コンソール にログインします。

    2. 概要ページで、作成したインスタンスを見つけ、インスタンス名をクリックします。

    3. インスタンスアクセス URL セクションの インスタンスの詳細 タブで、インスタンスのエンドポイントを表示します。

      image

Tablestore Go SDK のインストール

詳細については、インストール を参照してください。

アクセス認証情報の設定

Tablestore にアクセスするには、身元を確認するための有効なアクセスキーペアが必要です。詳細については、アクセス認証情報の設定 を参照してください。

TableStoreClient インスタンスの初期化

Tablestore Go SDK を使用してワイドカラムモデルのテーブルを管理するには、TableStoreClient インスタンスを作成し、TableStoreClient インスタンスの操作を呼び出して Tablestore にアクセスする必要があります。

API 操作

// TableStoreClient インスタンスを初期化します。
// endPoint: Tablestore インスタンスにアクセスするために使用されるエンドポイント。エンドポイントは https:// または http:// で始まる必要があります。例: https://instance.cn-hangzhou.ots.aliyun.com。
// instanceName: アクセスする Tablestore インスタンスの名前。Tablestore コンソールでインスタンスを作成するか、管理者に連絡して既存のインスタンスの名前を取得できます。
// accessKeyId: Tablestore インスタンスにアクセスするために使用されるアクセスキー ID。アクセスキー ID を取得するには、Alibaba Cloud の公式 Web サイトにアクセスするか、管理者に連絡してください。
// accessKeySecret: Tablestore インスタンスにアクセスするために使用されるアクセスキーシークレット。アクセスキーシークレットを取得するには、Alibaba Cloud の公式 Web サイトにアクセスするか、管理者に連絡してください。
// securityToken: Tablestore インスタンスにアクセスするために使用される STS トークン。Alibaba Cloud STS を使用して STS トークンを取得できます。STS トークンには有効期限があります。既存のトークンの有効期限が切れたら、新しいトークンを取得する必要があります。
// config: Tablestore のカスタム設定項目。ビジネス要件に基づいてカスタム設定項目を指定できます。

func NewClient(endPoint, instanceName, accessKeyId, accessKeySecret string, options ...ClientOption) *TableStoreClient             

func NewClientWithConfig(endPoint, instanceName, accessKeyId, accessKeySecret string, securityToken string, config *TableStoreConfig, options ...ClientOption) *TableStoreClient 

警告

Alibaba Cloud アカウントのアクセスキーペアは、すべての API 操作に対する権限を持っています。API 操作の呼び出しや日常的な O&M の実行には、RAM ユーザーを使用することをお勧めします。アクセスキー ID とアクセスキーシークレットをプロジェクトコードにハードコードしないことをお勧めします。そうしないと、アクセスキーペアが漏洩し、アカウント内のすべてのリソースのセキュリティが危険にさらされる可能性があります。例では、アクセスキーペアとセキュリティトークンは環境変数に保存されています。

アクセスキーペアの使用

説明

サンプルコードを実行する前に、OTS_AK_ENV および OTS_SK_ENV 環境変数が設定されていることを確認してください。詳細については、アクセス認証情報の設定 を参照してください。

endpoint := "yourEndpoint"
instanceName := "yourInstance"
accessKeyId := os.Getenv("OTS_AK_ENV")
accessKeySecret := os.Getenv("OTS_SK_ENV")

// tableStore クライアントの初期化
client := tablestore.NewClient(endpoint, instanceName, accessKeyId, accessKeySecret)

// 処理を実行

STS の使用

説明

サンプルコードを実行する前に、OTS_AK_ENVOTS_SK_ENV、および OTS_SESSION_TOKEN 環境変数が設定されていることを確認してください。詳細については、アクセス認証情報の設定 を参照してください。

endpoint := "yourEndpoint"
instanceName := "yourInstance"
accessKeyId := os.Getenv("OTS_AK_ENV")
accessKeySecret := os.Getenv("OTS_SK_ENV")
securityToken := os.Getenv("OTS_SESSION_TOKEN")
config := tablestore.NewDefaultTableStoreConfig();

// tableStore クライアントの初期化
client := tablestore.NewClientWithConfig(endpoint, instanceName, accessKeyId, accessKeySecret, securityToken, config)

// 処理を実行

TimeseriesClient インスタンスの初期化

Tablestore Go SDK を使用して時系列モデルのテーブルを管理するには、TimeseriesClient インスタンスを作成し、TimeseriesClient インスタンスの操作を呼び出して Tablestore にアクセスする必要があります。TimeseriesClient インスタンスは、時系列モデル用に個別に初期化する必要があります。

API 操作

// TimeseriesClient インスタンスを初期化します。
// endPoint: Tablestore インスタンスにアクセスするために使用されるエンドポイント。エンドポイントは https:// または http:// で始まる必要があります。例: https://instance.cn-hangzhou.ots.aliyun.com。
// accessKeyId: Tablestore インスタンスにアクセスするために使用されるアクセスキー ID。アクセスキー ID を取得するには、Alibaba Cloud の公式 Web サイトにアクセスするか、管理者に連絡してください。
// accessKeySecret: Tablestore インスタンスにアクセスするために使用されるアクセスキーシークレット。アクセスキーシークレットを取得するには、Alibaba Cloud の公式 Web サイトにアクセスするか、管理者に連絡してください。
// instanceName: アクセスする Tablestore インスタンスの名前。Tablestore コンソールでインスタンスを作成するか、管理者に連絡して既存のインスタンスの名前を取得できます。
// securityToken: Tablestore インスタンスにアクセスするために使用される STS トークン。Alibaba Cloud STS を使用して STS トークンを取得できます。STS トークンには有効期限があります。既存のトークンの有効期限が切れたら、新しいトークンを取得する必要があります。
// config: Tablestore のカスタム設定項目。ビジネス要件に基づいてカスタム設定項目を指定できます。

func NewTimeseriesClient(endPoint, instanceName, accessKeyId, accessKeySecret string , options ...TimeseriesClientOption) *TimeseriesClient

func NewTimeseriesClientWithConfig(endPoint, instanceName, accessKeyId, accessKeySecret string, securityToken string, config *TableStoreConfig, timeseriesConfiguration *TimeseriesConfiguration, options ...TimeseriesClientOption) *TimeseriesClient

警告

Alibaba Cloud アカウントのアクセスキーペアは、すべての API 操作に対する権限を持っています。API 操作の呼び出しや日常的な O&M の実行には、RAM ユーザーを使用することをお勧めします。アクセスキー ID とアクセスキーシークレットをプロジェクトコードにハードコードしないことをお勧めします。そうしないと、アクセスキーペアが漏洩し、アカウント内のすべてのリソースのセキュリティが危険にさらされる可能性があります。例では、アクセスキーペアとセキュリティトークンは環境変数に保存されています。

アクセスキーペアの使用

説明

サンプルコードを実行する前に、OTS_AK_ENV および OTS_SK_ENV 環境変数が設定されていることを確認してください。詳細については、アクセス認証情報の設定 を参照してください。

endpoint := "yourEndpoint"
instanceName := "yourInstance"
accessKeyId := os.Getenv("OTS_AK_ENV")
accessKeySecret := os.Getenv("OTS_SK_ENV")

// tableStore クライアントの初期化
client := tablestore.NewTimeseriesClient(endpoint, instanceName, accessKeyId, accessKeySecret)

// 処理を実行

STS の使用

説明

サンプルコードを実行する前に、OTS_AK_ENVOTS_SK_ENV、および OTS_SESSION_TOKEN 環境変数が設定されていることを確認してください。詳細については、アクセス認証情報の設定 を参照してください。

endpoint := "yourEndpoint"
instanceName := "yourInstance"
accessKeyId := os.Getenv("OTS_AK_ENV")
accessKeySecret := os.Getenv("OTS_SK_ENV")
securityToken := os.Getenv("OTS_SESSION_TOKEN")
config := tablestore.NewDefaultTableStoreConfig();
timeseriesConfig := tablestore.	NewTimeseriesConfiguration();

// tableStore クライアントの初期化
client := tablestore.NewTimeseriesClientWithConfig(endpoint, instanceName, accessKeyId, accessKeySecret, securityToken, config, timeseriesConfig)

// 処理を実行

FAQ

Tablestore SDK を使用するときに「Signature mismatch」エラーが報告された場合はどうすればよいですか?