最近のPostgreSQLの話題
最近、いくつかPostgreSQL関係の話題が挙がっていたので、メモしておきます。
NTT OSS センタが、高速データロードユーティリティ「pg_bulkload」をリリースしています。これは昨年夏、トロントで開かれた PostgreSQL Anniversary Summit で発表したものだそうです。
READMEによると以下に書かれている通り、PostgreSQLに標準で用意されているCOPYコマンドには取って代わるものではないですが、特定の条件下では使うことを一考する価値があるかもしれません。例えば、テスト環境下で整合性の取れた膨大なダミーデータを一括投入するような場面でしょうか。(テスト時には何度も膨大なデータを投入することもあると思われるので。)
大量のデータを投入するような状況では、細かなチェックは省いてでもいいからとにかく高速にデータをロードしたいという場面があります。たとえば、あるデータベースに格納されている情報を別のデータベースへ移送するような状況や、これから投入しようとするデータの整合性がすでに別のツールで保証されているような状況がこれにあたります。 このような状況を想定して pg_bulkload は開発されました。 したがって、整合性を確認できていないデータのロードに対して、 pg_bulkload の使用は適していません。この場合にはPostgreSQLがデータロードのためにもともと用意されている COPY コマンドの利用をお勧めします。 注意点、使用方法を十分に理解した上で、pg_bulkload をご利用ください。
個人的にはどうしても必要だという場面がないので、COPYコマンド(COPY句)で済ませちゃいますが。参考までにといったところでしょうか。
Sigresについては、/.Jにてタレコミが書かれているので、そちらを参考にして下さい。正直なところ使う気には全くならないです。
あとPostgreSQL8.2環境で特定の条件下でVACUUM FULLを実行した場合にエラーが表示されるそうです。詳細は、石井達夫氏のブログに詳細に書かれているので、参照して下さい。