Database Watch 8月版 Page 2/2
PostgreSQLとMySQLが急接近しているらしい
加山恵美
2005/8/11
■PostgreSQLとMySQLで異文化交流
7月29日に日本PostgreSQLユーザ会(JPUG)でPostgreSQLのしくみ分科会の勉強会がありました。2部構成となっており、前半が「PostgreSQLチューニング実習」、後半が「MySQLセミナー」でした。
前半のチューニングはPostgreSQL 8.0をベースに、どのパラメータについてどのような点に気を付けてチューニングすべきか、1つ1つ解説と実証がありました。PostgreSQLがインストールされただけのデフォルトの状態ではロースペックなマシンでも稼働できるような設定になっているため、ハイスペックのマシンで稼働させるとリソースを有効に使えないそうです。リソースを有効活用するためにはスペックに適したパラメータに変更することが不可欠だとアドバイスがありました。今回はチューニングすべき項目として共有バッファ、トランザクションバッファ、ライタープロセス、テーブルスペース、チェックポイントセグメント数、ファイルシステムの調整などが取り上げられました。
当日の実証で最も効果が高かったのはチェックポイントセグメント数の変更でした。チェックポイントとはトランザクションログが一定のセグメント数に達すると発生する処理で、チェックポイントセグメント数を増やせばその処理が発生する頻度が下がり、結果的にパフォーマンスを向上させることができます。変更のポイントはディスクの空き容量の範囲で最大にするのが効果的だそうです。ただし、大きくし過ぎるとシステムがダウンしたときのリスクが大きくなることも気を付けなくてはなりません。この値を調整することはPostgreSQLのパフォーマンスチューニングでは常とう手段であり、実証でもベンチマーク結果にしておよそ4倍のパフォーマンス向上が見られました。
現実的には環境や利用状況、何を優先するかに応じて対策も結果も変化してきます。実証ではチューニングによりパフォーマンスが落ちてしまう現象も起き、参加者が苦笑いする場面も見られました。パラメータを変更するにしても組み合わせにより効果を高めるものも、逆に下げてしまうものもあると教訓を残しました。話を聞きながらパフォーマンスチューニングにはデータベースが処理する仕組みやリソースの使い方を熟知することが確実な道だとあらためて感じました。JPUGでは8月に夏合宿があり、パフォーマンスチューニング大会も実施されるようです。
■ライバルを知ることは相互理解の第一歩
後半のMySQL解説は別のデータベースの仕組みを知ることであらためてPostgreSQLの理解を深めようということで、日本MySQLユーザ会(MyNA)から専門家を招いて解説を聞くことになりました。JPUGの勉強会でMySQLの概要を解説をするのは初めてだそうです。
そのMySQLの概要では、まずは歴史、特徴、現状のバージョンと将来の展望など簡単なおさらいから始まりました。そこからさらに深くMySQLの仕組みへと解説が進みました。「MySQLではvacuumはありません」など随所で違いを比較しました。特に参加者が関心を示したのはロック競合時の挙動の違いでした。参加者は挙動に差が出るケースを見て驚きつつも「でもそれもありだよね」と新鮮な発見があったようです。興味深いのはその違いを探ると、例えばMySQL側では「テーブルロックはしない」など設計者の理念にたどりつくことです。今回の試みはPostgreSQL側、MySQL側双方にとって互いと自分を理解するいいきっかけになったようです。
ところでパフォーマンスチューニングといえば、MySQLの本家サイトでもオンラインWebセミナーで5つのヒントが提案されています。必要事項を記入すれば内容をダウンロードできるようになっています。またJPUGの勉強会と同日の7月29日にはMySQLの次期バージョンの最新ベータ版「5.0.10」がリリースされました。勉強会でMySQLを解説したMyNAの人によると「いまからMySQLを検討するなら現行バージョンの4.1よりも次期の5.0がお薦め」だそうです。その理由はいつかまた詳しく追ってみたいと思います。
ではまた来月、お会いしましょう。
2/2 |
Index | |
連載 Database Watch 8月版 PostgreSQLとMySQLが急接近しているらしい |
|
Page 1 ・商用RDBMS、次期バージョンをめぐる競争が熱い“夏の陣” ・SQL Server 2005は高可用性で勝負! ・得意のベンチマークで迎え撃つオラクル |
|
Page
2 ・PostgreSQLとMySQLで異文化交流 ・ライバルを知ることは相互理解の第一歩 |
Database Watch |
- Oracleライセンス「SE2」検証 CPUスレッド数制限はどんな仕組みで制御されるのか (2017/7/26)
データベース管理システムの運用でトラブルが発生したらどうするか。DBサポートスペシャリストが現場目線の解決Tipsをお届けします。今回は、Oracle SE2の「CPUスレッド数制限」がどんな仕組みで行われるのかを検証します - ドメイン参加後、SQL Serverが起動しなくなった (2017/7/24)
本連載では、「SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は、「ドメイン参加後にSQL Serverが起動しなくなった場合の対処方法」を解説します - さらに高度なSQL実行計画の取得」のために理解しておくべきこと (2017/7/21)
日本オラクルのデータベーススペシャリストが「DBAがすぐ実践できる即効テクニック」を紹介する本連載。今回は「より高度なSQL実行計画を取得するために、理解しておいてほしいこと」を解説します - データベースセキュリティが「各種ガイドライン」に記載され始めている事実 (2017/7/20)
本連載では、「データベースセキュリティに必要な対策」を学び、DBMSでの「具体的な実装方法」や「Tips」などを紹介していきます。今回は、「各種ガイドラインが示すコンプライアンス要件に、データベースのセキュリティはどのように記載されているのか」を解説します
|
|