Tablestore クライアントは Tablestore 用のクライアントであり、Tablestore 内のテーブルとデータに対する操作を実行するために使用できるさまざまなメソッドを提供します。この Topic では、Tablestore SDK for Node.js を使用して Tablestore クライアントを初期化する方法について説明します。
このトピックでは、Alibaba Cloud アカウントの AccessKey ペアを例として使用します。他の認証情報を使用してクライアントを初期化する方法については、「RAM ユーザーの AccessKey ペアを使用して Tablestore にアクセスする」および「STS の一時的なアクセス認証情報を使用して Tablestore にアクセスする」をご参照ください。
準備
Tablestore クライアントを初期化する前に、インスタンス情報を取得し、Tablestore SDK をインストールし、アクセス認証情報を構成します。
アクセスするインスタンスに関する情報の取得
リージョン ID: インスタンスのリージョン ID。たとえば、中国 (杭州) のリージョン ID は cn-hangzhou です。
インスタンス名とエンドポイント: 各 Tablestore インスタンスには一意のエンドポイントがあります。アプリケーションは、テーブルとデータに対する操作を実行するためにエンドポイントを指定する必要があります。エンドポイントを取得するには、次の手順を実行します。
Tablestore コンソールにログインします。
上部のナビゲーションバーで、リソースグループとリージョンを選択します。
[概要] ページで、インスタンスのエイリアスをクリックするか、[アクション] 列の [インスタンスの管理] をクリックします。
[インスタンス詳細] タブで、インスタンス名とエンドポイントを表示します。
重要デフォルトでは、新しいインスタンスではインターネットアクセスが無効になっています。インターネット経由でインスタンス内のリソースにアクセスするには、インスタンスのインターネットアクセスを有効にする必要があります。
Tablestore SDK for Node.js のインストール
npm を使用して次のコマンドを実行し、Tablestore SDK for Node.js をインストールします。
npm install tablestoreTablestore SDK for Node.js のインストール方法の詳細については、「Tablestore SDK for Node.js のインストール」をご参照ください。
アクセス認証情報の構成
Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ペアを作成し、その AccessKey ペアを環境変数として構成します。
構成が完了したら、IDE、コマンドラインインターフェイス、デスクトップアプリケーション、バックグラウンドサービスなどの開発環境を再起動またはリフレッシュして、最新のシステム環境変数を読み込みます。詳細については、「アクセス認証情報の構成」をご参照ください。
Linux
コマンドラインインターフェイスで次のコマンドを実行して、環境変数の設定を
~/.bashrcファイルに追加します。echo "export TABLESTORE_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.bashrc echo "export TABLESTORE_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.bashrc次のコマンドを実行して、変更を有効にします。
source ~/.bashrc次のコマンドを実行して、環境変数が有効になったかどうかを確認します。
echo $TABLESTORE_ACCESS_KEY_ID echo $TABLESTORE_ACCESS_KEY_SECRET
macOS
ターミナルで次のコマンドを実行して、デフォルトのシェルタイプを確認します。
echo $SHELLデフォルトのシェルタイプに基づいて操作を実行します。
Zsh
次のコマンドを実行して、環境変数の設定を
~/.zshrcファイルに追加します。echo "export TABLESTORE_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.zshrc echo "export TABLESTORE_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.zshrc次のコマンドを実行して、変更を有効にします。
source ~/.zshrc次のコマンドを実行して、環境変数が有効になったかどうかを確認します。
echo $TABLESTORE_ACCESS_KEY_ID echo $TABLESTORE_ACCESS_KEY_SECRET
Bash
次のコマンドを実行して、環境変数の設定を
~/.bash_profileファイルに追加します。echo "export TABLESTORE_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.bash_profile echo "export TABLESTORE_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.bash_profile次のコマンドを実行して、変更を有効にします。
source ~/.bash_profile次のコマンドを実行して、環境変数が有効になったかどうかを確認します。
echo $TABLESTORE_ACCESS_KEY_ID echo $TABLESTORE_ACCESS_KEY_SECRET
Windows
CMD
CMD で次のコマンドを実行して、環境変数を設定します。
setx TABLESTORE_ACCESS_KEY_ID "YOUR_ACCESS_KEY_ID" setx TABLESTORE_ACCESS_KEY_SECRET "YOUR_ACCESS_KEY_SECRET"CMD を再起動した後、次のコマンドを実行して、環境変数が有効になったかどうかを確認します。
echo %TABLESTORE_ACCESS_KEY_ID% echo %TABLESTORE_ACCESS_KEY_SECRET%
PowerShell
PowerShell で次のコマンドを実行します。
[Environment]::SetEnvironmentVariable("TABLESTORE_ACCESS_KEY_ID", "YOUR_ACCESS_KEY_ID", [EnvironmentVariableTarget]::User) [Environment]::SetEnvironmentVariable("TABLESTORE_ACCESS_KEY_SECRET", "YOUR_ACCESS_KEY_SECRET", [EnvironmentVariableTarget]::User)次のコマンドを実行して、環境変数が有効になったかどうかを確認します。
[Environment]::GetEnvironmentVariable("TABLESTORE_ACCESS_KEY_ID", [EnvironmentVariableTarget]::User) [Environment]::GetEnvironmentVariable("TABLESTORE_ACCESS_KEY_SECRET", [EnvironmentVariableTarget]::User)
クライアントの初期化
Tablestore にアクセスするには、クライアントを初期化し、クライアントが提供するメソッドを呼び出す必要があります。Tablestore SDK for Node.js は、Wide Column モデル用のクライアントを提供します。
Wide Column モデル
次のサンプルコードは、Tablestore クライアントを初期化し、インスタンス内のデータテーブルのリストをクエリし、Tablestore コンソールにリストを表示する方法の例を示しています。
// この例では、パスは相対パスです。必要に応じてパスを変更してください。
var TableStore = require('../index.js');
// インスタンスの名前を指定します。
var instancename = 'yourInstanceName';
// インスタンスのエンドポイントを指定します。
var endpoint = 'yourEndpoint';
// 環境変数から AccessKey ID と AccessKey シークレットを取得します。
var accessKeyId = process.env.TABLESTORE_ACCESS_KEY_ID;
var secretAccessKey = process.env.TABLESTORE_ACCESS_KEY_SECRET;
// Tablestore クライアントを初期化します。
var client = new TableStore.Client({
accessKeyId: accessKeyId,
secretAccessKey: secretAccessKey,
endpoint: endpoint,
instancename: instancename
});
// インスタンス内のデータテーブルのリストをクエリし、Tablestore コンソールにリストを表示します。
client.listTable({}, function (err, data) {
if (err) {
console.log('error:', err);
return;
}
console.log('success:', data);
});