1
While there are many areas of Xoops that need upgrading, recently a discussion began about upgrading the database engine. This is an area that should be looked at soon. This thread is intended to discuss this and only this.
Reason for this thread is that Wishcraft is pushing to add ADOdb as he has been doing for at least a couple of years that I am aware of. Mamba has challenged that we should be using PDO.. I started to get into it as well with some generalizations but I decided to spend some time and look into it.
If you do a simple Google search of PDO and ADOdb you can find some interesting information about their comparisons...
The main reason to look into a replacement for our current database is that the current database core is very old and does not allow for other databases to be used. From what is available the two best options are the above mentioned two for different reasons. Both are stable, mature and used by many. Using either of these would add some strength to Xoops in the long haul and it is something that needs to be at least considered at some point. There are other systems available as well but realistically the choice really becomes between these two. PEAR has a system but realistically there is no reason to use it over PDO and I saw mention that Zend uses PDO as its base and builds on that so if that is true then it would then obviously be slower than PDO. Also do not confuse the ADOdb mentioned here which resides at adodb.sourceforge.net with the PHP included PEAR module by the same name. They are completely different animals and from the benchmarks I have seen this system is faster than PEAR:ADOdb and has much more "toys"
So, when I first started looking into this I thought it should be an easy decision. However it is really a mixed bag. I will describe each system in separate messages and then another message to tie it all together. (As opposed to one very large message.)
It should also be noted that Native drivers are the fastest method of connecting to any database. These are the drivers delivered with the databases to connect to the databases but they are very specific to that database and are not generally usable by other databases. The whole point of PDO, ADOdb and others is to add a layer on top of these Native drivers to allow you to use ANY of the supported databases.
Attending College working towards Bachelors in Software Engineering and Network Security.