Exportar desde Langfuse Cloud
Siga esta guía para configurar una integración de Blob Storage en Langfuse Cloud y realizar exportaciones programadas. Puede programar la exportación de sus datos de trazas al almacenamiento de objetos con una frecuencia de hasta cada20 minutes, o bien con una programación hourly, daily o weekly. De forma predeterminada, cada exportación incluye sus observations (enriquecidas con atributos de trazas) y sus scores.
Estructura de los archivos exportados
La integración de Blob Storage de Langfuse Cloud escribe los datos en el bucket o contenedor de almacenamiento de destino con la siguiente estructura de directorios:Importar a ClickHouse Cloud
Una vez configurada una integración de Blob Storage en Langfuse Cloud, los datos de trazas se exportarán periódicamente, según una programación, al bucket o contenedor de almacenamiento de destino. Para importar esos datos a ClickHouse Cloud, puede usar ClickPipes y sus conectores administrados de almacenamiento de objetos:Crear un ClickPipe
Este ejemplo utiliza el ClickPipe de S3 para importar datos desde un bucket de S3 que recibe exportaciones programadas de Langfuse Cloud, y puede servir de modelo para cualquier destino de exportación en almacenamiento de objetos. Para obtener indicaciones específicas de cada fuente de datos, consulte la documentación de ClickPipes.1
Seleccione la fuente de datos
1. En ClickHouse Cloud, seleccione Data sources en el menú de navegación principal y haga clic en Create ClickPipe.
2. Haga clic en el mosaico Amazon S3. Este mosaico también le permite conectarse a otros servicios compatibles con S3 que no figuren en la interfaz de ClickPipes.


2
Configure la conexión
1. Complete los datos que ClickPipes necesita para conectarse y autenticarse en el bucket que recibe sus exportaciones de Langfuse Cloud.
3. Haga clic en Incoming data. ClickPipes obtendrá los metadatos de su bucket e inferirá el esquema de la tabla de destino en el siguiente paso.
-
Authentication method: el S3 ClickPipe admite credenciales de IAM (
Credentials) y autenticación basada en rol de IAM (IAM role). ClickPipes solo necesita acceso de lectura al bucket. Consulte la documentación de referencia para obtener más información sobre autenticación y permisos. -
S3 file path: dirija el ClickPipe a un subdirectorio y utilice el comodín
*para abarcar todos los archivos exportados. Debe crear un ClickPipe por subdirectorio, ya que los archivos exportados de cada subdirectorio tienen esquemas diferentes.Consulte la documentación de referencia para obtener más información sobre los patrones compatibles, incluido cómo hacer coincidir archivos en prefijos anidados.

3
Validar los datos entrantes
1. ClickPipes se conectará a su bucket y mostrará los archivos de la ruta especificada, además de inferir su formato. En este ejemplo, utilizamos el formato de exportación predeterminado de Langfuse Cloud (Parquet).
2. Haga clic en Parse information. ClickPipes utilizará un archivo de muestra para inferir el esquema de los datos exportados y asignará automáticamente los campos de origen a una tabla de destino de ClickHouse.

4
Configure el destino
1. En este paso, puede revisar el esquema inferido y personalizar la configuración de la tabla de destino, lo que incluye ajustar la asignación de tipos de datos, definir la clave de ordenación y elegir el motor de tabla.
En Upload data to, mantenga seleccionada la opción New table y configure:
Las ventanas de exportación de la integración de Blob Storage de Langfuse Cloud incluyen ambos extremos, por lo que un mismo registro puede aparecer en más de un archivo exportado. A menos que sus patrones de consulta analíticos sean idempotentes (p. ej.,

-
Database y Name: una base de datos dedicada para sus datos de Langfuse (p. ej.,
langfuse) y un nombre legible para humanos para la tabla de destino (p. ej.,scores). De forma predeterminada, ClickPipes usadefault.s3-<uuid>para evitar colisiones de nombres. -
Sorting key: la clave de ordenación de la tabla de destino, que determina cómo ClickHouse almacena los datos en disco. Para obtener un rendimiento óptimo, la clave de ordenación debe ajustarse a sus patrones de acceso a los datos, de modo que las consultas puedan evitar leer la mayor cantidad posible de datos.
Esta clave también se utiliza para la deduplicación en las tablas
ReplacingMergeTree, por lo que el conjunto de columnas debe identificar cada registro de forma única. Si carga varios proyectos de Langfuse en una misma tabla, antepongaproject_ida la clave de ordenación. Consulte la documentación de referencia para obtener orientación sobre cómo elegir una clave de ordenación. -
Partition by: déjelo en blanco, salvo que tenga previsto hacer caducar las trazas antiguas. En ClickHouse, el particionamiento se utiliza para la gestión de datos, no para optimizar consultas; la clave de ordenación sugerida ya descarta los datos irrelevantes en las consultas por rango temporal. Si necesita una política de retención, particione por la columna de tiempo (
toYYYYMM(start_time), otoYYYYMM(timestamp)parascores), de modo que hacer caducar un mes de trazas se reduzca a una única operaciónDROP PARTITION.
ReplacingMergeTree para garantizar la deduplicación, con updated_at como columna Version.
uniq(), max(), min()), debe gestionar la deduplicación en el modelo de datos posterior, utilizando ReplacingMergeTree como motor de destino.Deduplicación con ReplacingMergeTreeEste motor de tabla elimina los duplicados mediante fusiones en segundo plano. Para lograr una deduplicación completa en lectura (es decir, semántica de fusión en lectura), debe usar el modificador
FINAL (o agregaciones del tipo argMax()) al realizar la consulta.5
Configurar permisos
ClickPipes crea un usuario dedicado para escribir datos en la tabla de destino. Seleccione un rol para este usuario interno, ya sea un rol personalizado o uno de los roles predefinidos:
Haga clic en Complete setup para crear el ClickPipe.
Full access: con acceso completo al cluster. Es necesario si utiliza una vista materializada o un diccionario con la tabla de destino.Only destination table: con permisos deINSERTúnicamente sobre la tabla de destino.

6
Completar la configuración
¡Y eso es todo! ClickPipes realizará primero un backfill histórico de todos los archivos de la ruta especificada y, a continuación, comenzará a ingestar los archivos nuevos a medida que lleguen al bucket.
Repita los pasos de esta guía para cada subdirectorio que desee importar en ClickHouse Cloud.
