[PHP] High ID (unique, auto increment) causes slow responses on PHP (MySQL)

2009-06-13 Thread דניאל דנון
 I've built a certain system where every time new user enters it creates a
guest row on guests table. he also gets an identifying cookie.

The table contains several fields, one of them is ID which is auto increment
and unique

When he does a certain action it gets recorded in the done_action table
with several fields on it, one of them is guest_id and his ID on it.


Problem is the guests table has about 30,000 rows (which means ID is high).

 I was wondering whether I should somehow change how the system works.

I've thought about couple of options

A weekly cleanup job. opens a table called guests_tmp, *copies* all data
from guests to guests_tmp.

every row it copies it also changes the ID on the table done_action.

What do you  think?


-- 
Use ROT26 for best security


Re: [PHP] High ID (unique, auto increment) causes slow responses on PHP (MySQL)

2009-06-13 Thread Nitsan Bin-Nun
Just use SERIAL id and you will be good ;) (that's an alias for something
like BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY)

It shouldn't bother you as long as it works.

On Sat, Jun 13, 2009 at 9:16 PM, דניאל דנון danondan...@gmail.com wrote:

  I've built a certain system where every time new user enters it creates a
 guest row on guests table. he also gets an identifying cookie.

 The table contains several fields, one of them is ID which is auto
 increment
 and unique

 When he does a certain action it gets recorded in the done_action table
 with several fields on it, one of them is guest_id and his ID on it.


 Problem is the guests table has about 30,000 rows (which means ID is high).

  I was wondering whether I should somehow change how the system works.

 I've thought about couple of options

 A weekly cleanup job. opens a table called guests_tmp, *copies* all
 data
 from guests to guests_tmp.

 every row it copies it also changes the ID on the table done_action.

 What do you  think?


 --
 Use ROT26 for best security



Re: [PHP] High ID (unique, auto increment) causes slow responses on PHP (MySQL)

2009-06-13 Thread Stuart
2009/6/13 דניאל דנון danondan...@gmail.com:
  I've built a certain system where every time new user enters it creates a
 guest row on guests table. he also gets an identifying cookie.

 The table contains several fields, one of them is ID which is auto increment
 and unique

 When he does a certain action it gets recorded in the done_action table
 with several fields on it, one of them is guest_id and his ID on it.


 Problem is the guests table has about 30,000 rows (which means ID is high).

  I was wondering whether I should somehow change how the system works.

 I've thought about couple of options

 A weekly cleanup job. opens a table called guests_tmp, *copies* all data
 from guests to guests_tmp.

 every row it copies it also changes the ID on the table done_action.

 What do you  think?

I think your problem has nothing to do with high IDs. I have tables in
MySQL with primary key IDs that have recently passed 2 billion and
they're still as responsive as they were with 1 row!!

What specific operations are slow, and are you sure it's the MySQL
query that's being slow and not something in the surrounding code? If
it is the MySQL query what is it and what engine are your tables
using?

-Stuart

-- 
http://stut.net/

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php