XtraDB/InnoDB Memory Buffer

Stai visualizzando una vecchia versione di questo article. Visualizza la versione più recente.

Il buffer di memoria di XtraDB/InnoDB è un componente chiave di MariaDB. Registra i dati e gli indici, e solitamente è desiderabile mantenere in memoria la maggior quantità possibile di dati ed indici, riducendo l'IO su disco, che è il principale collo di bottiglia.

innodb_buffer_pool_size

La variabile server di sistema più importante è innodb_buffer_pool_size, che si può impostare al 70-80% della memoria totale disponibile su un database server dedicato che utilizza solamente, o principalmente, tabelle XtraDB/InnoDB.

Occorre ricordarsi che la memoria effettivamente allocata è maggiore del 10% circa rispetto alle dimensioni specificate, perché uno spazio aggiuntivo viene riservato per le strutture di controllo e i buffer. La memoria inoltre deve essere contigua. Se si esegue un sistema Windows che carica alcune DLL da indirizzi specifici, questo potrebbe provocare delle difficoltà.

Più grandi sono le dimensioni, maggiore sarà il tempo che occorre per inizializzare. Su un server moderno a 64 bit con un pool di memoria di 10GB, potrebbero occorrere cinque secondi o più.

Bisogna anche accertarsi che le dimensioni non siano troppo grandi, perché causerebbero uno swapping. Il beneficio di un grande buffer di memoria è negativamente compensato in abbondanza dallo swapping.

innodb_buffer_pool_instances

If innodb_buffer_pool_size is set to more than 1GB, innodb_buffer_pool_instances divides the InnoDB buffer pool into a specific number of instances. The default is 1, but for large systems with buffer pools of many gigabytes, many instances can help reduce contention concurrency. Each instance manages its own data structures and takes an equal portion of the total buffer pool size, so for example if innodb_buffer_pool_size is 4GB and innodb_buffer_pool_instances is set to 4, each instance will be 1GB. Each instance should ideally be at least 1GB in size.

Commenti

Sto caricando i commenti......
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.