DB設計の共有で疲弊してない?dbdocsのすゝめ
DB設計の管理や作成に疲弊してません?こんにちは。ukmshiです。今日はDB設計の共有と管理に便利なツール、dbdocsについてお話しします。dbdocsを使えば、設計の可視化や共有がめちゃくちゃ簡単になるんです。今回は、その魅力と利点、そして実際の使い方について詳しく説明します。
dbdocsとは?
dbdocsは、コードベース(DBML)でDB設計を管理し、URLで共有することが可能なツールです。データベースのテーブル構造や関係性を可視化し、それを他のチームメンバーやステークホルダーと手軽に共有することができます。
DBMLについてはこちらを参考に
dbdocsの利点
dbdocsの利点について詳しく見ていきましょう。
-
無料
まず最初に、dbdocsは基本無料です。コストを気にせずに利用できるので、チームの誰もがアクセス可能です。 -
コードベースで管理
dbdocsはコードベースでDB設計を管理します。これにより、設計の変更履歴を追跡することが簡単になり、バージョン管理にも対応できます。 -
共有が楽
設計図を共有するためには、ただURLをコピー&ペーストするだけ。それだけで、他のチームメンバーや関係者と設計を簡単に共有することができます。
また、PDFやPNGへの出力も可能です! -
閲覧制限
パスワード設定により、設計図の閲覧を制限することも可能。セキュリティを確保しつつ、必要な人だけにアクセスを許可することができます。 -
可視化されたテーブル間の関係
dbdocsでは、テーブル間のリレーションシップがビジュアル化されます。これにより、一目でデータベースの構造を理解することができます。テーブルを絞って、関連するものだけを表示することも可能です。 -
Enumに対応
Enumの設計もサポートしています。これにより、Enumの定義を分かりやすく示すことが可能です。外のツールでは、対応してなかったするので、これまじで便利。 -
コメントがDM対応
テーブルやカラムのコメントがDM対応してます。何故この設計をしたのかを書いておいたり出来るので、後から思い出すのが楽だったり、DMのおかげで見やすくなるので最高です。 -
トークンが使える
トークンが使えるので、CI/CDに載せて、ドキュメントの更新を自動化出来ます。
欠点は?
これ以上にいいもの、何があるんですか?
逆にいいものがあれば教えてください!
dbdocsの使い方
それでは、dbdocsのインストールと使い方について見ていきましょう。
- dbdocsのインストール
まずはnpmを使ってdbdocsをインストールします。
$ npm install -g dbdocs
- CLIでのアカウント作成 or ログイン
次にCLIを使用してdbdocsにログインします。メールアドレスでログインするとOTPコードが送られてきます。アカウントの新規作成も同じです。
$ dbdocs login
? Choose a login method: Email
? Your email: example@example.com
✔ Request email authentication
? Please input OTP code sent to the email:
- ドキュメントの新規作成・更新
以下のコマンドを使用してドキュメントを新規作成・更新します。
$ dbdocs build [your/dbml/path]
✔ Parsing file content
⚠ Password is not set for 'sample'
✔ Done. Visit: https://dbdocs.io/example/sample
生成されたURLを見るとDB設計が見れます!
dbdocsのその他の使い方
- ドキュメントへパスワードの設定
ログインした状態で以下のコマンドを実行すると、ドキュメントにパスワードを設定できます。
$ dbdocs password
? Project name: sample
? Enter password: [hidden]
? Re-enter password: [hidden]
✔ Password is set for 'sample'.
- Tokenの取得
Tokenを発行すると、毎回ログインせずにdbdocsを更新することが可能になります。以下のコマンドでTokenを取得し、環境変数dbdocs_TOKENに設定します。
$ dbdocs token -g
Gemの紹介
最後に、RailsユーザへGemの紹介です。
ActiveRecord上から簡単にDBMLを出力するGemを作成したので、ぜひ使ってみてください!
Gemの紹介はこちら
Discussion