When should use doctrine ORM and when zend-db-table?

Any ORM framework gives you benefit for development productivity, not runtime efficiency. Doctrine is no different from Zend_Db_Table in this regard If you are choosing between Doctrine and Zend_Db_Table, choose based on the features that make it easier or faster to write the code No ORM framework can automatically make database queries faster in the general case. If you need high-performance database queries, you should learn to code SQL queries, and design your schema and indexes to support performance given the queries you need to run.

Any ORM framework gives you benefit for development productivity, not runtime efficiency. Doctrine is no different from Zend_Db_Table in this regard. If you are choosing between Doctrine and Zend_Db_Table, choose based on the features that make it easier or faster to write the code.No ORM framework can automatically make database queries faster in the general case.

If you need high-performance database queries, you should learn to code SQL queries, and design your schema and indexes to support performance given the queries you need to run.

1 "No ORM framework can automatically make database". Sorry for I don't have this link here now, but I've seen Doctrine 2 benchmarks with PHP 5.3 which showing that in some cases it runs faster than the native PDO. I know, that benchmarks are evil, but is it really not possible?

– takeshin May 25 '10 at 7:25 thank you very much. – Yosef May 25 '10 at 9:40 4 @takeshin: Doctrine 2 uses transaction management and caching to improve performance for certain scenarios. This doesn't make queries run faster.

– Bill Karwin May 25 '10 at 12:41 1 @takeshin: I think you're talking about slides 47-55 of this slideshow: slideshare. Net/jwage/doctrine-2-not-the-same-old-php-orm. IMHo - that's cheap trick, the only way perhaps to make it look like Doctrine can be faster than raw SQL.No knowledgable SQL person though will ever write raw SQL code like that.

One could simply do multiple insert and be done in single query. – nix Jul 21 at 16:53 @nix: Yes, it's worthwhile to avoid autocommit mode when you need to do repeated or complex operations, and Doctrine makes a good point that naive developers may overlook this. But is it easier to learn how to use a complex ORM, or how to use transactions?

– Bill Karwin Jul 21 at 17:38.

Use whatever you are most comfortable with and will make you the most efficient. You and your fellow developers are probably the most expensive resource, and it's probably cheaper to buy additional hardware, if needed, than you having to worry about possible future performance considerations. Of course, you will still need to perform basic database optimizations such as creating sensible indexes etc.But I feel that those "optimizations" go without saying.

Optimization of queries important consideration if doctrine make it auto and zend-db not make it auto. Thank you – Yosef May 24 '10 at 21:53.

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions