Python

Esta tarea te permite ejecutar scripts en lenguaje Python; la versión utilizada puede elegirse según las versiones puestas a disposición por tu administrador de Gaio.
Esta tarea te permite ejecutar scripts en lenguaje Python; la versión utilizada puede elegirse según las versiones puestas a disposición por tu administrador de Gaio. Las librerías pueden ser instaladas y gestionadas por los desarrolladores de Gaio. Además, proporcionamos una clase llamada bucket que te permite extraer y exportar datos que están en la base de datos ClickHouse a la que tu aplicación tiene permiso de acceder.
Límite de memoria La tarea de Python en Gaio está limitada por defecto a un máximo del 80% de la memoria de la máquina; si se supera este límite, se devolverá un error de límite de memoria.
Cómo configurar la tarea Python
Simplemente navegaremos por la interfaz de la tarea y, después, desarrollaremos un script simple como ejemplo.
1. Abrir la tarea Python
En el Studio, ve al panel Tareas. En la sección Analytics, selecciona Python.
2. Completar los campos requeridos
La primera pantalla es la principal de la tarea. En ella, a la izquierda, tenemos el espacio con tema azul para escribir el script, mientras que a la derecha, con tema oscuro, se encuentra la consola, donde podemos ver la salida del script. Para ejecutar tu script, simplemente haz clic en el botón Run y el resultado se mostrará en la consola.

Es posible guardar los archivos generados en el script, como archivos jpeg, png, mp4, pkl, entre otros. El nombre de esta carpeta es assets.
Hay tres carpetas que puedes utilizar a través de la tarea de Python, que son las carpetas content, inputs y outputs de tu aplicación.
A continuación se muestra un ejemplo de cómo crear tu ruta hacia la carpeta outputs para poder descargar la imagen generada:
path = app_assets + "outputs/imagem_name.png"
En el cuadro de texto, debes escribir en cada línea el nombre correcto de la librería que deseas instalar (solo el nombre, sin ningún otro carácter, como se muestra en la imagen de abajo). Después de elegir la versión de Python y las librerías, simplemente haz clic en el botón Install para que se ejecuten tus configuraciones.

Como se mencionó anteriormente, tenemos una clase llamada bucket, que se conecta a ClickHouse de forma encapsulada y tiene los métodos query_df, command, insert_df y create_df.
Ejemplos
Función que transforma un SELECT de ClickHouse en un DataFrame de pandas en Python:
Función que hace una copia de una tabla de ClickHouse indicada a un DataFrame de pandas:
En la primera línea tenemos la función que crea una tabla en ClickHouse similar a tu DataFrame de pandas; en la segunda línea insertamos los datos de tu DataFrame de pandas en la tabla de ClickHouse:
Ten en cuenta que para ejecutar la función insert_df necesitamos que tu DataFrame de pandas sea similar a tu tabla de ClickHouse.
Ejemplo práctico
En este ejemplo práctico veremos la parte de traer los datos a Python, realizar un agrupamiento, guardar una imagen en formato png, guardar el archivo del modelo, y crear y guardar la tabla final en ClickHouse.
Primero, importemos las librerías que serán utilizadas:
Para este ejemplo utilizaremos la famosa tabla iris proporcionada por varias librerías como scikit-learn. Esta tabla está en la base ClickHouse dentro de Gaio.
Usaremos la función select_df para traerla a Python y luego aplicar el algoritmo K-Means proporcionado por la librería scikit-learn.
En el siguiente paso, visualizaremos los grupos encontrados por el modelo y guardaremos la figura en la carpeta assets.
Ahora guardaremos este modelo para reutilizarlo en otros momentos; para esto usaremos la librería joblib.
Ahora podemos enviar el DataFrame con la nueva columna generada por el modelo a ClickHouse para que pueda ser utilizado por otras tareas de Gaio. Para esto usaremos create_df e insert_df.
Última actualización