PDO、PEAR::DB、MySQL関数の速度比較
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[PHP]]
#contents
PHPでMySQLにアクセスするとき、どうすれば速くなるのかな?
検索したら、以下のような実験結果が報告されていました。
http://zapanet.info/blog/item/972
* PDO、PEAR::DB、MySQL関数の速度比較 [#o8b65db9]
2007年04月07日
** 実験環境 [#uc392158]
実験をしたサーバーの環境は、下表の通りです。
|環境 |バージョン|
|OS |CentOS4|
|PHP |5.2.1|
|PHPアクセラレータ |eAccelerator0.9.5|
|MySQL |4.1|
|PEAR::DB |1.7.11|
** 実験結果 [#p690626f]
やはりネイティブ関数は速く、mysqli関数が一番速い結果にな...
続いて同じくネイティブ関数のmysql関数が続き、その次にPDO...
PDOでは、プリペアドステートメントを用いてSQLを発行したた...
一番遅かったのは予想通り、PEAR::DBでした。
ネイティブ関数よりも2~3倍遅く、PDOよりも2倍近く遅い結果...
PHP用アクセラレータを導入していなければ、PEAR::DBはもっと...
** まとめ [#t4d869ef]
PHP5を利用していて、DBの抽象化を行いたいのであれば、PEAR...
単純なSELECT文の結果でさえ、2倍近い性能差が出ていますから...
DBの抽象化を行う必要がない場合、PDOを使うかネイティブ関数...
PDOは、対象データベースがMySQL 3.x/4.x/5.xを始め、Postgre...
他のDBも扱う予定があるのならば、PDOの処理だけを覚えてしま...
一方、処理速度がボトルネックとなっていて、DBを変更する予...
PDOは、PEAR::DBのように圧倒的に遅いわけではないので、状況...
当然、そのサーバーで扱うデータを元に、それぞれのSQLを発行...
* 考察 [#o6288f8d]
| 順位 | 手段 |h
| 1位 | mysqli関数 |
| 2位 | mysql関数 |
| 3位 | PDO |
| 4位 | PEAR::DB |
- mysqli関数 … MySQL4.1以上でOK、速い。
- PDO … SQLite等を使う場合、OOP/ORMを意識する場合、フレ...
とりあえずPDOを使ってみて、遅いようならmysqli関数でベタ書...
* 参考 [#o381ea0d]
- mysqli (MySQL 改良版拡張モジュール)
http://www.php.net/manual/ja/book.mysqli.php
- PDO (PHP Data Objects)
http://php.net/manual/ja/book.pdo.php
第260話 PEAR DB,MySQLiからPDOへ
http://itpro.nikkeibp.co.jp/article/MAG/20070904/281168/
PDOでサクサクDB開発
http://codezine.jp/article/detail/433
MySQL⇔PHPベンチマーク(mysql_・PDO・mysqli)+おまけ
http://php-sql-gdgd.jugem.jp/?eid=65
終了行:
[[PHP]]
#contents
PHPでMySQLにアクセスするとき、どうすれば速くなるのかな?
検索したら、以下のような実験結果が報告されていました。
http://zapanet.info/blog/item/972
* PDO、PEAR::DB、MySQL関数の速度比較 [#o8b65db9]
2007年04月07日
** 実験環境 [#uc392158]
実験をしたサーバーの環境は、下表の通りです。
|環境 |バージョン|
|OS |CentOS4|
|PHP |5.2.1|
|PHPアクセラレータ |eAccelerator0.9.5|
|MySQL |4.1|
|PEAR::DB |1.7.11|
** 実験結果 [#p690626f]
やはりネイティブ関数は速く、mysqli関数が一番速い結果にな...
続いて同じくネイティブ関数のmysql関数が続き、その次にPDO...
PDOでは、プリペアドステートメントを用いてSQLを発行したた...
一番遅かったのは予想通り、PEAR::DBでした。
ネイティブ関数よりも2~3倍遅く、PDOよりも2倍近く遅い結果...
PHP用アクセラレータを導入していなければ、PEAR::DBはもっと...
** まとめ [#t4d869ef]
PHP5を利用していて、DBの抽象化を行いたいのであれば、PEAR...
単純なSELECT文の結果でさえ、2倍近い性能差が出ていますから...
DBの抽象化を行う必要がない場合、PDOを使うかネイティブ関数...
PDOは、対象データベースがMySQL 3.x/4.x/5.xを始め、Postgre...
他のDBも扱う予定があるのならば、PDOの処理だけを覚えてしま...
一方、処理速度がボトルネックとなっていて、DBを変更する予...
PDOは、PEAR::DBのように圧倒的に遅いわけではないので、状況...
当然、そのサーバーで扱うデータを元に、それぞれのSQLを発行...
* 考察 [#o6288f8d]
| 順位 | 手段 |h
| 1位 | mysqli関数 |
| 2位 | mysql関数 |
| 3位 | PDO |
| 4位 | PEAR::DB |
- mysqli関数 … MySQL4.1以上でOK、速い。
- PDO … SQLite等を使う場合、OOP/ORMを意識する場合、フレ...
とりあえずPDOを使ってみて、遅いようならmysqli関数でベタ書...
* 参考 [#o381ea0d]
- mysqli (MySQL 改良版拡張モジュール)
http://www.php.net/manual/ja/book.mysqli.php
- PDO (PHP Data Objects)
http://php.net/manual/ja/book.pdo.php
第260話 PEAR DB,MySQLiからPDOへ
http://itpro.nikkeibp.co.jp/article/MAG/20070904/281168/
PDOでサクサクDB開発
http://codezine.jp/article/detail/433
MySQL⇔PHPベンチマーク(mysql_・PDO・mysqli)+おまけ
http://php-sql-gdgd.jugem.jp/?eid=65
ページ名: