{"id":6762,"date":"2026-07-12T02:07:45","date_gmt":"2026-07-12T10:07:45","guid":{"rendered":"https:\/\/www.gudusoft.com\/trino-data-lineage\/"},"modified":"2026-07-12T02:07:45","modified_gmt":"2026-07-12T10:07:45","slug":"trino-data-lineage","status":"publish","type":"page","link":"https:\/\/www.gudusoft.com\/es\/linaje-de-datos-trino\/","title":{"rendered":"Linaje de datos de Trino y Presto: Linaje de columnas a trav\u00e9s de SQL federado"},"content":{"rendered":"<p><strong>Linaje de datos de Trino<\/strong> es el mapa a nivel de columna de c\u00f3mo fluyen los datos a trav\u00e9s de Trino (y Presto) SQL: qu\u00e9 columnas de origen en qu\u00e9 cat\u00e1logos alimentan cada columna de salida y a trav\u00e9s de qu\u00e9 uniones, funciones y filtros. Debido a que Trino es un motor de consulta federado, una sola instrucci\u00f3n puede leer desde <code>colmena<\/code>, <code>PostgreSQL<\/code>, y <code>iceberg<\/code> cat\u00e1logos a la vez, por lo que el linaje preciso debe resolver cada columna a su totalmente calificado <code>cat\u00e1logo.esquema.tabla.columna<\/code> identidad, no solo el nombre de una tabla. <a href=\"https:\/\/www.gudusoft.com\/es\/herramienta-de-linaje-de-datos-sql\/\">Flujo de SQL de Gudu<\/a> Esto se logra mediante analizadores de dialecto espec\u00edficos tanto para Trino como para Presto.<\/p>\n\n\n\n<div class=\"wp-block-group alignfull has-background is-layout-constrained\" style=\"background-color:#eef7fb;padding-top:24px;padding-bottom:24px\"><div class=\"wp-block-group__inner-container\">\n\n<p><strong>Compru\u00e9belo usted mismo en SQL:<\/strong> Pegue una consulta Trino federada en el <a href=\"https:\/\/sqlflow.gudusoft.com\/?utm_source=gudusoft&amp;utm_medium=website&amp;utm_campaign=trino-data-lineage\" target=\"_blank\" rel=\"noreferrer noopener\">Visualizador de linaje SQLFlow gratuito<\/a>Seleccione el dialecto Trino o Presto y obtenga un diagrama interactivo a nivel de columna.<\/p>\n\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Por qu\u00e9 la federaci\u00f3n dificulta el linaje de datos de Trino<\/h2>\n\n\n\n<p>En un almac\u00e9n convencional, el linaje reside dentro de una base de datos: cada tabla en una consulta pertenece al mismo sistema, y un nombre de dos partes como <code>pedidos de ventas<\/code> es inequ\u00edvoco. Trino rompe esa suposici\u00f3n. Su \u00fanico prop\u00f3sito es unir datos. <em>al otro lado de<\/em> sistemas: una tabla Hive en S3, una base de datos operativa PostgreSQL y una tabla Iceberg lakehouse pueden aparecer en el mismo <code>SELECCIONAR<\/code>.<\/p>\n\n\n\n<p>Eso crea tres problemas que la mayor\u00eda de las herramientas de linaje manejan mal:<\/p>\n\n\n\n<ul><li><strong>Conflictos de nombres entre cat\u00e1logos.<\/strong> <code>pedidos.de.ventas.de.colmena<\/code> y <code>postgresql.ventas.pedidos<\/code> Son tablas f\u00edsicas diferentes en sistemas diferentes. El linaje que elimina el calificador de cat\u00e1logo las fusiona en un solo nodo, y cualquier an\u00e1lisis de impacto posterior basado en \u00e9l es err\u00f3neo.<\/li>\n<li><strong>Calificaci\u00f3n parcial.<\/strong> Las consultas reales rara vez detallan nombres de tres partes en todas partes. Se basan en el cat\u00e1logo y esquema predeterminados de la sesi\u00f3n, alias y <code>USAR<\/code> declaraciones. El resolvedor tiene que reconstruir la identidad completa de cada referencia de columna a partir de ese contexto.<\/li>\n<li><strong>Delimitaci\u00f3n de fronteras entre sistemas en una sola declaraci\u00f3n.<\/strong> Un <code>INSERTAR EN iceberg....<\/code> que selecciona datos de Hive y PostgreSQL es un movimiento de datos <em>entre tres sistemas<\/em> expresado en una sola declaraci\u00f3n. El linaje a nivel de tabla indica los sistemas afectados; solo el linaje a nivel de columna indica qu\u00e9 columna de PostgreSQL termin\u00f3 en qu\u00e9 columna de Iceberg.<\/li><\/ul>\n\n\n\n<p>El resolvedor sem\u00e1ntico de SQLFlow mantiene el historial completo. <code>cat\u00e1logo.esquema.tabla.columna<\/code> Se establece una ruta en cada nodo del gr\u00e1fico de linaje, de modo que las columnas de cat\u00e1logos cruzados se mantienen distintas y rastreables de principio a fin.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Un ejemplo pr\u00e1ctico: destino Iceberg, Hive y fuentes PostgreSQL.<\/h2>\n\n\n\n<p>Aqu\u00ed se muestra una escritura federada t\u00edpica: la creaci\u00f3n de una tabla de valor de cliente en un cat\u00e1logo Iceberg a partir de una base de datos PostgreSQL operativa unida al historial de pedidos de Hive:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>INSERT INTO iceberg.analytics.customer_value SELECT c.customer_id, lower(c.email) AS email, sum(o.order_total) AS lifetime_value, count(*) AS order_count FROM postgresql.crm.customers AS c JOIN hive.sales.orders AS o ON c.customer_id = o.customer_id WHERE o.order_status = &#039;COMPLETED&#039; GROUP BY c.customer_id, lower(c.email);<\/code><\/pre>\n\n\n\n<p>Ejecute esto a trav\u00e9s de SQLFlow con el dialecto Trino seleccionado y el diagrama muestra, por columna de salida:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Columna objetivo (iceberg.analytics.customer_value)<\/th><th>Columna de origen<\/th><th>Relaci\u00f3n<\/th><\/tr><\/thead><tbody>\n<tr><td><code>ID del cliente<\/code><\/td><td><code>postgresql.crm.clientes.id_cliente<\/code><\/td><td>Directo, de paso<\/td><\/tr>\n<tr><td><code>correo electr\u00f3nico<\/code><\/td><td><code>Correo electr\u00f3nico de clientes de postgresql.crm<\/code><\/td><td>Directo, a trav\u00e9s de <code>m\u00e1s bajo()<\/code><\/td><\/tr>\n<tr><td><code>valor_de_vida_de_vida<\/code><\/td><td><code>colmena.ventas.pedidos.total_de_pedidos<\/code><\/td><td>Directo, a trav\u00e9s de <code>suma()<\/code><\/td><\/tr>\n<tr><td><code>n\u00famero_de_pedidos<\/code><\/td><td><code>pedidos.de.ventas.de.colmena<\/code> filas<\/td><td>Directo, a trav\u00e9s de <code>contar(*)<\/code><\/td><\/tr>\n<tr><td>todas las columnas<\/td><td><code>colmena.ventas.pedidos.estado_del_pedido<\/code><\/td><td>Indirecto (filtro WHERE)<\/td><\/tr>\n<tr><td>todas las columnas<\/td><td><code>o.id_cliente<\/code> \/ <code>c.id_cliente<\/code><\/td><td>Indirecto (condici\u00f3n JOIN, GROUP BY)<\/td><\/tr>\n<\/tbody><\/table><\/figure>\n\n\n\n<p>F\u00edjese en las dos \u00faltimas filas. <code>estado_del_pedido<\/code> nunca llega a la salida, pero cambiar c\u00f3mo se llena cambia cada n\u00famero en <code>valor_del_cliente<\/code>. SQLFlow modela esto como <strong>linaje indirecto (de impacto)<\/strong>, un tipo de relaci\u00f3n independiente y conmutable junto con el flujo de datos directo. La mayor\u00eda de las herramientas de linaje no hacen esta distinci\u00f3n, que es precisamente la informaci\u00f3n que necesita antes de modificar una columna de filtro en una tabla Hive compartida.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Trino y Presto son dialectos diferentes: SQLFlow analiza ambos.<\/h2>\n\n\n\n<p>Trino se bifurc\u00f3 de Presto (como PrestoSQL) y fue renombrado en 2020; desde entonces, los dos dialectos han divergido. SQLFlow se distribuye <strong>Analizadores sint\u00e1cticos separados espec\u00edficos para cada dialecto, para Trino y para Presto.<\/strong>Entre sus 39 dialectos compatibles, no se trata de una gram\u00e1tica ANSI gen\u00e9rica con una bandera de compatibilidad. Si su infraestructura ejecuta PrestoDB junto con un cl\u00faster Trino m\u00e1s reciente, seleccione el dialecto correspondiente para cada fuente y ambas se analizar\u00e1n correctamente.<\/p>\n\n\n\n<p>Los analizadores provienen del General SQL Parser (GSP), un front-end de compilador SQL comercial desarrollado desde mediados de la d\u00e9cada de 2000 y validado contra aproximadamente 13.600 conjuntos de prueba por dialecto. GSP construye un modelo sem\u00e1ntico completo de cada instrucci\u00f3n, resolviendo referencias de columna a trav\u00e9s de CTEs, subconsultas, vistas y <code>SELECCIONAR *<\/code> expansi\u00f3n \u2014 y su analizador de flujo de datos extrae las relaciones de origen a destino. La expansi\u00f3n en estrella es m\u00e1s importante en Trino que en casi cualquier otro lugar: <code>SELECCIONAR *<\/code> Una uni\u00f3n federada extrae columnas de varios sistemas, y para expandirla correctamente se requieren los metadatos del esquema de cada cat\u00e1logo, que SQLFlow puede ingerir junto con la consulta SQL.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">C\u00f3mo generar el linaje de Trino con SQLFlow<\/h2>\n\n\n\n<ol><li><strong>Recopilar el SQL.<\/strong> Paste individual queries, upload files of ETL scripts and view definitions, or pull metadata over JDBC. For whole-estate coverage, the Grabit\/SQLFlow-ingester utility extracts metadata in batch.<\/li>\n<li><strong>Elige el dialecto.<\/strong> Trino o Presto, seg\u00fan la fuente. Si la misma canalizaci\u00f3n tambi\u00e9n contiene trabajos de Hive DDL o Spark SQL, analice cada uno en su propio dialecto; SQLFlow los admite todos, y las implementaciones empresariales almacenan los resultados en un repositorio de linaje persistente.<\/li>\n<li><strong>Explora y exporta.<\/strong> Rastrea cualquier columna aguas arriba o aguas abajo en el diagrama interactivo, activa o desactiva el linaje indirecto y exporta como JSON, CSV o PNG, o consulta el gr\u00e1fico a trav\u00e9s de la API REST. Desde la versi\u00f3n 8.2.3 tambi\u00e9n puedes hacer preguntas en lenguaje sencillo (&quot;de qu\u00e9 tablas de Iceberg dependen <code>Correo electr\u00f3nico de clientes de postgresql.crm<\/code>?\u201d); cada tabla y columna en la respuesta de la IA se valida contra el gr\u00e1fico analizado antes de su visualizaci\u00f3n.<\/li><\/ol>\n\n\n\n<p>A escala empresarial, SQLFlow realiza escaneos por lotes de conjuntos de m\u00e1s de 100 bases de datos y m\u00e1s de un mill\u00f3n de columnas, ejecuta escaneos incrementales, mantiene un repositorio de linaje persistente y exporta a DataHub, Microsoft Purview y OpenMetadata, de modo que el linaje de Trino se incorpora al cat\u00e1logo que su equipo ya utiliza.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">An\u00e1lisis SQL est\u00e1tico frente a linaje de eventos en tiempo de ejecuci\u00f3n<\/h2>\n\n\n\n<p>Otra forma com\u00fan de obtener el linaje de Trino es mediante la captura en tiempo de ejecuci\u00f3n: se interceptan los eventos de consulta del motor y se emite el linaje para cada instrucci\u00f3n ejecutada (el ecosistema OpenLineage funciona de esta manera). La captura en tiempo de ejecuci\u00f3n es realmente eficaz para registrar lo que se ejecut\u00f3, con el contexto real de la sesi\u00f3n. Su limitaci\u00f3n radica en la cobertura y la profundidad: solo registra las consultas que se ejecutaron durante el per\u00edodo de captura y requiere la instrumentaci\u00f3n de cada cl\u00faster.<\/p>\n\n\n\n<p>El an\u00e1lisis est\u00e1tico, el enfoque de SQLFlow, analiza el propio c\u00f3digo SQL. Esto cubre los trabajos programados que a\u00fan no se han ejecutado, las definiciones de vistas y el c\u00f3digo del repositorio en revisi\u00f3n, y no necesita ning\u00fan agente en el cl\u00faster y nunca lee los datos de las filas de la tabla. En entornos regulados, <a href=\"https:\/\/www.gudusoft.com\/es\/version-local-de-sqlflow\/\">Edici\u00f3n local<\/a> Docker\/Kubernetes mantiene incluso el texto SQL dentro de la red. Muchos equipos utilizan ambos: eventos en tiempo de ejecuci\u00f3n para la monitorizaci\u00f3n operativa y an\u00e1lisis est\u00e1tico para un an\u00e1lisis de impacto completo previo al despliegue.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Linaje en el resto de la pila<\/h2>\n\n\n\n<p>Trino rara vez cuenta toda la historia. Las tablas de Hive que consulta generalmente se cargaron mediante trabajos de Hive o Spark, y los resultados a menudo alimentan almacenes posteriores. SQLFlow analiza esas capas con el mismo motor; consulte las gu\u00edas dedicadas a <a href=\"https:\/\/www.gudusoft.com\/es\/linaje-de-datos-de-la-colmena\/\">Linaje de datos de Hive<\/a> y <a href=\"https:\/\/www.gudusoft.com\/es\/linaje-de-datos-de-clickhouse\/\">Linaje de datos de ClickHouse<\/a>o el completo <a href=\"https:\/\/www.gudusoft.com\/es\/herramienta-de-linaje-de-datos-sql\/\">Descripci\u00f3n general de la herramienta de linaje de datos SQL<\/a> Cubre los 39 dialectos. Con cada capa analizada en el repositorio de linaje persistente, puede rastrear una columna desde el trabajo de Spark que escribi\u00f3 la tabla de Hive, a trav\u00e9s de la consulta federada de Trino, hasta el destino de Iceberg.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Preguntas frecuentes<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfSQLFlow es compatible con Trino y Presto?<\/h3>\n\n\n<p>S\u00ed. Trino y Presto son dos de los 39 analizadores sint\u00e1cticos espec\u00edficos de dialecto de SQLFlow. Seleccione el dialecto que coincida con su motor; si ejecuta ambos, analice cada fuente con su propio dialecto.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfPuede SQLFlow rastrear el linaje a trav\u00e9s de los cat\u00e1logos de Trino?<\/h3>\n\n\n<p>S\u00ed. SQLFlow resuelve cada columna a su identidad completa de cat\u00e1logo.esquema.tabla.columna, por lo que una consulta que combine los cat\u00e1logos de Hive, PostgreSQL e Iceberg produce un linaje que mantiene las columnas de cada sistema distintas, incluso para las sentencias INSERT que mueven datos entre cat\u00e1logos.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfSQLFlow necesita acceso a mi cl\u00faster o datos de Trino?<\/h3>\n\n\n<p>No. SQLFlow realiza un an\u00e1lisis est\u00e1tico del c\u00f3digo SQL, utilizando opcionalmente metadatos del esquema para resolver nombres y expandir SELECT *. Nunca lee filas de tablas y no necesita ning\u00fan agente en el cl\u00faster. La edici\u00f3n local mantiene el texto SQL completamente dentro de su red.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfQu\u00e9 informaci\u00f3n muestra SQLFlow para las columnas en las cl\u00e1usulas WHERE y JOIN?<\/h3>\n\n\n<p>Aparecen como linaje indirecto (de impacto): un tipo de relaci\u00f3n independiente para las columnas que influyen en el resultado sin aparecer en la salida. Puedes activar o desactivar el linaje indirecto en el diagrama, una distinci\u00f3n que la mayor\u00eda de las herramientas de linaje no tienen en cuenta.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfPuedo exportar el linaje de Trino a mi cat\u00e1logo de datos?<\/h3>\n\n\n<p>S\u00ed. Las implementaciones empresariales incluyen adaptadores de exportaci\u00f3n para DataHub, Microsoft Purview y OpenMetadata, adem\u00e1s de exportaci\u00f3n en formato JSON y CSV y una API REST para integraciones personalizadas.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfCu\u00e1nto cuesta SQLFlow?<\/h3>\n\n\n<p>SQLFlow Cloud comienza gratis; la versi\u00f3n premium cuesta $49.99\/mes. SQLFlow On-Premise cuesta $500\/mes o $4,800 por \u00fanica vez por tipo de base de datos seleccionado, instalable en dos servidores. Ver <a href=\"https:\/\/www.gudusoft.com\/es\/precios\/\">precios<\/a> Para m\u00e1s detalles.<\/p>\n\n\n\n<div class=\"wp-block-group alignfull has-background is-layout-constrained\" style=\"background-color:#60d5f6;padding-top:32px;padding-bottom:32px\"><div class=\"wp-block-group__inner-container\">\n\n<h2 class=\"wp-block-heading\">Rastrea tus consultas federadas ahora.<\/h2>\n\n\n<p>Pegue una consulta Trino que abarque varios cat\u00e1logos en el visualizador gratuito y vea el linaje a nivel de columna en todos los cat\u00e1logos que toca.<\/p>\n\n\n<div class=\"wp-block-buttons is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/sqlflow.gudusoft.com\/?utm_source=gudusoft&amp;utm_medium=website&amp;utm_campaign=trino-data-lineage\" target=\"_blank\" rel=\"noreferrer noopener\">Prueba SQLFlow gratis<\/a><\/div>\n<\/div>\n\n\n<div class=\"wp-block-buttons is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/www.gudusoft.com\/es\/contacto\/\">Solicite una demostraci\u00f3n para empresas.<\/a><\/div>\n<\/div>\n\n<\/div><\/div>\n\n\n\n<script type=\"application\/ld+json\">{\n    \"@context\": \"https:\\\/\\\/schema.org\",\n    \"@graph\": [\n        {\n            \"@type\": \"SoftwareApplication\",\n            \"name\": \"Gudu SQLFlow\",\n            \"applicationCategory\": \"DeveloperApplication\",\n            \"applicationSubCategory\": \"SQL Data Lineage Tool\",\n            \"operatingSystem\": \"Web, Linux, Windows, macOS\",\n            \"url\": \"https:\\\/\\\/www.gudusoft.com\\\/trino-data-lineage\\\/\",\n            \"description\": \"Automated data lineage for Trino and Presto SQL: dialect-specific parsers resolve fully-qualified cross-catalog columns in federated queries and produce interactive column-level lineage diagrams.\",\n            \"featureList\": \"Trino dialect parser, Presto dialect parser, cross-catalog column resolution, column-level lineage, indirect\\\/impact lineage, SELECT * expansion, JSON\\\/CSV\\\/PNG export, REST API, DataHub\\\/Purview\\\/OpenMetadata export, AI lineage query\",\n            \"softwareVersion\": \"8.2.3\",\n            \"offers\": [\n                {\n                    \"@type\": \"Offer\",\n                    \"name\": \"SQLFlow Cloud Free\",\n                    \"price\": \"0\",\n                    \"priceCurrency\": \"USD\"\n                },\n                {\n                    \"@type\": \"Offer\",\n                    \"name\": \"SQLFlow Cloud Premium\",\n                    \"price\": \"49.99\",\n                    \"priceCurrency\": \"USD\",\n                    \"priceSpecification\": {\n                        \"@type\": \"UnitPriceSpecification\",\n                        \"price\": \"49.99\",\n                        \"priceCurrency\": \"USD\",\n                        \"billingIncrement\": 1,\n                        \"unitText\": \"MONTH\"\n                    }\n                },\n                {\n                    \"@type\": \"Offer\",\n                    \"name\": \"SQLFlow On-Premise\",\n                    \"price\": \"4800\",\n                    \"priceCurrency\": \"USD\"\n                }\n            ],\n            \"publisher\": {\n                \"@type\": \"Organization\",\n                \"name\": \"Gudu Software\",\n                \"url\": \"https:\\\/\\\/www.gudusoft.com\\\/\"\n            }\n        },\n        {\n            \"@type\": \"FAQPage\",\n            \"mainEntity\": [\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"Does SQLFlow support both Trino and Presto?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"Yes. Trino and Presto are two of SQLFlow's 39 dialect-specific parsers. Select the dialect that matches your engine; if you run both, analyze each source with its own dialect.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"Can SQLFlow trace lineage across Trino catalogs?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"Yes. SQLFlow resolves every column to its fully-qualified catalog.schema.table.column identity, so a query joining hive, postgresql, and iceberg catalogs produces lineage that keeps each system's columns distinct, including for INSERT statements that move data between catalogs.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"Does SQLFlow need access to my Trino cluster or data?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"No. SQLFlow performs static analysis of SQL code, optionally using schema metadata to resolve names and expand SELECT *. It never reads table rows and needs no agent on the cluster. The On-Premise edition keeps SQL text inside your network entirely.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"What does SQLFlow show for columns in WHERE and JOIN clauses?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"They appear as indirect (impact) lineage: a separate relationship type for columns that shape the result without landing in the output. You can toggle indirect lineage on and off in the diagram, a distinction most lineage tools do not make at all.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"Can I export Trino lineage to my data catalog?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"Yes. Enterprise deployments include export adapters for DataHub, Microsoft Purview, and OpenMetadata, plus JSON and CSV export and a REST API for custom integrations.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"How much does SQLFlow cost?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"SQLFlow Cloud starts free; premium is $49.99\\\/month. SQLFlow On-Premise is $500\\\/month or $4,800 one-time per selected database type, installable on two servers.\"\n                    }\n                }\n            ]\n        }\n    ]\n}<\/script>","protected":false},"excerpt":{"rendered":"<p>Trino data lineage is the column-level map of how data flows through Trino (and Presto) SQL: which source columns in which catalogs feed each output column, and through which joins, functions, and filters. Because Trino is a federated query engine, a single statement can read from hive, postgresql, and iceberg catalogs at once \u2014 so accurate lineage must resolve every column to its fully-qualified catalog.schema.table.column identity, not just a table name. Gudu SQLFlow does this with dedicated dialect parsers for both Trino and Presto. See it on your own SQL: paste a federated Trino query into the free SQLFlow lineage\u2026<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":5}},"_links":{"self":[{"href":"https:\/\/www.gudusoft.com\/es\/wp-json\/wp\/v2\/pages\/6762"}],"collection":[{"href":"https:\/\/www.gudusoft.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.gudusoft.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.gudusoft.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gudusoft.com\/es\/wp-json\/wp\/v2\/comments?post=6762"}],"version-history":[{"count":0,"href":"https:\/\/www.gudusoft.com\/es\/wp-json\/wp\/v2\/pages\/6762\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.gudusoft.com\/es\/wp-json\/wp\/v2\/media?parent=6762"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}