Acceso a la base de datos Postgres para el pipeline de analítica

Hola a todos, no encontré una publicación similar a esta, así que aquí va:

Mi organización está desarrollando nuestros paneles de análisis (dentro de Snowflake) y esperamos integrar los datos de usuario que tenemos en Discourse.

Actualmente, estamos autoalojando Discourse en una instancia EC2 dentro de Docker. Parece que hay un par de opciones aquí:

  1. Usar AWS Database Migration Service para acceder al servidor Postgres alojado en EC2. Esto requeriría exponer el puerto de Postgres (que no creo que esté configurado para ser accesible públicamente por defecto) y crear un nuevo usuario de Postgres, pero por lo demás parece una muy buena solución.
  • Un volcado SQL directo a un bucket S3 (cómo funcionan las copias de seguridad en Discourse) no funcionará, ya que Snowflake no acepta SQL como formato de datos.
  1. Instalar el plugin Data Explorer, escribir las consultas que generen los datos que queremos, luego ejecutar y exportar los datos resultantes en CSV/JSON que luego podamos importar a Snowflake.
  • Esta solución parece tener más pasos que la 1 anterior, pero también haría el truco y tendría menos posibilidades de estropear la base de datos de Discourse.

Agradecería sus comentarios o escuchar las experiencias de otros al integrar los datos de su base de datos en una canalización de análisis. ¡Gracias!

Si Snowflake puede hablar con Postgres, entonces abriría un puerto de Postgres (con el firewall apropiado para limitar el acceso) y lo dejaría hablar con él.

Si Snowflake puede leer csv/json, entonces podrías usar el explorador de datos y recuperar las cosas automáticamente a través de la API.

1 me gusta

Esto tiene sentido. Probablemente intentaré seguir la ruta directa (mi opción 1). El almacenamiento es barato y volcar toda la base de datos a Snowflake ahora para que podamos definir todas nuestras consultas de análisis en un solo repositorio parece tener mucha menos sobrecarga que definir algunas consultas en Data Explorer para un conjunto de solicitudes de análisis, luego piden más, así que definimos otro conjunto, y así sucesivamente…