Informix

Informix

Connect with Db2, Informix, Netezza, open source, and other data experts to gain value from your data, share insights, and solve problems.

 View Only
  • 1.  Keep definied tables/columns in shared memory?

    Posted 10/16/19 06:33 AM
    Hello,

    i´d like to know if there is away for Informix to mark some tables or columns to stay "in memory" at long as possible. 
    I know there is the IWA, but we want a to try a more simple solution.

    Informix 12.10 - Workgroup Edition Linux 64bit

    ------------------------------
    Marc Demhartner
    ------------------------------

    #Informix


  • 2.  RE: Keep definied tables/columns in shared memory?

    Posted 10/16/19 07:09 AM

    Not explicitly. The buffer pool management algorithm should achieve that if the pages are effectively being used (provided you have enough buffer pool). If the pages are not effectively being used it's a bit useless to keep them in memory (the only advantage would be to guarantee the best possible response time IF a query that require them ever was issued).

    In the manuals (old ones) you may find a statement that once did that (before the changing on the buffer pool management):

    SET TABLE|INDEX <NAME> MEMORY_RESIDENT

    The statement is possible still accepted by the parser, but is ignored since version 9.4

    Regards.



    ------------------------------
    FERNANDO NUNES
    ------------------------------



  • 3.  RE: Keep definied tables/columns in shared memory?

    Posted 10/16/19 07:31 AM
    That was an option in v7.30/9.21 but it turned out to be a performance disaster and was removed in 7.31/9.30. The command tool declares a table memory resident was still recognized the last time I tried it,  but it is no-op now.


    ------Original Message------

    Hello,

    i´d like to know if there is away for Informix to mark some tables or columns to stay "in memory" at long as possible. 
    I know there is the IWA, but we want a to try a more simple solution.

    Informix 12.10 - Workgroup Edition Linux 64bit

    ------------------------------
    Marc Demhartner
    ------------------------------

    #Informix


  • 4.  RE: Keep definied tables/columns in shared memory?

    Posted 10/16/19 07:51 AM
    The simple way I approach this is to:

    Create chunk(s)/dbspace(s) with a different page size from the others,
    Assign a separate/dedicated/sufficiently sized bufferpool to that page size,
    Put your subject tables in these dbspaces (and perhaps run a SELECT * FROM table at least once to force it to be read).
    Approach their index space similarly where feasible.

    Always had good results/good performance with this approach in 12.10 on Linux, 11.50 on HP-UX, etc.  I prefer it for mostly/almost always read only tables.

    Assumes you have not already used all the page sizes in the existing dbspaces, assumes you have sufficient RAM for the bufferpools  (which, since you want to keep tables in memory, you probably do).

    Hal Maner
    M Systems International, Inc.


    ------Original Message------

    Hello,

    i´d like to know if there is away for Informix to mark some tables or columns to stay "in memory" at long as possible. 
    I know there is the IWA, but we want a to try a more simple solution.

    Informix 12.10 - Workgroup Edition Linux 64bit

    ------------------------------
    Marc Demhartner
    ------------------------------

    #Informix