Python の Hello World
この例は、Python で記述された「Hello World」アプリケーションで、次の処理を行う方法を示します。
- 認証を設定する。
- Bigtable インスタンスに接続する
- 新しいテーブルを作成する
- テーブルにデータを書き込む
- そのデータを読み取る
- テーブルを削除する
Bigtable 用の Python クライアント ライブラリには、asyncio
と同期 API の 2 つの API があります。アプリケーションが非同期の場合は、asyncio
を使用します。
認証の設定
ローカル開発環境でこのページの Python サンプルを使用するには、gcloud CLI をインストールして初期化し、ユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定します。
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
詳細については Set up authentication for a local development environment をご覧ください。
サンプルの実行
この例では、Python 用 Cloud クライアント ライブラリの Bigtable パッケージを使用して、Bigtable と通信します。Bigtable パッケージは新しいアプリケーションに最適です。既存の HBase ワークロードを Bigtable に移動する必要がある場合、HappyBase パッケージを使用した「hello world」の例をご覧ください。
このサンプル プログラムを実行するには、GitHub でのサンプルの手順に沿って操作してください。
Bigtable で Cloud クライアント ライブラリを使用する
このサンプル アプリケーションは Bigtable に接続して、いくつかのオペレーションを行います。
クライアント ライブラリをインストールしてインポートする
PIP を使用して、必要な Python パッケージを virtualenv 環境にインストールします。サンプルには、必要なパッケージを定義する要件ファイルが含まれています。
モジュールをインポートします。
Asyncio
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
同期
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Bigtable に接続する
bigtable.Client
を使用して Bigtable に接続します。
Asyncio
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
同期
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
テーブルを作成する
Instance.table()
を使用して、テーブル オブジェクトをインスタンス化します。列ファミリーを作成してそのガベージ コレクション ポリシーを設定してから、列ファミリーを Table.create()
に渡してテーブルを作成します。
テーブルに行を書き込む
グリーティング文字列のリストをループ処理して、テーブルに新しい行をいくつか作成します。それぞれのイテレーションの中で、Table.row()
を使用して 1 行を定義し、それに行キーを割り当てます。Row.set_cell()
を呼び出して現在のセルの値を設定してから、新しい行を行の配列に追加します。最後に、Table.mutate_rows()
を呼び出して行をテーブルに追加します。
Asyncio
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
同期
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
フィルタを作成
書き込んだデータを読み取る前に、row_filters.CellsColumnLimitFilter()
を使用して、Bigtable によって返されるデータを制限するためのフィルタを作成します。このフィルタは、ガベージ コレクション中にまだ削除されていない古いセルがテーブルに含まれていても、各列の最新のセルのみを返すように Bigtable に指示します。
Asyncio
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
同期
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
行キーによって行を読み取る
テーブルの Table.read_row()
メソッドを呼び出して、特定の行キーが含まれる行の参照を取得し、キーとフィルタを渡し、その行の各値の 1 つのバージョンを取得します。
Asyncio
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
同期
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
すべてのテーブル行をスキャンする
Table.read_rows()
を使用して、テーブルから特定の範囲の行を読み取ります。
Asyncio
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
同期
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
テーブルを削除する
Table.delete()
を使用して、テーブルを削除します。
すべてをまとめる
コメントなしの例を以下に示します。
Asyncio
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
同期
Bigtable 用のクライアント ライブラリをインストールして使用する方法については、Bigtable クライアント ライブラリをご覧ください。
Bigtable で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。