¡Hola! En este artículo vamos a explorar dos de las características principales comprometidas en
la próxima release de PostgreSQL: Replicación Lógica y Particionamiento. No hace falta
decir que estas características aún no están disponibles en la release estable, así que están propensas
a cambiar o extenderse.
¡Advertencia publicitaria!
El artículo actual es solo un vistazo de la próxima charla Demystifying Logical
Replication on PostgreSQL en Percona Live Santa Clara 2017. ¡Consigue tus tickets!
Golang es un lenguaje increíble, pero lo encontré bastante inestable dentro de las variables de entorno (al menos en macOS Sierra/El Capitan). gvm es tu amigo por cierto, y me ayudó a corregir algunos de los problemas instalando el último release candidate de la serie 1.7.1.
Ten en cuenta que si quieres actualizar tu macOS a Sierra, necesitarás hacer backup de todas tus variables de entorno y reinstalar gvm.
NOTA IMPORTANTE:
Esto ya ha sido abordado en el core de PostgreSQL, pero esta opción
aún está disponible en RDS.
¿Qué cambia y por qué es tan importante?
Rastrear contadores de bases de datos y no solo tablas en Postgres no es barato, pero desde hace algún tiempo había workarounds involucrando la configuración de un ramdisk para colocar el directorio apuntado por la variable GUC stat_temp_directory. Ese directorio coloca un global.stat y archivos de estadísticas por base de datos llamados como db_<oidOfDB>.stat. Aunque el mecanismo para escribir en estos archivos evita flushes extra o innecesarios, es muy intensivo en escritura.
Este artículo no es una explicación introductoria de docker, sin embargo su alcance es para principiantes de docker. Puedes considerarlo como una extensión de la bien documentada documentación de Percona docker hub. Para el código fuente de la imagen, el repositorio está en github.
Aquí está todo lo que necesitas hacer para comenzar:
docker run --name percona57 -e MYSQL_ROOT_PASSWORD=<a_password> -d percona:5.7
Para verificar el log de estado del contenedor, puedes ejecutar docker logs percona57.
Para el artículo completo y la aplicación Shinyapp está disponible aquí.
Algunos pensamientos iniciales
Hace un par de días uno de nuestros clientes llegó con una pregunta respecto a FTS
sobre el motor InnoDB. Aunque la pregunta no se responde en el artículo actual,
llegué a la conclusión de que FTS a veces se malinterpreta.
Algunos sistemas tienen un bug que hace que xbstream falle al crear el directorio de destino, necesitas forzar su creación.
Esta es la razón, que en este post, agregaré pasos adicionales antes de abrir el proceso xbstream.
El POC en este artículo fue desarrollado antes del lanzamiento del servicio de gestión de claves
para RDS.
Desaconsejo totalmente usar el enfoque actual para encriptar datos. Usa REST.
Introducción
He estado tratando con un problema que llegó a mi escritorio de personas de la
comunidad, respecto a RDS y reglas HIPAA. Había un escenario confuso sobre si
PostgreSQL estaba usando FTS y encriptación en RDS. Hay muchos detalles respecto a
la arquitectura, sin embargo creo que no será necesario profundizar
muy profundamente para entender los conceptos básicos del motivo del presente artículo.