tablas soporta segundo por online memoria lento grandes cuantas convertir consultas con mysql postgresql temp-tables

soporta - mysql lento con tablas grandes



¿PostgreSQL equivalente a las tablas de memoria MySQL? (2)

No, por el momento no existen en PostgreSQL. Si realmente necesita una tabla de memoria, puede crear un disco RAM, agregar un tablespace de tablespace y crear tablas en él.

Si solo necesita la tabla temporal que es visible entre diferentes sesiones, puede usar una tabla UNLOGGED . Estas no son verdaderas tablas de memoria, pero se comportarán sorprendentemente de manera similar cuando los datos de la tabla son significativamente más pequeños que la memoria RAM del sistema.

Las tablas temporales globales serían otra opción pero no se admiten en PostgreSQL a partir de 9.2 (ver comentarios).

¿PostgreSQL tiene un equivalente de las tablas de memoria MySQL?

Estas tablas de memoria MySQL pueden persistir entre sesiones (es decir, diferentes de las tablas temporales que se eliminan al final de la sesión). No he podido encontrar nada con PostgreSQL que pueda hacer lo mismo.


Respondiendo a una pregunta de cuatro años, pero dado que está encima de los resultados de búsqueda de Google, incluso ahora.

No hay una forma integrada de almacenar en caché una tabla completa en la memoria, pero hay una extensión que puede hacer esto.

In Memory Column Store es una biblioteca que actúa como una extensión de la extensión y también como un almacenamiento de columna y un motor de ejecución. Puede consultar here la documentación. Existe una función de carga que puede usar para cargar toda la tabla en la memoria.

La ventaja es que la tabla se almacena dentro de shared_buffers de postgres, por lo que cuando se ejecuta una consulta, postgres inmediatamente detecta que las páginas están en la memoria y se recupera desde allí.

El inconveniente es que shared_buffers no está realmente diseñado para funcionar de tal manera y pueden producirse inestabilidades (generalmente no es así), pero probablemente pueda tener esto en un clúster / máquina secundario con esta configuración solo para estar seguro.

Todas las demás advertencias habituales sobre postgres y shared_buffers todavía se aplican.