kzhirataです。蒸し暑い日が続いていますね。 最近、社内で「継続的デリバリー」の読書会をやっています。 AWSなど簡単・迅速にインフラを調達できる時代になり、デプロイメントパイプラインを早い段階で構築することができる環境が整ったんだなぁと改めて実感します。 デプロイメントパイプラインを作るために欠かせないことの1つが、DBの構成管理です。 以前DBの構成管理をしていなかったために、リリース作業自体に時間がかかったり、リリースバグを出したことのある人も多いのではないでしょうか。(私も経験してます...) 今回は、JavaのDBマイグレーションツールを2つ試してみました。 FlywayとLiquibaseです。すでに、ここにFlywayとLiquibaseの比較記事がありますが、自分の感想を書きます。 1. インストール・環境構築について FlywayとLiquibaseもインストールの
http://www.eclemma.org/jacoco/ EclEmmaで使っているカバレッジ測定用ライブラリ(というかエンジン?)。EclEmmaはEclipseプラグインだけど、JaCoCoはライブラリなのでAntやMavenからも利用できる。 カバレッジ測定といえばCoberturaが有名どころなんで「何も今さら」な気もするけど、JaCoCoはon the flyでカバレッジの測定ができるのがうれしい(instrumentメンドイんだもの)。on the flyと言えばEMMAでもできるのだけど、用意してあるantのタスクはJaCoCoのほうが使いやすかった。 詳しくは公式ドキュメントを参照するか、githubにサンプルプロジェクト作ったので、そっちを見て欲しい。 → GitHub - masanobuimai/ant-sample-project at 2f1300b1134f
SQL4GGAE(Google App Engine)上で稼動するSQLデータベース SQL4Gとは? SQL Database for GAEの略称です。 オープンソースのJavaデータベース「H2 Database Engine」をリトルソフトが独自にエンハンスし、GAEが用意しているBigTableと呼ばれる分散キー・バリュー型データストアへ内容を書き込めるようにしたものです。 いまさらRDB? GAEのデータストアはJavaの場合 JDO、JPA といったインターフェースからアクセスすることが出来ますが、JDO、JPAを駆使してGAEのデータストアを自由自在に扱うことは、今までRDBMSに慣れ親しんだ開発者にとっては、少々敷居の高いものになります。 そのため、RDBMSに相当する環境が存在しないGAEは、現状において「クラウドは魅力的だけどデータ周りに難あり」とお考えになる方が多数
JBoss自体にはJDBCログを出力する機能がないので、外部ライブラリを導入する。log4jdbcというライブラリが簡単。動作はlog4jdbc 1.2 beta 2というバージョンで確認した。 jarをlog4jdbcのサイトからダウンロードして$JBOSS_HOME/common/lib/ディレクトリに置く。依存ライブラリとしてslf4jが必要だがJBossに最初から含まれているので無視して大丈夫だ問題ない。$JBOSS_HOME/server/$PROFILE/deploy/hsqldb-ds.xmlを開いて以下のようにとをちょこっと修正して完了。あとはconf/jboss-log4j.xmlでDEBUGログの出力が有効であればログがもりもり出るようになる。必要があればいくつか出力レベルを絞ったりしておしまい。 <connection-url>jdbc:log4jdbc:hsqldb
さらに続きである。これで完結である (ことを願う…)。 まずは観測から。 何とかなりそう! ヽ(´ー`)ノ PostgreSQL で大きなバイナリを扱うには、今まで試した BYTEA 型を使用するほかに OID 型を使用する方法がある。BYTEA 型がバイナリそのものをテーブルに格納するのに対し、OID 型はオブジェクトの ID のみを格納し、実体のバイナリはどこか別のところに保存される (PostgreSQL の場合はシステムカタログのどこかに入るらしい)。 元々 BLOB がロケーション ID やオフセット、長さなどを使って巨大なバイナリを扱うための手段だということを考えれば、むしろこの OID 型を BLOB と呼ぶ方が自然だ (ちなみに商用データベースの方は実体をテーブルスペース外の別ファイルにするか VARBINARY と同様にテーブル内に入れるかなど、きめ細かな構成を選択できる
SQLiteデータベースは、Cで書かれた軽量データベースです。「軽量」というのは2つの意味があって、全体のコード数が10万行程度という点(PostgreSQLは100万行に近づいています)と、データベースを保存するファイルが1つに納まっているのがSQLiteの特徴です。他のシステムだと、複数のデータベース用のファイルがあって管理が面倒なのですが、SQLiteのデータベースはファイル1つで、しかもOS互換フォーマットで保存されているので、簡単にOSをまたがったデータベースのコピーを作成することができます。 そもそもリレーショナルデータベース(日本語では関係データベースと訳すことが多いです)って何?という方は、初心者向けに用意した以下の講義資料を参考にしてください。 Javaでデータベースアプリケーションを作成するには、JDBC (Java Database Connection)というAPI
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く