Node.js の Hello World
このコードサンプルは、Node.js で動作する「Hello World」アプリケーションです。このサンプルでは、次のタスクを行う方法を説明します。
- 認証を設定する
- Bigtable インスタンスに接続する
- 新しいテーブルを作成する
- テーブルにデータを書き込む
- そのデータを読み取る
- テーブルを削除する
認証を設定する
ローカル開発環境でこのページの Node.js サンプルを使用するには、gcloud CLI をインストールして 初期化し、ユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定します。
-
Google Cloud CLI をインストールします。
-
外部 ID プロバイダ(IdP)を使用している場合は、まず フェデレーション ID を使用して gcloud CLI にログインする必要があります。
-
ローカルシェルを使用している場合は、ユーザー アカウントのローカル認証情報を作成します。
gcloud auth application-default login
Cloud Shell を使用している場合は、この操作を行う必要はありません。
認証エラーが返され、外部 ID プロバイダ (IdP)を使用している場合は、フェデレーション ID を使用して gcloud CLI にログインしていることを確認します。
詳細については、 ローカル開発環境の認証を設定するをご覧ください。
サンプルの実行
このコードサンプルでは、Node.js 用 Google Cloud クライアント ライブラリの Bigtable パッケージを使用して Bigtable と通信します。
このサンプル プログラムを実行するには、GitHub でのサンプルの手順に沿って操作してください。
Bigtable での Cloud クライアント ライブラリの使用
このサンプル アプリケーションは Bigtable に接続して、いくつかの単純なオペレーションを行います。
必要なクライアント ライブラリ
このサンプルでは、Bigtable クラスを提供する @google-cloud/bigtable モジュールが必要です。
Bigtable への接続
Bigtable に接続するには、新しい Bigtable オブジェクトを作成します。次に、その instance() メソッドを呼び出して、Bigtable インスタンスを表す Instance オブジェクトを取得します。
テーブルの作成
インスタンスの table() メソッドを呼び出して、「Hello World」というあいさつ用のテーブルを表す Table オブジェクトを取得します。テーブルが存在しない場合は、テーブルの create() メソッドを呼び出して、各値の 1 つのバージョンを保持する単一の列ファミリーを持つテーブルを作成します。
テーブルへの行の書き込み
テーブルの新しい行を作成するために、あいさつの文字列の配列を使用します。配列の map() メソッドを呼び出して、行を表すオブジェクトの新しい配列を作成します。続いて、テーブルの insert() メソッドを呼び出して、テーブルに行を追加します。
フィルタの作成
書き込んだデータを読み取る前に、Bigtable によって返されるデータを制限するためのフィルタを作成します。このフィルタは、列に古いセルが含まれていても、各列の最新のセルのみを返すように Bigtable に指示します。
行キーによる行の読み取り
テーブルの row() メソッドを呼び出して、特定の行キーを持つ行への参照を取得します。次に、行の get() メソッドを呼び出してフィルタを渡し、その行の各値の 1 つのバージョンを取得します。
すべてのテーブル行のスキャン
テーブルのすべての行を取得するには、テーブルの getRows() メソッドを呼び出して、フィルタを渡します。フィルタを渡しているため、Bigtable は各値の 1 つのバージョンのみを返します。
テーブルの削除
テーブルの delete() メソッドを使用してテーブルを削除します。
すべてを組み合わせる
コメントなしの完全なコードサンプルを以下に示します。