Re: 50 000 tables - table_cache

2003-11-18 Thread Dan Nelson
In the last episode (Nov 18), Jrgen Winqvist said:
> I'm working with an application that uses a lot of tables. Apx 50k
> tables are accessed every 5 minuts and they are openened/closed
> constantly. There is a performance problem and i've changed the
> filesystem to reiserfs for better handling many files.  I also
> increased the open-file limit in both mysql and linux but i can't
> increase table_cache more than 16384 tables.

Switching to InonDB may help you here, since all tables are stored in
just a few tablespace files and the table cache is unused.

Also, the table cache is just a linked list, so if you're thinking
about rebuilding mysql with a higher hard table_cache limit, consider
whether you want it to be scanning a 50k-element list every time it
needs a table :)  16384 is probably too high as it stands.

-- 
Dan Nelson
[EMAIL PROTECTED]

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



RE: 50 000 tables - table_cache

2003-11-18 Thread Dan Greene
I can't believe I'm saying this, but MySQL may not be the db of choice for your 
particular app...

I figure you have few options:

1- keep db structure same, keep mysql, suffer performance issues
2- keep db structure, switch db, suffer migration costs
3- change db structure, keep mysql, suffer app modification 
4- change db structure, switch db, suffer migration and app mod


I know it sounds like nihlistic (sp?), that all of your options involve suffering, but 
I'm guessing that this is an organically grown app architecture, that it didn't start 
off with 50,000 tables.


IMHO, your app is at a classic architecture inflection point, where you need to either 
redesign it, or truss it up with hardware changes.


PS What about the idea of setting up a MySQL cluster, so that hopefully, various 
access will be spread out, and therefore file access... don't know about this one, but 
it's a though


> -Original Message-
> From: Jörgen Winqvist [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, November 18, 2003 11:02 AM
> To: Chris Nolan
> Cc: [EMAIL PROTECTED]
> Subject: Re: 50 000 tables - table_cache
> 
> 
> Hi Chris,
> 
> I know its not good to have that many tables but that's the way its 
> done. I can't see why a merge would help. It still has to 
> open all the 
> tables.
> 
> regards
> 
> /jorgen
> 
> Chris Nolan wrote:
> 
> > Hi!
> >
> > Looking through the docs, MySQL's internals don't seem to lend 
> > themselves well to having this many tables. Is there any chance you 
> > could use MERGE tables to chuck a few of them together 
> (admittedly I'm 
> > guessing here).
> >
> > Regards,
> >
> > Chris
> >
> > Jörgen Winqvist wrote:
> >
> >> I'm working with an application that uses a lot of tables. Apx 50k 
> >> tables are accessed every 5 minuts and they are openened/closed 
> >> constantly. There is a performance problem and i've changed the 
> >> filesystem to reiserfs for better handling many files. I also 
> >> increased the open-file limit in both mysql and linux but i can't 
> >> increase table_cache more than 16384 tables.
> >>
> >> Any ideas?
> >>
> >> Regards - Jorgen
> >>
> >>
> >
> >
> >
> 
> 
> -- 
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:
> http://lists.mysql.com/[EMAIL PROTECTED]
> 
> 

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: 50 000 tables - table_cache

2003-11-18 Thread Jörgen Winqvist
Hi Chris,

I know its not good to have that many tables but that's the way its 
done. I can't see why a merge would help. It still has to open all the 
tables.

regards

/jorgen

Chris Nolan wrote:

Hi!

Looking through the docs, MySQL's internals don't seem to lend 
themselves well to having this many tables. Is there any chance you 
could use MERGE tables to chuck a few of them together (admittedly I'm 
guessing here).

Regards,

Chris

Jörgen Winqvist wrote:

I'm working with an application that uses a lot of tables. Apx 50k 
tables are accessed every 5 minuts and they are openened/closed 
constantly. There is a performance problem and i've changed the 
filesystem to reiserfs for better handling many files. I also 
increased the open-file limit in both mysql and linux but i can't 
increase table_cache more than 16384 tables.

Any ideas?

Regards - Jorgen







--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: 50 000 tables - table_cache

2003-11-18 Thread Chris Nolan
Hi!

Looking through the docs, MySQL's internals don't seem to lend 
themselves well to having this many tables. Is there any chance you 
could use MERGE tables to chuck a few of them together (admittedly I'm 
guessing here).

Regards,

Chris

Jörgen Winqvist wrote:

I'm working with an application that uses a lot of tables. Apx 50k 
tables are accessed every 5 minuts and they are openened/closed 
constantly. There is a performance problem and i've changed the 
filesystem to reiserfs for better handling many files. I also 
increased the open-file limit in both mysql and linux but i can't 
increase table_cache more than 16384 tables.

Any ideas?

Regards - Jorgen




--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]