Google Cloud Spanner のハンズオンです。
https://spanner.gcpug.jp/ を見て、GCPUG Shared Spannerを使えるように権限を貰います。 手元で実行する場合はserviceAccountsは空でかまいません。 gcpugSlackIdが必須になってますが、とりあえず、僕が適当に知ってるので、GopherDojo SlackのIDでOKです。
とりあえず、Cloud Consoleから既存のTableに適当にQueryを実行します。
自分のDatabaseを作成します。 SpannerはDatabase作成時にDDLも実行した方が早いです。
GoからSpannerを触ってみましょう。
Localから実行する場合は gcloud auth application-default login
を実行して、Application Default Credentialとして、自分のGoogleアカウントが利用されるようにしておきます。
gcloud auth application-default login
Spannerからデータを取得する方法はいくつかあるので、Goから試してみます。
Spanner固有の機能であるInterleave Tableを試してみます。
分散DBは必ずしも同じRowへの更新が早くないため、Counterのようなものを実装する場合、Shardingをしましょう。
GCPUG Shard Spannerから自分のDBを削除しておしまいです。
gcloud spanner databases delete {your slack id} --project gcpug-public-spanner