mysql workbench をモデリングツールとして使ってみた
TRANSCRIPT
自己紹介
2
• 中村範夫(なかむらのりお)
• 15年以上システム開発に従事
• 共通チームで方式設計や開発DBAの経験が長い
• 現職:データベースコンサルタント
• 現在、M/FからオープンソースDBへの移行案件
6
• モデル描画(論理モデリング)
• ボトムアップ取り込み
• データ項目定義管理
• モデル管理(論理/物理)
• ドキュメント出力
• 物理DBのフォワード/リバースエンジニアリング
• (テストデータの生成)
モデリングツールに求められる主な機能
参考:「独習 データベース設計」 真野 正 著
9
ボトムアップ取り込み
MySQL Workbenchに該当機能はなし
<参考> ER/Studio ER/Worksheet
• 規模の大きいシステムでは扱うエンティティは数百以上、データ項目は数千以上
• 論理データモデルをゼロから作成することは、とても非効率
• 既存の資産(Excel/CSVその他)からモデリングのメタデータとして取り込む機能を有している商用モデリングツールは多い
10
データ項目定義管理
<参考> Object Browser ER ドメイン管理、オブジェクト名一括置換
• モデリングの基本はネーミング
• プロジェクトで統一されたエンティティ名、項目名は品質、生産性に大きく影響する
• ドメイン管理、項目名をエンティティ横断で一括置換、型変換、桁数変換等
MySQL Workbenchに該当機能はなし
11
• モデル管理(論理/物理)
• 論理モデル/物理モデル 二面管理機能はなし
• プロジェクトフェーズ毎に、論理モデル・物理モデルを管理していく(?)
• 論理モデルから物理モデルへの変換が困難で、現状二重管理するしかない。
<論理モデル> <物理モデル>
12
• モデル管理(論理/物理)
<参考>A5:SQL Mk-2 MySQL Workbench の現状:おしい…
コメントとして論理名を
保持することは可能
コメントをダイアグラム上
に表示することさえできれば..
13
ドキュメント出力
PDF出力した例
• PDF出力は秀逸 フォンの埋め込みで検索可能(File – Export – Export single page PDF)
• SVG・PNG形式にも出力可能
• よくあるテーブル定義書的なExcel形式の出力はない
15
物理DBのフォワード/リバースエンジニアリング
• 必要な基本機能は備えている
• フォワードは、外部キーの作成/非作成、インデックスを別DDLにする等、きめ細かな設定が可能
• リバースも外部キーを元にリレーションまで完璧にモデルに再現することが可能
<フォワードエンジニアリング> <リバースエンジニアリング>
外部キー、インデックスのDDLに関する細かい設定が可能 日本語のコメントも問題なし
リレーション、日本語コメントまで含めて完璧にリバース
17
機 能 評 価 コメント
モデル描画(論理モデリング) ○操作性は軽くストレスを感じない。リレーションの自動判断(依存・非依存)やレイアウトの自由度も高い。レイヤーを駆使すれば、サブモデルの表現も容易にできる。
ボトムアップ取り込み ×既存の物理DBが存在する環境ではテーブル情報をMySQLに移行しリバースで対応できるが、論理モデルを一から作るとなると規模にもよるが、相当厳しい。
データ項目定義管理 ×代替手段としては、MySQL上でのメタデータをリスト化することで一覧の確認はできるかも。ただし、規模が大きくなれば厳しい。
モデル管理(論理/物理) △論理・物理の二面管理は不可。二重管理を許容するしか現状手がない。コメント情報をダイアグラム上に表現できる機能さえ追加しれもらえれば、非常にうれしい。
ドキュメント出力 ○PDF出力は、モデルをそのままPDFにすることができ秀逸。Excel
ベースにできればなお良くなると思う。
物理DBのフォワード/リバースエンジニアリング ◎
MySQL専用というだけあって、フォワード/リバース共に完璧な再現性を見せる。すばらしい。
(テストデータの生成) ×現状は他のツールで代替か、SQLでがんばる。
まとめ(機能評価)