4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

tblsでBigQueryのデータセットのドキュメントを生成する

Posted at

本エントリでは、tblsでBigQueryのデータセットのドキュメントを生成するところまでを紹介します。

"既にGCPでプロジェクトとデータセットは作成済み" というところから説明したいと思います。

ただ、今回はGCPが公開しているプロジェクト bigquery-public-data と、そのデータセットの1つ census_bureau_international を利用しますので、必ずしもデータセットを用意する必要はありません。

1. サービスアカウントの作成とキーファイルのダウンロード

tblsでBigQueryのデータセットにアクセスするときは、設定ファイル tbls.yml で、以下のようにDSNを指定します。

# tbls.yml
dsn: bq://bigquery-public-data/census_bureau_international?creds=/path/to/google_application_credentials.json

まず上記の ?creds=/path/to/google_application_credentials.json のクレデンシャルファイル google_application_credentials.json を作成します。

tbls-bq-1.png

まず、コンソールの「IAMと管理 > サービスアカウント」で「サービスアカウントを作成」をクリックします

tbls-bq-2.png

サービスアカウントの詳細を入力します

tbls-bq-3.png

サービスアカウントの権限は「BigQueryメタデータ閲覧者」で良いです。
(ちなみに、詳しい人用に必要なPermissionを挙げると bigquery.datasets.get bigquery.tables.get bigquery.tables.list の3つです)

tbls-bq-4.png

「キーを作成」をクリックします。

tbls-bq-5.png

キーのタイプは「JSON」です。

で、ダウンロードされたJSONを、今回は

google_application_credentials.json にファイル名を変更して /path/to/google_application_credentials.json に置いた」

ということにしましょう。

2. tblsのインストール

MacユーザはHomebrewでインストールするのがいいでしょう。

$ brew install k1LoW/tap/tbls

その他のOSを使っている方は、tblsのREADME#installを見て適切なインストール方法を選択してください。

3. tbls.yml の作成

任意のディレクトリでtbls.ymlファイルを作成します。

# tbls.yml
dsn: bq://bigquery-public-data/census_bureau_international?creds=/path/to/google_application_credentials.json

4. ドキュメントの作成

ドキュメントを作成します。tbls.ymlがあるディレクトリで以下のコマンドを実行してください。

$ tbls doc -f

dbdoc ディレクトリが作成されて、その中にMarkdown形式でドキュメントが生成されていると思います。

GitHubのリポジトリにコミットしてみると、ちょうどこんな感じです

おまけ. Excelのテーブル定義書の出力

tbls.ymlがあるディレクトリで以下のコマンドを実行してください。

$ tbls out -t xlsx -o tbls.xlsx
スクリーンショット 2020-05-21 1.32.51.png

出力されますね。

ColumnsName を日本語にしたい場合はtbls.ymlのdict: の設定を追加してみてください

以上、tblsでのBigQueryのデータセットのドキュメント生成の紹介でした。

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?