[pgsql-jp: 33119] Re: PostgreSQL カンファレンスお礼および MySQL のデータが壊れる件

TANIDA Yutaka tanida @ sra.co.jp
2004年 6月 7日 (月) 14:37:38 JST


谷田です。

On Mon, 7 Jun 2004 13:33:05 +0900 (JST)
EBIHARA Yuichiro <uiebi @ yahoo.co.jp> wrote:


> スペック的にはむしろMySQL(InnoDB)のほうが信頼性が高いと評価できそうなもん
> ですけどね。
> メディアリカバリの分だけ。

メディアリカバリというのは、いわゆるアーカイブログ相当の機能でしょうか?

正直言って、PITRについて学べば学ぶほど、「金に糸目はつけないから、とにか
くデータを救え」的な技術であると思うようになってきました。これは確かに重
要な機能ではありますが、正直言って、PostgreSQLやMySQLを手軽に使いたいよ
うな人に、ここまでの機能の必要はあるんだろうかといつも思ってしまいます。
必要としている人がいるのも確かなのですが。

#ミニバンの3列目シート、みたいな。

> エンタープライズ用途を考えるときには、PostgreSQLとMySQLの比較はInnoDBを前
> 提に語るべきだと思います。MyISAMはシステム要件によっては一考の価値ありの
> 便利なオプション、くらいの位置づけで。

MySQLを語る上で一番混乱が大きいのはここですよね。MySQL(MyISAM)なのか、
MySQL(InnoDB)なのか、で大きく挙動が違ってしまいます。石井さんの言う「壊
れる」やよくMySQLそのものの最大の長所として言われている「速い」は、いず
れもMySQL(MyISAM)の特徴であるわけです。

# InnoDBが遅いかどうかは知りません。

これは個人的な見解ですが、ことPostgreSQL vs InnoDBの比較で、PostgreSQLが
圧倒的に優れていると思うのは、デフォルトのpg_dumpがホットバックアップに
対応している(InnoDBのは有償)ということだと思います。

他にも、InnoDBはロールバックセグメント式のMVCCを実装しているようですが、
これは某と同じくやはりセグメントを使い果たしてしまうとロールバックできな
くなるのでしょうか?もしそうだとすると(違っていたらごめんなさい)ディス
クがある限りトランザクション機構を維持できるというのは、PostgreSQLの定期
的なvacuumが必要だという欠点を補ってあまりある利点だと思いますね。

いずれにしても、PostgreSQLは他のDBに比べトランザクションをまじめに考え続
けているなぁ、という気はします。もちろん、これだって必要のない人は多いの
ですが、そういう人はPostgreSQLを使うべきではない、という明確な線引きであ
る、といえると思います。

-- 
TANIDA Yutaka <tanida @ sra.co.jp>




pgsql-jp メーリングリストの案内