RE: [PEAR-DEV] PEAR::DB advocacy
| From: | Lukas Smith | Date: | Thu, 06 Feb 2003 22:02:12 +0000 |
| Subject: | RE: [PEAR-DEV] PEAR::DB advocacy | ||
| References: | 1 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-13030@lists.php.net to get a copy of this message | ||
> -----Original Message-----
> From: Tony Bibbs [mailto:tony@tonybibbs.com]
> Sent: Thursday, February 06, 2003 10:48 PM
> To: PEAR Development
> Subject: [PEAR-DEV] PEAR::DB advocacy
>
> To be clear, I'm a PEAR::DB advocate. However, a project I am working
on
> is going to use PEAR::DB and a user blasted me wtih this tidbit from
the
> ADODB website regarding performance. My question is how do I address
this
> from the advocates standpoint? Assuming the numbers are based on a
valid
> benchmark, are there plans to review PEAR::DB for optimizations?
>
> Average Overhead
> MySQL 1.14 -
> dbx 1.37 20% (index only)
> ADODB 1.45 27%
> dbx 1.53 34% (index/assoc/info)
> PhpLib 1.60 40%
> MDB 1.75 54%
> PEAR DB 2.87 152% (fetchInto)
> PEAR DB 3.15 176% (fetchRow)
> M'base 2.52 296% (numeric cols)
> M'base 4.77 318% (assoc cols)
Well here is a posting by Tomas Cox that will shed some light on the
situation:
http://marc.theaimsgroup.com/?l=pear-dev&m=100793507904834&w=2
The results seem pretty harsh though.
Anyways, I hope that person was benchmarking for his specific needs and
not some random situation. Another important point is if it has the
features you need etc.
Take Metabase for example:
While it takes last place in this benchmark, it is none the less a prime
choice if you need PHP3 support as well as a complete set of abstraction
facilities and a large number of drivers.
Regarding PEAR DB. A lot of the things that Tomas talked about in his
post have been incorporated into MDB. But I doubt that MDB is really
that much faster in normal use. Especially if you use the datatype
abstraction (which is optional).
Then there is another "benchmark" to consider. How long does it take to
make your application compatible with another RDBMS. How long does it
take to port the schema? If you use abstraction do so for a good reason,
or use the native API's.
Regards,
Lukas