Wow that was a lot of reading. :)

I too had wondered why they didn't support multi-column indexing, but
I soon gave up on it. It looks like there is a diff patch that might
work, so you could always use that if you need.

You will definitely need to get with phpnut or gwoo to get the answers
you need,  there might be a few others that can answer it for you
definitely, but phpnut and gwoo would be the most knowledgeable.

-Erik


On May 15, 8:50 pm, "Jason Carlson" <[EMAIL PROTECTED]> wrote:
> Old time programmer (since 1979) and fan of PHP (since '97) who decided to
> venture out and see what all the fussing over the OS frameworks was all
> about.  I was enticed by a PHP Magazine article on CakePHP and after reading
> a lot of the pros and cons of different frameworks this seemed like the best
> fit so what I wanted to try out.  For my first project I decided to take a
> database from an older site I was thinking of revamping anyways.  Turns out
> I ran into problems right away because Cake does not support a multi-column
> primary index.  Ouch, I use these a lot and so do a lot of programmers I
> know.  Rather than just deleting Cake and moving on to try another
> framework.  my curious nature got me interested as to why this was.
>
> I found a number of discussions on this and honestly what I found disturbed
> me.  A number of the responses were very obvious that the poster has a very
> limited understanding of relational databases, they had no clue as to the
> difference between a key and an index, and could not grasp why anyone would
> want this and thus deemed it as unimportant.  My concern is these posters
> were posing as CakePHP experts.  Being an old timer in the greater
> programming community (since '79) I do fully realize that upon entering a
> new community (CakePHP) that there are going to be experts and the usual
> vocal wannabes and so I took this with a grain of salt.
>
> However then I came tohttps://trac.cakephp.org/ticket/1293
>
> Here this feature was requested by a couple of folks.  The developer "nate"
> responds to the first requester by saying this is definitely not the
> direction they want to take CakePHP in but gives no other reason why.  The
> second requester sees what I see in that it doesn't look like they think it
> is important so he re-opens it mentioning that it is important enough that
> ZF supports this.  The same developer not only shuts it down but minimizes
> it to trivial and warns the guy about ever mentioning ZF.  I've not looked
> at ZF personally but is it not open source and if there are good ideas in it
> is it not okay to adopt them, after all isn't CakePHP isn't original but
> based strongly on Ruby on Rails from what I understand.
>
> So from the outside, what am I to assume?  No real reason is given for
> CakePHP not supporting this and by the way it is closed down it is like they
> don't even want to ever consider supporting a database table's multi-column
> primary index as a key, even though the SQL databases CakePHP supports do
> support this and recommend it for optimized SQL setups.  Shutting it down
> without an explanation gives the impression it was beyond the developers
> comprehension as otherwise why wouldn't they explain it.  Who knows, perhaps
> the developer did explain it offline and had a very good reason, perhaps he
> was having a bad development day and couldn't handle someone comparing his
> software to a competitors, or perhaps the person requesting this was
> annoying to the group and they were tired of answering them.
>
> With what is posted however, I hope you can understand why as a newbie to
> CakePHP I have my concerns.
>
> I can only take it as I read it posted by the developer where they are not
> interested in taking CakePHP in this direction.  So now I'd like to know why
> before I throw any real support behind CakePHP.  Database development years
> ago worked hard to add this ability for performance and integrity purposes
> so why would CakePHP not take advantage of that strength in the supporting
> database.  The suggestions I found on the various CakePHP posts I could find
> was to add a new field to these tables and make it the primary index/key and
> then take the other existing tables (that used to make the primary
> multi-column index) and make them into a unique key.  To a database a
> primary index is always a unique key whether it is multi-column or not so it
> seems like a huge waste of resources to have an extra redundant resource.
> It'd be like adding a birthdate and age column to the same database only
> with a bigger performance hit.
>
> This got me curious, I know it used to be significantly faster using
> multi-column indexes (thus why databases added this ability) but having not
> tested that in years I ran some benchmarks just now.  Inserting 1 billion
> records took only 1 second longer on average when having the two indexes as
> the CakePHP posts suggested I convert them too.  Yet they all took exactly
> twice the amount of disk/ram space. Thus as I expected, SELECT queries on
> the other hand did see a performance hit compared to data stored with one
> multi-column primary index.  But it wasn't a huge hit.  Having not looked
> into the bowels of CakePHP and how it does it's object relational mapping I
> can only guess it is not being done because it is either too much work for a
> small performance gain, or the extra overhead the CakePHP model objects need
> to handle this out weight the performance gains.
>
> If anyone has the actual reason of why CakePHP won't consider this I'd
> greatly appreciate it.
>
> I only felt it important to give feedback as being a developer myself I want
> to know when my community is interpreting what we are doing as developers.
> In looking for the answers I found more people bickering about lack of
> communication than anything else so I hope this helps.
>
> On a more positive note, I am very impressed with what I see so far.  There
> are some real perks, I especially like the bake cli allowing me to do a
> quick though dirty setup.  My fear is I'll more likely forget to go back and
> add something that is really important.  I'll know more in a few days how
> easy it is to customize it to get it to flow the way I want (as I'm
> currently only using the scaffolding).  I know using a framework will have a
> performance hit but for many applications that is not important, though I
> hate to say that as I believe too many developers have heard the "processors
> are cheaper than developers" theory one to many times and then we are stuck
> with things like Vista.
>
> I look forward to the next few days when I have more time to get into the
> depths of CakePHP.
>
> Jay
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to