Idioma: Español
Fecha: Subida: 2022-09-19T00:00:00+02:00
Duración: 35m 04s
Lugar: Videotutoriales
Visitas: 1.058 visitas

Formación del SGI para desarrolladores. Perfil Técnico-20220919_110422-Grabación de la reunión

Descripción

o (00:00) - Introducción
o (01:00) - Base de datos: Esquemas de datos disponibles
o (15:00) - Revisión/explicación de la documentación modelo lógico
o (33:00) - Scripts de configuración inicial: como encontrarlos y para qué sirven

Transcripción (generada automáticamente)

Me oye, si todo va recto. Mal, bueno, como veíamos un poco en la anterior formación, existen diferentes módulos que se podrían desglosar en funcionales y módulos comunes, y todos ellos todos llevamos todos los que son servicios males, se consideran servicios, con la coletilla a nivel de código servicios tienen persistencia en el modelo de datos, mal cada cual está pensado para que la filosofía de servicios como se comentaba, que estuviesen su modelo de dominio Malet separado. Entonces, cuál puedes pueden bien estar en esquemas diferentes, en el caso de o adicionalmente también como usuarios diferentes, que sería un poco lo que ocurriría con Oracle toda la capa de persistencia se ha utilizado por lo que te proporciona. Nadie que se basa en la especificación de JP con la implementación a nivel de código. No se nos ha utilizado. O han intentado todo o se ha realizado todo a través de consultas, de Criteria, vale y pone como implementación. Este repositorio. Male a para todo el tema del manejo de gestión incremental entre cambios del modelo de datos y también para la carga a inicial, o la creación del esquema inicial se está utilizando lo veáis; vais al final, pues es una, a una librería, que te permite hacer un versionado mole controle versiones; más concretamente, sobre los cambios en el modelo de datos, de tal manera que se ejecutan pequeños Scripps incremental, es con cada a despliegue Maribel, digamos que detecta la versión que existe, vale, o si no existe, pues ya la toma, como la inicial y y la crea, y a partir de ahí va ejecutando todos esos incremental, es que tenga a nivel de código elementales, en líneas generales, todos los los servicios abrir un poco más tenso en la parte de los recursos dentro del código, pues existen una carpeta male de cambios Male. Estos ficheros de cambios, con cada versión que se va etiquetado y que se va un poco liberando, se van incorporando los diferentes cambios a modo de regla moral, por decirlo de alguna manera. Existen 3 por cada liberación de versión; no existen como 3 ficheros. Male me permite abstraerse de las malas, las ventajas que tienen. Por lo que se ha optado principalmente es porque no utiliza ese cuele vale directamente si no hay una definición a través de melé que él solo, por decirlo de manera, en función del motor de datos sobre el que se está ejecutando, adapta las consultas, se crea el tablet o los diferentes, y en caso de que eso se quedó un poco corto, también permite utilizar ese cuele consultas dese cuele y especificando el motor de base de datos que sobre el que debe ejecutar. Esa parte vale para él, cada a, cada cada cambio vale, por decirlo de alguna manera, es atómico, con lo cual, pues bueno, en este caso aquí se vería cómo se genera, vale una secuencia que posteriormente utiliza, y en este caso, como por ejemplo se define la creación de una tabla, vale? Entonces, a partir de esta definición, el control de versiones generados, 2 tablas propias de dentro del modelo de datos, una de debe Male, que es para controlar la concurrencia y una derecha, creo recordar que es donde va, aguardando el todos los ficheros. Vale, quise melé concretamente más, ya que él va ejecutando, de forma que en sucesivas arranques del servicio, aquello que no tenga aplicado vale como aplicado y registrado en esa tabla, lo aplica cuando se arranca por primera vez como no existe, pues él ya crea toda la estructura. Toda esta ejecución de los escritos del se ejecutan antes de que el el, el propio de del controlador de sprint, se inicie entonces la la separación. Male. De lo de los ficheros viene marcada por, por un poco el. El objetivo que tiene cada cada parte vale? Todos aquellos que son inicial, Database, vale o date. El inicial, con el que se arrancó un poco la, la primera versión contienen lo que son cambios de él, la estructura de la base de datos lo aquellos que son Masters Data contienen la definición vale, o la inserción o mantenimiento en algún caso, pero bueno, principalmente, inserción de datos; maestros, considerando como datos maestros todos aquellos datos que no son gestionables a través de la interfaz de usuario y, por último, a modo de ejemplo que por defecto es lo que se utiliza en los entornos de desarrollo. Existe una carga o carga de datos de ejemplo? Vale para, pues bueno, poblaron poco el negativo con datos para poder tener algún conjunto o un pequeño conjunto de a modo de demostración. Cada cada cambio que el que se aplica vale, existe un parámetro de configuración que vienen los despliegues se puede configurar o bien dentro del del propio fichero de configuración de Spring Booth. De la aplicación se puede decir al beige, el contexto de ejecución vale, y el contexto de ejecución básicamente es como él el entorno vale sobre el que se está ejecutando, de modo que, aunque es libre, aquí en el campo se puede escoger cualquier nombre. Vale? Pues bueno, se ha intentado, se ha acotado un poco a un contexto de de desarrollo y el productivo se omite al sábado, se utiliza desarrollo y vale, porque esto es importante, porque estos datos de prueba vale. Esto viene a indicar que solo se ejecutarán estos estas inserciones cuando se especifique el contexto de desarrollo de otro modo, no cargaría estos datos de como sería lo lo que se realizaría en un entorno productivo, al que no se quiere cargar ninguna, ningún dato de ejemplo. Male, en cambio, los que de definición del modelo de datos de la estructura no tienen ningún contexto específico, y lo que quiere decir que se ejecutarán en cualquier contexto vale. Estos ficheros se van generando con cada, con cada versión. Male al final. Realmente, lo que lo que hace el es detectar este fichero, male de derecha y a partir de aquí todo lo que se incluye aquí lo va a ejecutar, o procesar. Vale para ejecutar en el orden en el que esté declarado a modo informativo, para el desarrollador se va incorporando, pues bueno, los diferentes altos de las diferentes versiones que se fueron generando. Una de las cosas que por qué se hace esto incremental también para evitar conflictos porque cada que ejecuta mal le aguarda el en vez de 5 de del texto Moreno aplica todos los atributos. Hace un cálculo del tiene ese cambio, de modo que no se puede alterar, Male un algo que el que en un entorno ya sea ejecutado sí porque provoca que ya no le coincida, vale y arranque, con lo cual siempre hay que ir haciéndolo incremental la ley, añadiendo a medida que se desarrolla, por ejemplo, vamos a generar una nueva versión mal se comenzaría con un nuevo fichero, vale, que sea seguido bueno esta numeración incremental, vale de prefijo para tenerlo un poco controlado y cada cambio, que se que se hagan el modelo de de datos por una funcionalidad male, alguien Male y una vez ejecutado ese ya no se puede tocar o no se debe tocar en entorno de desarrollo antes de incorporar la master para pruebas locales como se levanta un entorno de desarrollo local, así que es posible tocarlo, y no, no habría ningún ningún tipo de problema. Porque si se puede eliminar o limpiar la base de datos y comenzar mal a la hora de detectar qué cambios o la sintaxis un poco. Esto es referirse un poco la documentación de las intervenciones un poco intuitiva pero bueno, cuesta cuesta acostumbrarse sobre todo si se está acostumbrado a trabajar con ese cuele. La definición del modelo de datos se ha hecho desde el código hacia la base de datos, de modo que cuando queramos alterar o el proceso un poco más ordenado a la hora de de ir manejando lo que son los cambios de la definición del, como puede ser añadieron una columna cambiarle el nombre, alguna, etc. Male se han de realizar. En primer lugar, por manera general o más bien es a partir de la definición de la entidad, vale del mapeo DJ, PA. Abre todos los la estructura a los proyectos, tienen un paquete modelo, y dentro de este modelo están definidas todas las las tablas de base de datos. Entonces, el primer paso sería el, el, la nueva entidad o bien añadir el campo, etc. Male y dentro del de cada proyecto existe un vale, que lo que hace es ejecutar con una herramienta vale. Un diferencial que tiene beige, que escanea el? El código, las las anotaciones de JP. Hay a partir de esas anotaciones, genera el fichero de la estructura de datos cómo es o eres una generado. Es lo que genera un fichero en esta parte con otro nombre. Vale? Luego, si eso hacemos un ejemplo mal, te generó el fichero, con el diferencial, y ese diferencial se traslada a mano, vale para así evitar el mínimo de errores a mano hacia hacia el fichero que toque o el nuevo fichero de generar degenerar la versión. Esa funciona sólo es válida para las mal. En el caso de insertar información o hacer cambios updates y demás. Eso ya tiene que ser creado de forma manual. Esto es así; no se pueden repetir. Su identificador Male, tiene que tener su propio identificador y un poco lo que se la forma generarlo se van generando incremental. Es con referencia al fichero y a partir de ahí un nombre o algo que justifique más o menos el, el cambio. Esto en cuanto a la capa más y grandes rasgos de persistencia. Vale. A nivel del del modelo lógico Male, no voy a profundizar en la parte funcional, porque tampoco me las toda vale, sino que sí que voy a hacer inciso en las cosas más destacables de cómo sea modelado Malé. Como comentaba, ese parte de No hay un diseño de base de datos desde 0, sino que es a partir del código. Se genera el el diseño del modelo de datos, con lo cual se han creado modelos lógicos para definir un poco orientados. Cuál era la definición de los tipos de objeto que maneja? Vale? Para ir declarando esas entidades y de las entidades, ya se genera el correspondiente a través de. Todas las tablas, a un se han definido con claves primarias delegadas al editor, se basan en secuencias. Adicionalmente, lo que en estos diagramas están separados, cada 1 por su propio modelo de ese dominio en el caso de cese, existen varios diagramas, porque si son muchas tablas en las que las que aparecen entonces van a estar dividido en varios según una funcionalidad, convocatorias, solicitudes de proyecto, etc. Otra parte importante es el la traducción en el caso de numerados Valero e identificado como enumerados. Pero al final, a nivel de código, se conocen, como un enumerado y en base de datos. Pues se almacena un código male. Se genera, por ejemplo, el tipo de formulario de solicitud para que que lo veamos. Tendría esta representación a nivel de código formulario de solicitud Male, y cómo éstos enumerados al final, a nivel, a base de datos, se trasladan estos códigos a través de Mapper yace la traducción del del sprint de base de datos que realmente es lo que el tipo de dato que almacena a él, el enumerado a nivel de código vale. Cuando un modelo de datos funcionalmente tiene que referenciar a algo fuera de su ámbito, cese, por ejemplo, la referencia a ética o a personas. Así otro ejemplo. Unidad de gestión. Todos aquellos que se definen como Red de todos aquellos que tienen el sufijo red, quiere decir que apuntan hacia una entidad fuera de su modelo de dominio y lo que es almacena siempre en String, es la referencia externa, bien sea la primera y que la entidad en ese otro modelo de datos, o bien en el caso de personas, es variable. Esa referencia puede ser Denny oh, oh! Oh, todo aquello que se considere. Muy representativo de representa de forma unívoca a la entidad. Vale? Existe algún otro caso dentro del modelo? Vale que serían las cajitas -naranjas, que vienen a representar entidades, que están también relaciones con entidades ajenas, males este caso es la referencia en este caso en la categoría profesional del nivel académico, pues representan entidades de la respuesta del servicio de personas. Es bueno, no es, no hay traducción de las mismas dentro del propio proyecto pero es un poco moda, clara, activo para el desarrollador o o una persona que vea el análisis. Sepa que se trata de una entidad que está fuera del esta referencia a la entidad fuera del dominio vale. Por ejemplo, este sería el caso de este sexo red, por ejemplo, porque es una referencia que aparece en el modelo de personas. Particularidades; esto en cuanto a los a los servicios comunes, que tienen traducción funcionar, mal lo en el caso de aquellos servicios que no tienen traducción funcional, vale. Vamos a hacer un poco repaso o ver un poco que de qué manera lo representa. El modelo de configuración al final no es sencillo, tiene una única tabla y al final lo que almacena es un clave; valoró al final. Se se declaran inserciones como una clave, dada de un tiro de 2 columnas, male, nombre y descripción. Opcional y el Value tiene 3, lidere, estén un poco lo metimos, porque la filosofía en todo el es que las primarias sean claves delegadas. Se le da un nombre con el que luego se va referenciar y el valor vale de de ese, de esa configuración, Madrid se almacena, como, como en algunos casos, incluso ese valor de configuración; es un que posteriormente se procesan el código y en otros casos, pues bueno, es un número tal numérico literal, etcétera, pero a base de datos siempre es un streaming y después, según el uso que se haga del, ya se hace la transformación al valor esperado. El modelo de comunicados se utiliza para parar. El envío de vale y un poco la estructura que tiene, que es un poco compleja o aparente. Compleja. Puede costar un poco entenderla viendo el diagrama, vale, al final lo que lo que se basa es una definición de plantillas maletín, que es un poco lo que cabría con la tabla de Male que tiene a su vez plantillas de asunto y plantillas de contenido. La definición de esas plantillas y. Luego ese ese contenido vale el el motor de plantillas que se utiliza, exprime; vale. Entonces, esa definición de la plantilla se carga dentro del modelo de datos para poder ver después procesarlo y la forma del envío de los filmes. Cuando se quiere realizar un envío de un mal corrección o de alguna manera se les solicitó al servicio el; créame; un mail. Por un lado, creamos un mail con esta plantilla vale cada plantilla. En función de la definición que se consideran datos maestros se le a aportar ciertos parámetros que vienen definidos en la parte de de parámetros balear; rellenar, que son parámetros de los que hace uso en la plantilla; pues créame, una plantilla; con esta definición, Leite; pasó estos parámetros para que en el momento en el que se realice envío, sea procesada esa plantilla y enviado a la hora de crear ese a esa plantilla. Existe el soporte male porque se crea solo la definición del que se va a enviar; vale, pero no nos envía; pues existe la o bien el especificar ya los destinatarios de si mel o bien que esos esos destinatarios sean resueltos. En el momento en el que se va a enviar, vale, y el envío del e-mail se ejecuta mediante una llamada, a la de enviar con este identificado previamente creado. Vale? Pues en ese momento es cuando se realiza el envío del Mel y si tiene toda la información, a realizar, envío, y si no es cuando invoca por su servicio comunicación interna entre los servicios. Recupera, pues por ejemplo, la lista de destinatarios vale, o ciertos parámetros que son dependientes del momento, vale? Esto es un ejemplo que podría ser el caso de aquellos envíos programados, vale, porque por qué? Cuando se programó un envío apoyándose en él el servicio de tareas programadas y este servicio de tareas programadas realmente un poco lo con lo que hace vale lo que guarda que se puede ver en el modelo de datos es una de tarea con su tipo vale, si es instantánea, es decir, envían, pero en cuanto puedas o es programada para una fecha o acaba siendo recurrente, vale a través de una expresión Kron. Entonces, esa esa tarea programada, lo único que realizaba en lo que se registra, vale, es un servicio y un vale a al que llamar mal. Entonces. Lo que hace que no vienen al modelo lógico, pero la tarea programada indica en tal fecha o en tal momento tienes que llamar a éste para ejecutar algo es el envío de un mail, se ejecuta ese programa, de esa manera es una vez creado, se dice. Oye, para tal fecha, para tal momento envía este identificado, se registró la tarea para que viese a en vocación al módulo de envío de un mes con el identificador del aire en cuestión y en esos momentos se dispara esa ejecución. Con lo cual en ese punto resolvería si fuese el caso, los destinatarios o la información, tal y como puede ser una convocatoria de algo como está justo en el momento del envío. Y el modelo de relaciones sería otro módulo un poco Kroos, que lo que hace es mantener vínculos entre entidades de diferentes modelos de dominio, actualmente se está utilizando en el módulo de Ceesepe y de patentes, de modo que Ceesepe a su vez puede referenciar a proyectos concretamente que estén también dentro de proyectos o que un proyecto esté relacionado con algo de patentes, etc. Y aquí lo que se se mantiene en ese dominio es la entidad que origina la relación y la entidad de destino. Con sus tipos se proyectó una convocatoria une a invención de patentes o al tipo de entidad ajena, tipo entidad, origen, y a partir de esta definición ya sabe programáticamente quien tenga tirar del hilo por alguna manera, ya sabe lo que tiene que invocar. Male tareas programadas, pues ya lo hemos visto y tiene claro y tiene varios tipos, además de de estos diagramas, male de parar el modelo de las entidades, Kroos vale como el caso de y tienen también persistencia. El caso es el caso de. Almacena, es el caso en que su idea no es una primaria, sino que es muy de, y cada documento que se adjunta se genera muy persiste. En base de datos, con la información de metadatos y la referencia de la persistencia física y en el caso de SGO, sólo contiene datos maestros. Eso es lo único que contiene. Creo que no recuerda si son clasificaciones o o qué información contiene al respecto. Vale que cloaca, como es un proyecto independiente, no está ha desarrollado dentro del marco del, sino que se utiliza como como apoyo para ciertos funcionarios. Pues tiene su propio modelo de datos que esté pues abre, que tendría que investigar, o o ver un poco como funciona internamente. Vale, existe esto poco que se verá un poco más adelante en otra formación, pero bueno sí que mencionarlo Ética. Tiene un soporte mal en poco abierto para el tema de las de las memorias Ética, quizás sea de los modelos, más enrevesados en cuanto a relaciones vale todo motivado por los formularios que se generan por cada comité. Vale al final, pues bueno. Funcionalmente. Hay unos formularios que tienen que rellenar el usuario. Son dependientes de un tipo de comité y esos formularios, en lugar de en la web, vale. En lugar de estar. Codificados a nivel de código, porque son muy susceptibles de ser modificados según la implantación. Se utiliza un sistema de plantillas almacenadas en base de datos, ese es plantillas vale un poco la definición es toda la parte male de formulario. Bloque apartado y respuesta. Vale, al final cada cada comité, pues bueno, tiene asignado como un formulario y está definido, dentro de como maestro de información, que identificado el formulario, cuantos bloques tiene, que vienen a ser como pasos conceptuales o grandes de diferentes apartados, y finalmente, pues los apartados, esta definición se verán poco más. Veremos un poco más en detalle en la parte de desarrollo, vale, y se basa en, es totalmente hacia el front y se trata de vale. Al final esa definición, en esencia es un hombre de campo, tipo de Campo de ciertas validaciones, que a la parte del, a la hora de interpretar esa información sabe que tiene que pintar al usuario, y de qué manera, y con eso a partir de ese apartado y los campos introducidos, genera un valor de respuesta mal. Los values que haya introducido el usuario y estudios vs, persiste-mal. Al final es la parte que se persiste, mal. Como comentaba ya en la anterior formación, hay soporte para el modelo, para los motores de base de datos serían Oracle, y Mahler a nivel de desarrollo. Está configurado el local para utilizar a 2. Existe un definido por defecto que utiliza a 2, en los entornos se a través de variables de configuración de entorno, que es una de las cosas que permite pues se cambian las diferentes propiedades, como puede ser la URL DJ de BBC. Sería un caso parecido a este mal, lo que pasa es que en lugar de estar codificado en la definición de código de se pueden sobre escribir a través de variables de entorno donde viene la conexión JM BC, el DRAE deberá utilizar por, por Bernet, usuario y a utilizar para la conexión de base de datos y el dialecto, que tienen que utilizar internet. Pero esta información desarrolló normalmente no, no es necesario tocarla, y existe ese perfil, a no ser que se quiera hacer algún tipo de pruebas sobre lo que sería este caso sobre un motor de base, datos concretos. El resto de opciones se configuran a niveles de despliegue por variables del entorno del entorno, con la definición que existen. Y ya está aquí? No sé si es necesario profundizar algo más, Jesús. Para algo sí.

Propietarios

Proyecto Hércules

Comentarios

Nuevo comentario

Serie: FORMACION SGI DESARROLLADORES (+información)

Relaccionados