データベースリファクタリング、移行ツールであるLiquiBaseに とって今年は多忙な一年となりそうだ。テストコンテキスト(サイト・英語)、30のリファクタリング、4つの共通リレーショナルデータベース、分散開発、自動ロールバッ クのサポートと共に行われた6月の1.0バージョンリリースの勢いに乗り、新たに二つのマイナーリリースとポイントリリースが発表された。
- DB2、Derby、Sybase、HSQL、H2、InterSystemsCache、サポートされていないデータ-ベースに対するサポート
- 周知のスキーマとマイグレーションの生成に対するデータベース比較用のデータベースdiffツール(サイト・英語)
- チェンジログのステータスを立証、またチェックする新たなコマンド
- データベースリファクタリングのサポートをEclipseに追加するためのEclipseプラグイン(サイト・英語)
Eclipseプラグインは、データベースの変化を生成、適用しながらEclipseが作動中であることを示すコンパニオンスクリーンキャスト、デモ(source)を備えている。
更に、LiquiBaseブログ(source)には下記のようなことも記載されていた。
- 進化的データベースデザイン
- Rails Active Migrationsの問題
- 崩壊しないデータベーステストの構築とデータベースアクセスレイヤーのユニットテスト
しかしながら今日では頂点にたどり着く道のりとして強固なツールと技術のベースを構築する必要がある。リファクタリング管理用のLiquiBaseとユニットテスト用のDBUnitの形で必要なツールが始まりとなるのだが、リファクタリングのIDEサポート、最良の実践方法、データベーステストのパターンカタログを含みまだまだ不十分な部分がたくさんあるのだ。
基本的な問題はRailsがシングルインクリメント整数として”データベースバージョン”を記録することである。それはただ一人のデベロッパがただ一つの ブランチにマイグレーションを付け加えている場合には問題ないのだ。しかしながら複数のデベロッパ、ブランチに追加する場合には”データベースバージョン”の生産性はマイグレーションで新たに合体したものよりも高いため、重複されたバージョンナンバーと失われたマイグレーションの問題に直面するだろう。
データの定義がスキーマと不同期になる問題を防ぐためにあなたのデータベースと共にテストデータを構築する必要がある。そうすればそれはそれが最初に生成された後に作られたデータベースリファクタリングに修正されるのだ。
LiquiBaseとJavaプロジェクト用のそのほかのデータベースツールに関する更なる情報は、今後もInfoQが流し続ける。
原文はこちらです:http://www.infoq.com/news/2007/09/liquibase-diff-plugin-more-dbs