PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

pgmemcache vs cache infinita

Nel mio recente post su pgmemcache, sono state poste un paio di domande che erano davvero interessanti e mi hanno fatto lavorare su di esso. Devo ringraziare per questo 🙂

Domande:
1. L'applicazione pgmemcache è trasparente?
2. C'è qualche sincronizzazione tra memcached e buffer condivisi PostgreSQL?

Risposta:

pgmemcache(memcached) non è trasparente per l'applicazione, è necessario apportare modifiche all'applicazione per eseguire il push o il recupero dei dati dalla cache.

EnterpriseDB, il prodotto PostgresPlus Advance Server include una funzionalità chiamata Infinite Cache, che si basa su una tecnologia collaudata in produzione memorizzata nella cache di oggetti distribuiti open source.

Informazioni su EnterpriseDB, la società Enterprise PostgreSQL, fornisce prodotti PostgreSQL di classe enterprise del database open source più avanzato al mondo. I prodotti Postgres Plus dell'azienda sono ideali per applicazioni ad alta intensità di transazioni che richiedono prestazioni superiori, grande scalabilità e compatibilità con prodotti di database proprietari.

Panoramica

Il diagramma sopra aiuta a comprendere l'architettura di pgmemcache rispetto alla cache infinita. Nella cache infinita, tutte le pagine vengono prima ricercate in shared_buffers e poi in Infinite Cache. La sincronizzazione tra la cache del buffer condivisa e la cache infinita rende l'applicazione trasparente, cosa che non è il caso di pgmemcache.

Infinite Cache, è più veloce e completamente trasparente nell'applicazione. Non è necessario alcun codice speciale da parte degli sviluppatori. Riscalda la cache con più processi paralleli e precarica la cache all'avvio riducendo i tempi di riscaldamento.

Per usufruire della cache infinita devi scaricare PostgresPlus Advance Server, che è un prodotto compatibile con Oracle in bundle con Infinite Cache.
Link per il download:
http://www.enterprisedb.com/downloads/postgres-postgresql-downloads

L'implementazione della cache infinita è semplice come memcached, il link sottostante aiuterà a configurare la cache infinita.

http://www.enterprisedb.com/docs/en/8.4/perf/Postgres_Plus_Advanced_Server_Performance_Guide-04.htm

Discussione molto istruttiva sul forum della community di PostgreSQL:-

http://archives.postgresql.org/pgsql-performance/2011-07/msg00001.php