{"id":6750,"date":"2026-07-12T02:06:00","date_gmt":"2026-07-12T10:06:00","guid":{"rendered":"https:\/\/www.gudusoft.com\/bigquery-data-lineage\/"},"modified":"2026-07-12T02:06:00","modified_gmt":"2026-07-12T10:06:00","slug":"bigquery-data-lineage","status":"publish","type":"page","link":"https:\/\/www.gudusoft.com\/es\/linaje-de-datos-de-bigquery\/","title":{"rendered":"Linaje de datos de BigQuery: Linaje a nivel de columna para Google BigQuery SQL"},"content":{"rendered":"<p><strong>Linaje de datos de BigQuery<\/strong> es el mapa de c\u00f3mo se mueven los datos a trav\u00e9s de su proyecto de BigQuery: qu\u00e9 tablas y columnas de origen alimentan cada tabla derivada, vista y consulta programada, y qu\u00e9 expresiones transforman los datos en el proceso. Dataplex de Google captura autom\u00e1ticamente el linaje de los trabajos de BigQuery a nivel de tabla; para ver qu\u00e9 <em>columnas<\/em> Para saber qu\u00e9 funciones y uniones usar, tienes que analizar el propio SQL. <strong>Flujo de SQL de Gudu<\/strong> hace exactamente eso, con un analizador de dialectos de BigQuery dedicado que resuelve anidados <code>ESTRUCTURA<\/code> campos, <code>DESANIDO<\/code>, expansi\u00f3n en estrella y visualizaci\u00f3n de cadenas hasta la granularidad de columna.<\/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>Pru\u00e9balo en 30 segundos:<\/strong> Pegue cualquier consulta de BigQuery en el <a href=\"https:\/\/sqlflow.gudusoft.com\/?utm_source=gudusoft&amp;utm_medium=website&amp;utm_campaign=bigquery-data-lineage\" target=\"_blank\" rel=\"noreferrer noopener\">Visualizador de linaje SQLFlow gratuito<\/a>Seleccione el dialecto de BigQuery y obtenga un diagrama de linaje interactivo a nivel de columna. La edici\u00f3n en la nube tiene un nivel gratuito.<\/p>\n\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Por qu\u00e9 el linaje de BigQuery es m\u00e1s dif\u00edcil de lo que parece<\/h2>\n\n\n\n<p>El SQL de BigQuery no es SQL ANSI gen\u00e9rico. Tres caracter\u00edsticas en particular rompen con las herramientas de linaje que se basan en una gram\u00e1tica \u00fanica para todos:<\/p>\n\n\n\n<ul><li><strong>Columnas anidadas y repetidas.<\/strong> Una sola columna de BigQuery puede ser una <code>ESTRUCTURA<\/code> que contiene otros campos, o un <code>FORMACI\u00d3N<\/code> de estructuras. El verdadero linaje tiene que llegar al interior: <code>pedidos.cliente.correo electr\u00f3nico<\/code> es un nodo de linaje diferente que <code>pedidos.cliente.pa\u00eds<\/code>, aunque ambos viven en una misma columna f\u00edsica.<\/li>\n<li><strong><code>DESANIDO<\/code>.<\/strong> Aplanar un campo repetido convierte una fila en muchas e introduce una relaci\u00f3n derivada en medio de la consulta. Un analizador que no modela <code>DESANIDO<\/code> Se pierde la conexi\u00f3n entre el alias aplanado y el campo de matriz del que proviene.<\/li>\n<li><strong>Expansi\u00f3n estelar.<\/strong> <code>SELECCIONAR *<\/code> El uso de una cadena de vistas implica que las columnas de salida no se escriben en ninguna parte del texto de la consulta. Para resolverlas, se requieren las definiciones de la tabla y la vista, no solo la instrucci\u00f3n que tiene delante.<\/li><\/ul>\n\n\n\n<p>SQLFlow incluye un analizador espec\u00edfico de BigQuery (uno de <a href=\"https:\/\/www.gudusoft.com\/es\/herramienta-de-linaje-de-datos-sql\/\">39 analizadores sint\u00e1cticos espec\u00edficos de cada dialecto<\/a> en el producto, no una sola gram\u00e1tica gen\u00e9rica) que maneja los tres. Resuelve cada referencia de columna a trav\u00e9s de CTEs, subconsultas, vistas y expansi\u00f3n en estrella, y modela anidados <code>ESTRUCTURA<\/code> campos como nodos de linaje de primera clase.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Dataplex te proporciona el linaje de trabajos a nivel de tabla. \u00bfY luego qu\u00e9?<\/h2>\n\n\n\n<p>Dataplex (la capa de gobernanza de datos de Google Cloud) es realmente bueno en lo que hace: observa los trabajos de BigQuery mientras se ejecutan y registra qu\u00e9 tablas ley\u00f3 y escribi\u00f3 cada trabajo. Si desea saber qu\u00e9 tablas llena una consulta programada <code>dw.ingresos_diarios<\/code> de <code>pedidos crudos<\/code>Dataplex ya te lo dice.<\/p>\n\n\n\n<p>Lo que la observaci\u00f3n del trabajo en tiempo de ejecuci\u00f3n no puede revelar es la l\u00f3gica de transformaci\u00f3n entre esas tablas: qu\u00e9 columnas de origen alimentan qu\u00e9 columnas de salida, a trav\u00e9s de qu\u00e9 expresiones, filtros y uniones. Esa informaci\u00f3n solo existe en el texto SQL, por lo que extraerla requiere analizar SQL. Los dos enfoques responden a preguntas diferentes:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Pregunta<\/th><th>Linaje de trabajos de Dataplex<\/th><th>Linaje analizado por SQLFlow<\/th><\/tr><\/thead><tbody>\n<tr><td>\u00bfQu\u00e9 tablas afecta este trabajo?<\/td><td>S\u00ed, autom\u00e1ticamente, por cada ejecuci\u00f3n de trabajo.<\/td><td>S\u00ed, desde SQL<\/td><\/tr>\n<tr><td>\u00bfQu\u00e9 columnas alimentan? <code>ingresos_diarios.total<\/code>?<\/td><td>No \u2014 granularidad de la tabla<\/td><td>S\u00ed, por columna de salida<\/td><\/tr>\n<tr><td>\u00bfQu\u00e9 expresi\u00f3n calcula cada columna de salida?<\/td><td>No<\/td><td>S\u00ed: funciones, conversiones, agregaciones<\/td><\/tr>\n<tr><td>\u00bfQu\u00e9 columnas solo filtran o unen (linaje indirecto)?<\/td><td>No<\/td><td>S\u00ed, como una capa independiente que se puede activar o desactivar.<\/td><\/tr>\n<tr><td>Linaje de SQL que a\u00fan no se ha ejecutado (revisi\u00f3n de c\u00f3digo, migraci\u00f3n)<\/td><td>No, necesita un trabajo ejecutado<\/td><td>S\u00ed, an\u00e1lisis est\u00e1tico del texto SQL.<\/td><\/tr>\n<\/tbody><\/table><\/figure>\n\n\n\n<p>Los equipos suelen usar ambos: Dataplex para el inventario de trabajos siempre activo y el an\u00e1lisis SQL cuando necesitan responder a preguntas como &quot;\u00bfqu\u00e9 falla si cambio esta columna?&quot; o &quot;\u00bfde d\u00f3nde proviene exactamente este n\u00famero?&quot; con precisi\u00f3n de columna.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ejemplo pr\u00e1ctico: CREATE TABLE AS SELECT con UNNEST<\/h2>\n\n\n\n<p>Aqu\u00ed hay un patr\u00f3n t\u00edpico de BigQuery: construir una tabla de ingresos plana a partir de una tabla de pedidos con una repetici\u00f3n <code>art\u00edculos de l\u00ednea<\/code> estructura.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>CREATE TABLE dw.order_line_revenue AS SELECT o.order_id, o.customer.email AS customer_email, li.product_id, li.qty * li.unit_price AS line_revenue FROM raw.orders AS o, UNNEST(o.line_items) AS li WHERE o.status = &#039;COMPLETE&#039;;<\/code><\/pre>\n\n\n\n<p>Introduzca esto en SQLFlow y el linaje a nivel de columna que produce es:<\/p>\n\n\n\n<ul><li><code>correo electr\u00f3nico_del_cliente_ingresos_de_l\u00ednea_de_pedido<\/code> proviene del campo anidado <code>correo electr\u00f3nico.de.cliente.de.pedidos.en bruto<\/code> \u2014 un miembro de la estructura, no el conjunto <code>cliente<\/code> columna.<\/li>\n<li><code>ingresos_l\u00ednea_pedido.ingresos_l\u00ednea<\/code> proviene de <code>raw.orders.line_items.qty<\/code> y <code>raw.orders.line_items.unit_price<\/code>, a trav\u00e9s del <code>DESANIDO<\/code> alias <code>li<\/code> y una multiplicaci\u00f3n. Ambos campos de origen se encuentran dentro de una estructura repetida; SQLFlow realiza un seguimiento del aplanamiento.<\/li>\n<li><code>estado.de.pedidos.crudos<\/code> aparece como <strong>linaje indirecto<\/strong>: nunca llega a la salida, pero el <code>D\u00d3NDE<\/code> El filtro implica que se da forma a cada fila del resultado. SQLFlow modela el flujo de datos directo y la influencia indirecta (columnas WHERE, JOIN, GROUP BY) como tipos de relaciones distintos que se pueden activar o desactivar por separado en el diagrama, una distinci\u00f3n que la mayor\u00eda de las herramientas de linaje no hacen en absoluto.<\/li><\/ul>\n\n\n\n<p>El linaje indirecto importa m\u00e1s de lo que parece a primera vista. Si alguien cambia los valores de enumeraci\u00f3n en <code>estado<\/code>Seg\u00fan una herramienta de linaje puramente directo, <code>ingresos de l\u00ednea<\/code> no se ve afectado. No es as\u00ed: cada cifra de ingresos posteriores cambia. El an\u00e1lisis de impacto sin linaje indirecto es un an\u00e1lisis de impacto con puntos ciegos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Seguimiento de consultas programadas y cadenas de vistas<\/h2>\n\n\n\n<p>En la mayor\u00eda de los entornos de BigQuery, el linaje interesante no se resume en una sola instrucci\u00f3n, sino en una cadena: tablas sin procesar, luego una capa de vistas, despu\u00e9s una consulta programada que materializa una tabla de informes y, finalmente, m\u00e1s vistas. Cualquier enlace individual es f\u00e1cil de leer; la ruta completa desde una columna de origen hasta un campo del panel de control, no lo es.<\/p>\n\n\n\n<p>SQLFlow analiza todo el conjunto en conjunto. Proporci\u00f3nele el DDL de la vista m\u00e1s el SQL de la consulta programada (pegar, cargar archivos, metadatos en vivo a trav\u00e9s de JDBC, un manifiesto dbt o extracci\u00f3n de metadatos de Grabit) y une la cadena: las referencias de vista en vista se resuelven, <code>SELECCIONAR *<\/code> Se expande en funci\u00f3n de los esquemas reales en cada capa, y el diagrama resultante permite hacer clic en cualquier columna de salida y recorrer todas las vistas intermedias hasta las columnas de origen en las tablas originales. La exportaci\u00f3n se realiza en formato JSON, CSV o PNG, o mediante programaci\u00f3n a trav\u00e9s de la API REST; las implementaciones empresariales env\u00edan el linaje a DataHub, Microsoft Purview u OpenMetadata.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Diagramas ER de restricciones NO APLICABLES<\/h2>\n\n\n\n<p>BigQuery admite claves primarias y for\u00e1neas solo como <code>NO SE APLICA<\/code> Restricciones: se declaran en el DDL para el optimizador y para la documentaci\u00f3n, pero nunca se verifican al escribir el c\u00f3digo. Debido a que no se aplican, muchos equipos asumen que son metadatos in\u00fatiles. No lo son; son precisamente las declaraciones de relaciones que necesita un diagrama ER.<\/p>\n\n\n\n<p>La inferencia ER de SQLFlow entiende BigQuery <code>NO SE APLICA<\/code> Modismo PK\/FK: ejecute su DDL a trav\u00e9s de \u00e9l y dibujar\u00e1 el diagrama entidad-relaci\u00f3n a partir de restricciones como <code>AGREGAR CLAVE PRIMARIA (order_id) NO ES OBLIGATORIO<\/code> y la coincidencia <code>CLAVE EXTRANJERA ... REFERENCIAS ... NO SE APLICAN<\/code> declaraciones. El resultado es un modelo ER de su almac\u00e9n generado directamente a partir del DDL que ya tiene, para esquemas cuya documentaci\u00f3n de relaciones probablemente no exista en ning\u00fan otro lugar.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfPara qu\u00e9 utilizan los equipos el linaje de datos de BigQuery?<\/h2>\n\n\n\n<ul><li><strong>An\u00e1lisis de impacto antes de los cambios de esquema:<\/strong> encuentra cada consulta programada, vista e informe que una columna realmente alimenta, incluyendo a trav\u00e9s de <code>DESANIDO<\/code> y el acceso a la estructura, antes de cambiarle el nombre o volver a escribirla.<\/li>\n<li><strong>Correcci\u00f3n de errores num\u00e9ricos:<\/strong> Recorra la cadena de vistas en sentido inverso, desde una m\u00e9trica del panel de control, hasta los campos y expresiones de origen exactos que la generaron.<\/li>\n<li><strong>Planificaci\u00f3n de la migraci\u00f3n:<\/strong> Al mover elementos hacia o desde BigQuery, el gr\u00e1fico de dependencias le indica en qu\u00e9 orden mover los elementos y qu\u00e9 puede dejar atr\u00e1s de forma segura. SQLFlow crea el mismo gr\u00e1fico a nivel de columna para <a href=\"https:\/\/www.gudusoft.com\/es\/linaje-de-datos-de-copos-de-nieve\/\">Copo de nieve<\/a> y <a href=\"https:\/\/www.gudusoft.com\/es\/linaje-de-datos-de-desplazamiento-al-rojo\/\">Amazon Redshift<\/a>De esta forma, las migraciones entre almacenes de datos se pueden mapear en ambos lados con una sola herramienta.<\/li>\n<li><strong>Cumplimiento y auditor\u00eda:<\/strong> Demostrar qu\u00e9 campos de origen se incorporan a una salida regulada con la granularidad de columna que solicitan los auditores, generada a partir del SQL en lugar de mantenerse manualmente.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Privacidad, implementaci\u00f3n y precios<\/h2>\n\n\n\n<p>SQLFlow realiza an\u00e1lisis est\u00e1tico del c\u00f3digo SQL y metadatos del esquema \u00fanicamente. Nunca lee las filas de sus tablas de BigQuery y no necesita una cuenta de servicio con acceso a datos: el texto SQL y DDL son suficientes. SQLFlow Cloud tiene un nivel gratuito (el premium cuesta $49.99\/mes). Para entornos regulados, <a href=\"https:\/\/www.gudusoft.com\/es\/version-local-de-sqlflow\/\">SQLFlow local<\/a> Se ejecuta en Docker o Kubernetes dentro de su propia red, aislado de la red si es necesario, a $500\/mes o $4,800 por \u00fanica vez por tipo de base de datos seleccionado; los detalles completos est\u00e1n en el <a href=\"https:\/\/www.gudusoft.com\/es\/precios\/\">p\u00e1gina de precios<\/a>Las implementaciones empresariales realizan escaneos por lotes de entornos con m\u00e1s de 100 bases de datos y m\u00e1s de un mill\u00f3n de columnas, con escaneos incrementales y un repositorio de linaje persistente.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Preguntas frecuentes<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfAcaso Dataplex no me proporciona ya el linaje de BigQuery?<\/h3>\n\n\n<p>S\u00ed, a nivel de tabla. Dataplex registra autom\u00e1ticamente qu\u00e9 tablas lee y escribe cada trabajo de BigQuery, lo que constituye un inventario de trabajos muy completo. Sin embargo, no extrae la l\u00f3gica de transformaci\u00f3n interna del SQL (qu\u00e9 columnas alimentan qu\u00e9, mediante qu\u00e9 expresiones). Para ello, se necesita una herramienta que analice el SQL, como hace SQLFlow.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfPuede SQLFlow rastrear el linaje a trav\u00e9s de columnas STRUCT y ARRAY?<\/h3>\n\n\n<p>S\u00ed. El analizador de BigQuery modela los campos de estructura anidados como nodos de linaje individuales, por lo que <code>correo electr\u00f3nico del cliente<\/code> y <code>cliente.pa\u00eds<\/code> tienen linaje separado y rastrea campos a trav\u00e9s de <code>DESANIDO<\/code> aplanamiento de columnas repetidas.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfC\u00f3mo maneja SQLFlow la instrucci\u00f3n SELECT * en las vistas de BigQuery?<\/h3>\n\n\n<p>Las expresiones de estrella se expanden contra las definiciones reales de tabla y vista, por lo que cada columna impl\u00edcita obtiene un linaje expl\u00edcito. Esto funciona a trav\u00e9s de cadenas de vistas de varias capas, donde las columnas detr\u00e1s de una <code>SELECCIONAR *<\/code> Puede definirse desde varias perspectivas anteriores.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfPuede mapear el linaje a trav\u00e9s de consultas y vistas programadas de forma conjunta?<\/h3>\n\n\n<p>S\u00ed. Analice la consulta SQL programada y vea el DDL como un solo trabajo y SQLFlow une la cadena de extremo a extremo, de modo que pueda rastrear una columna de informe a trav\u00e9s de la consulta de materializaci\u00f3n y cada vista intermedia hasta las columnas de origen sin procesar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfSQLFlow necesita acceso a mis datos de BigQuery?<\/h3>\n\n\n<p>No. Se trata de un an\u00e1lisis est\u00e1tico: texto SQL m\u00e1s metadatos de esquema opcionales. Los datos de las filas de la tabla nunca se leen. Con la instalaci\u00f3n local, incluso el texto SQL permanece dentro de su red.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfCu\u00e1nto cuesta SQLFlow?<\/h3>\n\n\n<p>SQLFlow Cloud es gratuito; las cuentas premium cuestan 49,99 \u20ac al mes. SQLFlow On-Premise cuesta 500 \u20ac al mes o 4800 \u20ac por \u00fanica vez seg\u00fan el tipo de base de datos seleccionado, y se puede instalar en dos servidores.<\/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\">Vea ahora su historial de BigQuery.<\/h2>\n\n\n<p>Pegue una consulta de BigQuery en el visualizador gratuito o p\u00f3ngase en contacto con nosotros para que analicemos todo su proyecto.<\/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=bigquery-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\\\/bigquery-data-lineage\\\/\",\n            \"description\": \"Automated SQL data lineage tool with a dedicated BigQuery dialect parser: column-level lineage through STRUCT fields, UNNEST, star expansion, view chains, and scheduled queries.\",\n            \"featureList\": \"BigQuery column-level lineage, nested STRUCT field lineage, UNNEST tracing, star expansion, indirect\\\/impact lineage, ER diagrams from NOT ENFORCED constraints, dbt support, REST API, DataHub\\\/Purview\\\/OpenMetadata export\",\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\": \"Doesn't Dataplex already give me BigQuery lineage?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"Yes, at the table level. Dataplex automatically records which tables each BigQuery job reads and writes. It does not extract the transform logic inside the SQL \\u2014 which columns feed which, through which expressions. For that you need a tool that parses the SQL, which is what SQLFlow does.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"Can SQLFlow trace lineage through STRUCT and ARRAY columns?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"Yes. The BigQuery parser models nested struct fields as individual lineage nodes, so customer.email and customer.country have separate lineage, and it traces fields through UNNEST flattening of repeated columns.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"How does SQLFlow handle SELECT * in BigQuery views?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"Star expressions are expanded against the actual table and view definitions, so every implicit column gets explicit lineage, even through multi-layer view chains.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"Can it map lineage across scheduled queries and views together?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"Yes. Analyze the scheduled-query SQL and view DDL as one job and SQLFlow stitches the end-to-end chain from reporting columns back to raw source columns.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"Does SQLFlow need access to my BigQuery data?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"No. It is static analysis of SQL text plus optional schema metadata. Table row data is never read. With the On-Premise edition, even the SQL text stays inside your network.\"\n                    }\n                },\n                {\n                    \"@type\": \"Question\",\n                    \"name\": \"What does SQLFlow cost?\",\n                    \"acceptedAnswer\": {\n                        \"@type\": \"Answer\",\n                        \"text\": \"SQLFlow Cloud starts free; premium accounts are $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>BigQuery data lineage is the map of how data moves through your BigQuery project: which source tables and columns feed each derived table, view, and scheduled query, and which expressions transform the data along the way. Google&#8217;s Dataplex captures lineage automatically for BigQuery jobs at the table level; to see which columns feed which, and through which functions and joins, you have to parse the SQL itself. Gudu SQLFlow does exactly that, with a dedicated BigQuery dialect parser that resolves nested STRUCT fields, UNNEST, star expansion, and view chains down to column granularity. Try it in 30 seconds: paste any\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\/6750"}],"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=6750"}],"version-history":[{"count":0,"href":"https:\/\/www.gudusoft.com\/es\/wp-json\/wp\/v2\/pages\/6750\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.gudusoft.com\/es\/wp-json\/wp\/v2\/media?parent=6750"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}