Looker 4.0 introdujo una nueva sintaxis de LookML que mejoró la sintaxis original de LookML de estilo YAML con una sintaxis familiar pero más sencilla y un IDE completo y útil para facilitar el desarrollo de LookML. A partir de Looker 4.4, todos los proyectos de LookML nuevos se han tenido que crear en el nuevo LookML. Sin embargo, es posible que algunos proyectos creados antes de la conversión sigan modelándose en LookML YAML (antiguo).
Looker ofrece una forma automatizada de convertir un proyecto de LookML YAML al nuevo LookML. En esta página se explica cómo hacerlo. Cada proyecto de LookML debe convertirse individualmente y los desarrolladores deben preparar y coordinar sus esfuerzos, por lo que le recomendamos que lea toda la página antes de convertir un proyecto.
Prepararse para la conversión
Solo un desarrollador de LookML puede convertir un proyecto de LookML en formato YAML al nuevo formato de LookML. La conversión se lleva a cabo en el modo de desarrollo del desarrollador y, a continuación, los cambios se confirman y se implementan como cualquier otro cambio de LookML.
Dicho esto, el proceso requiere la colaboración de todos los desarrolladores de LookML. Como la conversión modifica prácticamente todas las líneas de LookML, es importante asegurarse de que otros desarrolladores de LookML hayan confirmado e implementado todos sus cambios en el proyecto antes de que empiece el proceso de conversión. De lo contrario, pueden producirse conflictos de combinación de Git muy desagradables.
Aunque el proceso de conversión es automático, el nuevo LookML es mucho más exhaustivo a la hora de comprobar si hay errores que el LookML de YAML. Esto significa que, después de la conversión, pueden aparecer errores que no se habían detectado antes. Si resuelves estos errores, mejorarás la calidad del proyecto. El número de errores variará necesariamente de un proyecto a otro, por lo que corregirlos puede llevar desde unos minutos hasta varias horas. De cualquier forma, todos los desarrolladores de LookML deben mantener en pausa el desarrollo del proyecto hasta que se corrijan los errores.
Buscar proyectos YAML en tu instancia de Looker
Para ver los proyectos YAML de tu instancia de Looker, sigue estos pasos:
- En el menú Desarrollar, selecciona la opción Gestionar proyectos de LookML o Proyectos (la opción varía ligeramente en función de dónde accedas al menú Desarrollar).
-
En la página Proyectos de LookML, busca la etiqueta LookML YAML en la fila de la tabla de un proyecto:
NOTA: Puedes seleccionar el nombre del proyecto en la tabla para ir al LookML del proyecto.
Coordinarse con los desarrolladores antes de convertir
Para prepararte para la conversión al nuevo LookML, haz lo siguiente:
- Elige un desarrollador de LookML para que lleve a cabo el proceso de conversión.
- Asegúrate de que el proyecto no tenga errores ejecutando el validador de LookML. Corrige todos los errores y, a continuación, confirma e implementa los cambios antes de continuar con el siguiente paso.
- Designa una hora para realizar la conversión.
- Comunica a los demás desarrolladores de LookML que deben confirmar e implementar los cambios en los que estén trabajando antes de la hora indicada. Es decir, todas las copias del proyecto en modo Desarrollo deben estar en el estado de Git Actualizado con respecto a la producción.
- Comunica a los demás desarrolladores de LookML que no deben hacer, confirmar ni implementar ningún cambio hasta que se complete la conversión.
Convertir a New LookML
Para convertirlo al nuevo LookML, ejecuta el conversor:
- Accede al modo Desarrollo.
- Abre el proyecto que quieras convertir.
- Comprueba que el estado de Git, situado en la esquina superior izquierda, sea Actualizado con producción.
- Ejecuta el Validador de LookML para asegurarte de que no haya errores en el proyecto. El resultado debería ser No LookML Issues (No hay problemas de LookML). Para ejecutar el validador de LookML, selecciona el botón Validar LookML en la parte superior derecha del IDE de Looker o selecciona el icono Estado del proyecto en la parte superior del IDE para abrir el panel Estado del proyecto y, a continuación, selecciona Validar LookML.
-
Para convertir el proyecto de LookML YAML al nuevo LookML, sigue estos pasos:
-
Selecciona el icono Acciones de Git en la barra lateral de navegación del IDE de Looker.
-
También puedes seleccionar el icono Estado del proyecto
en la parte superior del IDE:
-
También puedes seleccionar el icono Estado del proyecto
en la parte superior del IDE:
- Seleccione la opción Convert Project to New LookML (Convertir proyecto a nuevo LookML) en el panel Git Actions (Acciones de Git) o en la parte inferior del panel Project Health (Estado del proyecto).
- Selecciona el botón Convert to New LookML (Convertir a LookML nuevo) en el cuadro de diálogo de confirmación.
-
Selecciona el icono Acciones de Git en la barra lateral de navegación del IDE de Looker.
Validar el nuevo LookML
Cuando el convertidor haya terminado de ejecutarse, el IDE indicará que tus archivos han cambiado con un punto junto a cada nombre de archivo:
Para validar el nuevo LookML, sigue estos pasos:
- Selecciona el botón Validar LookML para ejecutar el Validador de LookML. Si no hay errores, puedes ir a la sección Confirmar e implementar el nuevo LookML de esta página.
- Es posible que aparezcan errores donde antes no había ninguno. Como se ha indicado anteriormente, el nuevo LookML comprueba los errores de forma más exhaustiva que el LookML de YAML. Revisa los errores y corrígelos. Si no sabes cómo resolverlos, consulta la sección Resolver errores que se encuentra al final de esta página.
Confirmar y desplegar el nuevo LookML
En este punto, confirma e implementa los cambios como harías con cualquier otro cambio de LookML. Ten en cuenta que esta confirmación activará una recompilación de tus tablas derivadas persistentes (PDTs). Una vez que se haya implementado la confirmación, informa a los demás desarrolladores de LookML de que se ha completado la conversión y de que las consultas que dependen de PDTs pueden tardar un poco más de lo habitual en ejecutarse, al menos hasta que se haya recompilado todo. Los desarrolladores pueden extraer datos de producción en su modo Desarrollo para incorporar los cambios y, a continuación, seguir desarrollando. Ahora, con una sintaxis de LookML mejorada y más intuitiva y un IDE mucho más útil y potente.
Resolver errores
Como resultado de la validación de modelos más exhaustiva de LookML, es posible que veas errores después de la conversión que no se habían detectado antes. Además, la comprobación de errores ad hoc del nuevo LookML requiere un poco más de información en algunos casos. El convertidor intenta averiguar esta información por ti, pero en algunos casos puede que tengas que añadir una línea include
adicional en uno o dos archivos de vista.
Referencias de campo no válidas
En algunos contextos, el LookML de YAML (antiguo) no asegura que los campos o conjuntos a los que haces referencia estén definidos en alguna parte del modelo. Lo más probable es que aparezca en las listas y los conjuntos de campos de desglose.
Por ejemplo, si tu antiguo LookML incluía
drill_fields: [id, name, email]
, pero en algún momento del desarrollo
de tu modelo eliminaste el campo name
y lo sustituiste por los campos
first_name
y last_name
, YAML LookML no te habría
advertido de que estabas haciendo referencia a un campo (name
) en esta
lista de campos de desglose que no existe. Esto también puede ocurrir si haces referencia a un campo de un grupo de dimensiones y tu archivo LookML YAML no especifica el campo de la misma forma que el nuevo LookML.
En cambio, el nuevo LookML mostrará estos tipos de errores. Por lo tanto, después de convertir tu proyecto y ejecutar el validador de LookML, es posible que veas errores sobre referencias de campos no válidas que no habías visto antes. Si corriges estos errores, mejorarás la calidad general de tu modelo.
Faltan elementos incluidos en los archivos de vista
En algunos casos, la comprobación de errores ad hoc de LookML requiere un poco más de contexto que en YAML LookML. En concreto, puede ser necesario colocar una línea include
en algunos archivos de vista, sobre todo cuando una vista extiende a otra.
Cuando no haya ambigüedad sobre qué archivo se debe incluir en una vista, el convertidor añadirá automáticamente la declaración include
adecuada en el nuevo archivo de vista de LookML y no verá ningún error.
Sin embargo, en algunos casos (como en los proyectos que contienen varios modelos), puede haber dos o más vistas con el mismo nombre declaradas en archivos de vista independientes. El convertidor no podrá determinar cuál es el correcto para incluirlo, por lo que añadirá un comentario en la parte superior del nuevo archivo LookML para indicar que solo se debe incluir una de esas vistas. Para resolver el error, ve al archivo de vista y quita el comentario de la sugerencia correcta.
Exploraciones de Stranded extension_required
Al igual que ocurre con el problema de las referencias de campo no válidas que hemos descrito anteriormente, en el nuevo LookML, el validador de LookML te avisará de las exploraciones que se declaren con extension: required
pero que no se estén ampliando. Para solucionar este error, vuelva a conectar estos Exploraciones a sus objetos ampliados o, si no se usan, elimínelos.
Control de versiones
Como el proceso de conversión de LookML sustituye los archivos de .lookml
vista
y modelo por versiones de .lkml
, si uno o varios desarrolladores confirman
cambios en tu proyecto durante la conversión, se producirá un conflicto de combinación.
Por este motivo, es extremadamente importante que solo un desarrollador ejecute el convertidor. Además, debe coordinarse con el resto para asegurarse de que todas las copias del modo Desarrollo estén limpias y actualizadas antes de iniciar el proceso de conversión.
Para evitar problemas de control de versiones, debe haber una inmovilización del código durante la conversión. Otros desarrolladores no deben registrar cambios durante el tiempo que esté bloqueado para la conversión.
Si el desarrollador que ejecuta la conversión tiene algún problema durante el proceso de conversión, pero antes de confirmar los cambios y enviarlos a producción, puede que le resulte útil volver a la versión de producción. Esta opción del menú desplegable (que se muestra en la sección Ejecutar el convertidor de esta página) deshace la conversión, lo que permite al desarrollador volver a empezar el proceso.