cbt は、Cloud Bigtable で基本的な操作を実行するためのツールです。
使用方法:
cbt [options] command [arguments]
次のコマンドがあります。
count Count rows in a table
createinstance Create an instance with an initial cluster
createcluster Create a cluster in the configured instance
createfamily Create a column family
createtable Create a table
updatecluster Update a cluster in the configured instance
deleteinstance Delete an instance
deletecluster Delete a cluster from the configured instance
deletecolumn Delete all cells in a column
deletefamily Delete a column family
deleterow Delete a row
deletetable Delete a table
doc Print godoc-suitable documentation for cbt
help Print help text
listinstances List instances in a project
listclusters List clusters in an instance
lookup Read from a single row
ls List tables and column families
mddoc Print documentation for cbt in Markdown format
read Read rows
set Set value of a cell
setgcpolicy Set the GC policy for a column family
waitforreplication Block until all the completed writes have been replicated to all the clusters
version Print the current cbt version
createappprofile Creates app profile for an instance
getappprofile Reads app profile for an instance
listappprofile Lists app profile for an instance
updateappprofile Updates app profile for an instance
deleteappprofile Deletes app profile for an instance
コマンドの詳細については、cbt help
次のオプションがあります。
-project string
project ID, if unset uses gcloud configured project
-instance string
Cloud Bigtable instance
-creds string
if set, use application credentials in this file
現在、Cloud Bigtable のほとんどのお客様はアルファ版の機能をご利用いただけません。この機能は下位互換性のない方法で変更される可能性があり、本番環境での使用は推奨されません。また、サービスレベル契約(SLA)と非推奨ポリシーの適用対象ではありません。
利便性のために、フラグ -project、-instance、-creds、-admin-endpoint、-data-endpoint の値は以下の形式で ~/.cbtrc に指定できます。
project = my-project-123
instance = my-instance
creds = path-to-account-key.json
admin-endpoint = hostname:port
data-endpoint = hostname:port
どの値も省略可能です。また、いずれもフラグを使用してオーバーライドできます。
テーブル内の行数を数える
cbt count <table>
最初のクラスタでインスタンスを作成する
cbt createinstance <instance-id> <display-name> <cluster-id> <zone> <num-nodes> <storage type>
instance-id Permanent, unique id for the instance
display-name Description of the instance
cluster-id Permanent, unique id for the cluster in the instance
zone The zone in which to create the cluster
num-nodes The number of nodes to create
storage-type SSD or HDD
構成されたクラスタでインスタンスを作成する
cbt createcluster <cluster-id> <zone> <num-nodes> <storage type>
cluster-id Permanent, unique id for the cluster in the instance
zone The zone in which to create the cluster
num-nodes The number of nodes to create
storage-type SSD or HDD
列ファミリーを作成する
cbt createfamily <table> <family>
テーブルを作成する
cbt createtable <table> [families=family[:(maxage=<d> | maxversions=<n>)],...] [splits=split,...]
families: Column families and their associated GC policies. See "setgcpolicy".
Example: families=family1:maxage=1w,family2:maxversions=1
splits: Row key to be used to initially split the table
構成されたインスタンス内のクラスタを更新する
cbt updatecluster <cluster-id> [num-nodes=num-nodes]
cluster-id Permanent, unique id for the cluster in the instance
num-nodes The number of nodes to update to
インスタンスを削除する
cbt deleteinstance <instance>
構成されたインスタンスからクラスタを削除する
cbt deletecluster <cluster>
列内のすべてのセルを削除する
cbt deletecolumn <table> <row> <family> <column> [app-profile=<app profile id>]
app-profile=<app profile id> The app profile id to use for the request
列ファミリーを削除する
cbt deletefamily <table> <family>
行を削除する
cbt deleterow <table> <row> [app-profile=<app profile id>]
app-profile=<app profile id> The app profile id to use for the request
テーブルを削除する
cbt deletetable <table>
godoc に適した cbt のドキュメントを出力する
cbt doc
ヘルプテキストを出力する
cbt help [command]
プロジェクトのインスタンスを一覧表示する
cbt listinstances
インスタンス内のクラスタを一覧表示する
cbt listclusters
単一行から読み取る
cbt lookup <table> <row> [columns=[family]:[qualifier],...] [cells-per-column=<n>] [app-profile=<app profile id>]
columns=[family]:[qualifier],... Read only these columns, comma-separated
cells-per-column=<n> Read only this many cells per column
app-profile=<app profile id> The app profile id to use for the request
テーブルと列ファミリーを一覧表示する
cbt ls List tables
cbt ls <table> List column families in <table>
cbt のドキュメントを Markdown 形式で出力する
cbt mddoc
複数行を読み取る
cbt read <table> [start=<row>] [end=<row>] [prefix=<prefix>] [regex=<regex>] [columns=[family]:[qualifier],...] [count=<n>] [cells-per-column=<n>] [app-profile=<app profile id>]
start=<row> Start reading at this row
end=<row> Stop reading before this row
prefix=<prefix> Read rows with this prefix
regex=<regex> Read rows with keys matching this regex
columns=[family]:[qualifier],... Read only these columns, comma-separated
count=<n> Read only this many rows
cells-per-column=<n> Read only this many cells per column
app-profile=<app profile id> The app profile id to use for the request
セルの値を設定する
cbt set <table> <row> [app-profile=<app profile id>] family:column=val[@ts] ...
app-profile=<app profile id> The app profile id to use for the request
family:column=val[@ts] may be repeated to set multiple cells.
ts is an optional integer timestamp.
If it cannot be parsed, the `@ts` part will be
interpreted as part of the value.
列ファミリーの GC ポリシーを設定する
cbt setgcpolicy <table> <family> ( maxage=<d> | maxversions=<n> | never)
maxage=<d> Maximum timestamp age to preserve (e.g. "1h", "4d")
maxversions=<n> Maximum number of versions to preserve
完了しているすべての書き込みがすべてのクラスタにレプリケートされるまでブロックする
cbt waitforreplication <table>
table The name of the table to create
現在の cbt バージョンを印刷する
cbt version
インスタンスにアプリ プロファイルを作成する
cbt createappprofile <instance-id> <profile-id> <description> <etag> <routing-policy>
[cluster-id=<cluster-id>] [allow-transactional-writes=<allow-transactional-writes>]
set multi_cluster_routing_use_any or single_cluster_routing as possible values for routing policy
provide cluster-id=clusterID and allow-transactional-writes=true or false in case of single_cluster_routing
インスタンスのアプリ プロファイルを読み取る
cbt getappprofile <instance-id> <profile-id>
インスタンスのアプリ プロファイルを一覧表示する
cbt listappprofile <instance-id>
インスタンスのアプリ プロファイルを更新する
cbt updateappprofile <instance-id> <profile-id> <description> <routing-policy>[cluster-id=<cluster-id>] [allow-transactional-writes=<allow-transactional-writes>]
set multi_cluster_routing_use_any or single_cluster_routing as possible values for routing policy
provide cluster-id=clusterID and allow-transactional-writes=true or false in case of single_cluster_routing
インスタンスのアプリ プロファイルを削除する
cbt deleteappprofile <instance-id> <profile-id>