> 1. I tend to think URL as a part of the user interface.  If the user
> look at (usually simple and structured in rails application) URL,
> wouldn't she be confused by the seemingly random and very large
> number assigned to her reply post?  Topic's id #87 corresponds to the
> 87th-ness nature of the topic posted in the forum.  Reply id #3 would
> correspond to the 3rd-ness nature of the reply to the given topic,
> reply id #1074 would not.  I know, I know, I might sound like someone
> who is suffering ocd..  ;)

Rick's reply covers that,  use routes.   Additionally, you may want to
consider adding another 'index' column rather than using the IDs like
that.


> 2. This one is a bit more practical issue.  Let's say I'm building a
> public forum hosting service.  (It is indeed something I have in
> mind.)  At some point, my site hosts 10,000 forums, each having its
> own forum_id.  Let's say each forum has average of 10,000 topics,
> each having its own topic_id.  And each topic has average of 100
> replies, each having its own reply_id.  If I have to use a flat
> integer id space, there will be replies with id like #10,000,000,000.
> (10,000 * 10,000 * 100)  Now, 32-bit unsigned integer can't handle it
> since its max value would 4,294,967,295.  I could just use 64-bit
> unsigned integer, I guess, but it does take more spaces and what if
> my site becomes even more successful to the extent even 64-bit
> integer will max out?

If you're storing forum posts, you're looking at a lot of data,  like
say, 1k per row.   If you've maxed out a 64 bit integer, you've got
exabytes - yottabytes of storage.   No one has that much storage,  
Not  google, or high end scientific supercomputers.

You'll be fine.

> In some ways, id's are like memory addresses, but no user ever get to
> see the memory address values..  Are there other reasons against the
> use of multiple integer column id's other than the fact that
> ActiveRecord doesn't support it?

Look at it another way,  if you can live without it,  why try to use it?



--
Cheers

Koz
_______________________________________________
Rails-core mailing list
Rails-core@lists.rubyonrails.org
http://lists.rubyonrails.org/mailman/listinfo/rails-core

Reply via email to