Re: [firebird-support] How to put an entire Database in memory using cache?
if you want to risk your data, use RAMDISK.. but, it's come so fast our querys... http://www.softperfect.com/products/ramdisk/ Remember.. use the shadow to ensure your data will be safe.. It's a kind of myth - shadow will not help a lot. Try to push RESET under load in RAMDisk+shadow configuration and see various corruptions for yourself. Firebird works fast enough on normal configurations - of course, if application was designed correctly. Regards, Alexey Kovyazin IBSurgeon (www.ib-aid.com) ++ Visit http://www.firebirdsql.org and click the Resources item on the main (top) menu. Try Knowledgebase and FAQ links ! Also search the knowledgebases at http://www.ibphoenix.com ++ Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/firebird-support/ * Your email settings: Individual Email | Traditional * To change settings online go to: http://groups.yahoo.com/group/firebird-support/join (Yahoo! ID required) * To change settings via email: firebird-support-dig...@yahoogroups.com firebird-support-fullfeatu...@yahoogroups.com * To unsubscribe from this group, send an email to: firebird-support-unsubscr...@yahoogroups.com * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
Re: [firebird-support] How to put an entire Database in memory using cache?
On Mon, Sep 19, 2011 at 10:41 AM, Marcelo Caetano marc...@optotal.com.brwrote: I have a Firebird 2.5 server running in a Windows Server 2008 64bit. The server have 16 cpu cores and 16GB of RAM. The database file have 3099MB of size and I have 2% of writes against 98% of reads of all I/O requisitions. How can I put the entire database (or the most part) in memory by adjusting the Page Size, Cache Size and the DefaultDbCachePages parameter? Is it possible? Sean is right that Windows will hold the working portions of the database in its page cache which may well be more effective than using database cache. Others are right that you could use a RAM disk - though the page cache solutions have the advantage of writing changes to disk, so you don't risk losing that 2% of your operations if the RAM disk fails. However, there's also a simple, if unnecessary, answer to your question. Figure out how big your database is, leaving room for expansion, divide that number by your page size and the result is the number of pages in the database, give or take Window's file size measurements, and that should be your cache size. By allocating that much memory to the database page cache, you reduce the amount of memory available for other uses, like the system page cache. Typically databases have a working set of data which is in regular use and other data that is referenced less often. You're likely to get best performance if you let the database page cache and the system page cache decide which pages are frequently used and should be kept in memory and which can rest quietly on disk, not wasting valuable RAM space. If you're even considering keeping the whole database in memory, run 64-bit Firebird. The MON$ tables that report on fetches/reads/writes/marks will give you a clue about the effectiveness of the cache. Good luck, Ann [Non-text portions of this message have been removed]
Re: [firebird-support] How to put an entire Database in memory using cache?
On Tue, Sep 20, 2011 at 10:17 AM, Alexey Kovyazin a...@ib-aid.com wrote: Ann, ... By allocating that much memory to the database page cache, you reduce the amount of memory available for other uses, like the system page cache. if Marcelo wants to achieve better performance, not just put database to the memory, I think it's good to mention here that performance could be worse in this case. It can be very bad in case of Classic/SuperClassic and slightly worse in case of SuperServer (he did not indicate what architecture he uses and how many users are there). Two or three other people had offered better suggestions, and in sections of my message that you didn't quote, I did say that using the database page cache to move the database to memory was not a good idea. However what Marcelo asked was how to calculate the cache size to put his whole database in memory. Whether or not that's a good idea, it is a straight-forward calculation. Certainly such vacuous cases are interesting to discuss, but I think people in support forum can recognize it as signal to change their Firebird configurations, which will lead to unforeseen consequences. If anyone out there is considering using the Firebird configurations to move an whole database into memory, THAT IS A BAD IDEA! Don't do it. Cheers, Ann [Non-text portions of this message have been removed]
RE: [firebird-support] How to put an entire Database in memory using cache?
-Original Message- From: Ann Harrison Sent: 20. september 2011 17:44 To: firebird-support@yahoogroups.com Subject: Re: [firebird-support] How to put an entire Database in memory using cache? On Tue, Sep 20, 2011 at 10:17 AM, Alexey Kovyazin a...@ib-aid.com wrote: Ann, ... By allocating that much memory to the database page cache, you reduce the amount of memory available for other uses, like the system page cache. if Marcelo wants to achieve better performance, not just put database to the memory, I think it's good to mention here that performance could be worse in this case. It can be very bad in case of Classic/SuperClassic and slightly worse in case of SuperServer (he did not indicate what architecture he uses and how many users are there). Two or three other people had offered better suggestions, and in sections of my message that you didn't quote, I did say that using the database page cache to move the database to memory was not a good idea. However what Marcelo asked was how to calculate the cache size to put his whole database in memory. Whether or not that's a good idea, it is a straight-forward calculation. Certainly such vacuous cases are interesting to discuss, but I think people in support forum can recognize it as signal to change their Firebird configurations, which will lead to unforeseen consequences. If anyone out there is considering using the Firebird configurations to move an whole database into memory, THAT IS A BAD IDEA! Don't do it. Cheers, Ann [Non-text portions of this message have been removed] [The entire original message is not included.] [Non-text portions of this message have been removed]
Re: [firebird-support] How to put an entire Database in memory using cache?
Thank you very much for your advice, Ann, I'll remember that. Greetings. Walter. On Tue, Sep 20, 2011 at 11:44 AM, Ann Harrison aharri...@ibphoenix.comwrote: ** On Tue, Sep 20, 2011 at 10:17 AM, Alexey Kovyazin a...@ib-aid.com wrote: Ann, ... By allocating that much memory to the database page cache, you reduce the amount of memory available for other uses, like the system page cache. if Marcelo wants to achieve better performance, not just put database to the memory, I think it's good to mention here that performance could be worse in this case. It can be very bad in case of Classic/SuperClassic and slightly worse in case of SuperServer (he did not indicate what architecture he uses and how many users are there). Two or three other people had offered better suggestions, and in sections of my message that you didn't quote, I did say that using the database page cache to move the database to memory was not a good idea. However what Marcelo asked was how to calculate the cache size to put his whole database in memory. Whether or not that's a good idea, it is a straight-forward calculation. Certainly such vacuous cases are interesting to discuss, but I think people in support forum can recognize it as signal to change their Firebird configurations, which will lead to unforeseen consequences. If anyone out there is considering using the Firebird configurations to move an whole database into memory, THAT IS A BAD IDEA! Don't do it. Cheers, Ann [Non-text portions of this message have been removed] [Non-text portions of this message have been removed] ++ Visit http://www.firebirdsql.org and click the Resources item on the main (top) menu. Try Knowledgebase and FAQ links ! Also search the knowledgebases at http://www.ibphoenix.com ++ Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/firebird-support/ * Your email settings: Individual Email | Traditional * To change settings online go to: http://groups.yahoo.com/group/firebird-support/join (Yahoo! ID required) * To change settings via email: firebird-support-dig...@yahoogroups.com firebird-support-fullfeatu...@yahoogroups.com * To unsubscribe from this group, send an email to: firebird-support-unsubscr...@yahoogroups.com * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
Re: Re[2]: [firebird-support] How to put an entire Database in memory using cache?
Sure... Super Clasic is the best for this smf/multiclient work... On Tue, Sep 20, 2011 at 1:02 AM, Dmitry Kuzmenko k...@ibase.ru wrote: ** Hello, Ricardo! Tuesday, September 20, 2011, 8:50:08 AM, you wrote: RU And cofiure the CpuAffinity param located in firebird.conf CpuAffinity can be used only for Firebird SuperServer, and only to attach fbserver process to 1 CPU. Because current SuperServer can use 1 cpu per database, not per user. Thus, to load all mentioned 16 cores, I suggest to use Classic or FB 2.5 SuperClassic. -- Dmitry Kuzmenko, www.ibase.ru, (495) 953-13-34 -- Ricardo... [Non-text portions of this message have been removed] ++ Visit http://www.firebirdsql.org and click the Resources item on the main (top) menu. Try Knowledgebase and FAQ links ! Also search the knowledgebases at http://www.ibphoenix.com ++ Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/firebird-support/ * Your email settings: Individual Email | Traditional * To change settings online go to: http://groups.yahoo.com/group/firebird-support/join (Yahoo! ID required) * To change settings via email: firebird-support-dig...@yahoogroups.com firebird-support-fullfeatu...@yahoogroups.com * To unsubscribe from this group, send an email to: firebird-support-unsubscr...@yahoogroups.com * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
[firebird-support] How to put an entire Database in memory using cache?
I have a Firebird 2.5 server running in a Windows Server 2008 64bit. The server have 16 cpu cores and 16GB of RAM. The database file have 3099MB of size and I have 2% of writes against 98% of reads of all I/O requisitions. How can I put the entire database (or the most part) in memory by adjusting the Page Size, Cache Size and the DefaultDbCachePages parameter? Is it possible? Marcelo Caetano [Non-text portions of this message have been removed]
Re: [firebird-support] How to put an entire Database in memory using cache?
if you want to risk your data, use RAMDISK.. but, it's come so fast our querys... http://www.softperfect.com/products/ramdisk/ Remember.. use the shadow to ensure your data will be safe.. On Mon, Sep 19, 2011 at 8:12 PM, Leyne, Sean s...@broadviewsoftware.comwrote: ** Marcelo, I have a Firebird 2.5 server running in a Windows Server 2008 64bit. The server have 16 cpu cores and 16GB of RAM. The database file have 3099MB of size and I have 2% of writes against 98% of reads of all I/O requisitions. How can I put the entire database (or the most part) in memory by adjusting the Page Size, Cache Size and the DefaultDbCachePages parameter? Is it possible? Over time the Windows OS will effectively have the entire database in its page cache, so I don't think there is anything you really need to do. Sean -- Ricardo... [Non-text portions of this message have been removed] ++ Visit http://www.firebirdsql.org and click the Resources item on the main (top) menu. Try Knowledgebase and FAQ links ! Also search the knowledgebases at http://www.ibphoenix.com ++ Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/firebird-support/ * Your email settings: Individual Email | Traditional * To change settings online go to: http://groups.yahoo.com/group/firebird-support/join (Yahoo! ID required) * To change settings via email: firebird-support-dig...@yahoogroups.com firebird-support-fullfeatu...@yahoogroups.com * To unsubscribe from this group, send an email to: firebird-support-unsubscr...@yahoogroups.com * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/